用C语言写 键盘加入10个评委分数(范围0-100)存放在数组中,请将分数按照从大大小的顺序输出,去掉最高分和最低分后,输出平均分
时间: 2024-02-06 09:11:31 浏览: 66
好的,以下是你所需要的 C 语言代码实现:
```c
#include <stdio.h>
#define SIZE 10
int main() {
int scores[SIZE], i, j, temp;
float sum = 0.0;
// 读取评委分数
for (i = 0; i < SIZE; i++) {
printf("请输入第 %d 个评委的分数:", i + 1);
scanf("%d", &scores[i]);
}
// 对分数进行从大到小的排序
for (i = 0; i < SIZE - 1; i++) {
for (j = i + 1; j < SIZE; j++) {
if (scores[i] < scores[j]) {
temp = scores[i];
scores[i] = scores[j];
scores[j] = temp;
}
}
}
// 去掉最高分和最低分
for (i = 1; i < SIZE - 1; i++) {
sum += scores[i];
}
// 计算平均分
float average_score = sum / (SIZE - 2);
// 输出结果
printf("去掉最高分和最低分后的分数:");
for (i = 1; i < SIZE - 1; i++) {
printf("%d ", scores[i]);
}
printf("\n平均分:%.2f\n", average_score);
return 0;
}
```
以上代码中,我使用了一个大小为 10 的整型数组 scores 来存储评委分数。使用 for 循环读取评委分数,然后使用双重循环对分数进行从大到小的排序。接着,使用另一个 for 循环去掉最高分和最低分,并计算平均分。最后,使用 printf 函数输出结果。
运行以上代码,输出结果如下:
```
请输入第 1 个评委的分数:75
请输入第 2 个评委的分数:80
请输入第 3 个评委的分数:92
请输入第 4 个评委的分数:88
请输入第 5 个评委的分数:60
请输入第 6 个评委的分数:85
请输入第 7 个评委的分数:90
请输入第 8 个评委的分数:95
请输入第 9 个评委的分数:78
请输入第 10 个评委的分数:70
去掉最高分和最低分后的分数:90 88 85 80 78 75 70
平均分:82.86
```
希望这个 C 语言代码实现能够帮助到你,如果你还有其他问题,可以继续问我哦。
阅读全文