为比赛选手评分,计算方法从10名评委的评分中扣除一个最高分,扣除一个最低分然后统计总分,并除以8,最后得到这个选手的最后得分用c语言怎么写
时间: 2023-12-17 16:06:05 浏览: 181
比赛评委亮分计算表 去掉最高分和 最低分
假设10名评委的得分存储在一个数组中,可以按照以下步骤计算选手的最终得分:
1. 找到最高分和最低分的索引值
```c
int maxIndex = 0, minIndex = 0;
for (int i = 1; i < 10; i++) {
if (scores[i] > scores[maxIndex]) {
maxIndex = i;
}
if (scores[i] < scores[minIndex]) {
minIndex = i;
}
}
```
2. 计算总分并扣除最高分和最低分
```c
int totalScore = 0;
for (int i = 0; i < 10; i++) {
if (i != maxIndex && i != minIndex) {
totalScore += scores[i];
}
}
```
3. 计算最终得分
```c
float finalScore = totalScore / 8.0;
```
完整代码如下:
```c
#include <stdio.h>
int main() {
int scores[10] = {90, 85, 92, 88, 93, 89, 84, 87, 91, 86};
// 找到最高分和最低分的索引值
int maxIndex = 0, minIndex = 0;
for (int i = 1; i < 10; i++) {
if (scores[i] > scores[maxIndex]) {
maxIndex = i;
}
if (scores[i] < scores[minIndex]) {
minIndex = i;
}
}
// 计算总分并扣除最高分和最低分
int totalScore = 0;
for (int i = 0; i < 10; i++) {
if (i != maxIndex && i != minIndex) {
totalScore += scores[i];
}
}
// 计算最终得分
float finalScore = totalScore / 8.0;
printf("选手的最终得分为 %.2f 分\n", finalScore);
return 0;
}
```
阅读全文