生成C语言代码:题目描述 青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。 输入 输入数据有多组,每组占一行,每行的第一个数是n(n>2),表示评委的人数,然后是n个评委的打分。 所有输入数据都在int范围内! 输出 对于每组输入数据,输出选手的得分,结果保留2位小数,每组输出占一行。 样例输入 3 99 98 97 4 100 99 98 97 样例输出 98.00 98.50
时间: 2023-12-20 14:03:59 浏览: 126
C语言实现歌手大奖赛计分程序
5星 · 资源好评率100%
以下是生成的C语言代码:
```c
#include <stdio.h>
#include <stdlib.h>
int cmp(const void *a, const void *b) {
return *(int *) a - *(int *) b;
}
int main() {
int n;
int scores[100];
while (scanf("%d", &n) == 1) {
for (int i = 0; i < n; i++) {
scanf("%d", &scores[i]);
}
qsort(scores, n, sizeof(int), cmp);
double sum = 0;
for (int i = 1; i < n - 1; i++) {
sum += scores[i];
}
printf("%.2f\n", sum / (n - 2));
}
return 0;
}
```
代码中使用了 `qsort()` 函数对所有评委的分数进行排序,然后计算去掉最高分和最低分的平均得分。每次读入一组数据并输出对应的结果,直到读入到文件结尾。
阅读全文