完整C语言用函数青年歌手参加歌曲大奖赛,有10个评委对他们的表现进行打分,试编程求这位选手的平均得分(去掉一个最高分和一个最低分)
时间: 2024-02-15 07:03:34 浏览: 85
评委评分算法(去最高和最低求平均)
好的,根据您的要求,我可以给您提供一个C语言代码:
```
#include <stdio.h>
#include <stdlib.h>
#define NUM_JUDGES 10
float calculate_average_score(float scores[]);
int main() {
float scores[NUM_JUDGES];
float average_score;
int i;
printf("请输入10个评委的分数:\n");
for (i = 0; i < NUM_JUDGES; i++) {
scanf("%f", &scores[i]);
}
average_score = calculate_average_score(scores);
printf("去掉一个最高分和一个最低分后,该选手的平均得分为:%.2f\n", average_score);
return 0;
}
float calculate_average_score(float scores[]) {
int i, j;
float sum = 0.0, max = scores[0], min = scores[0];
for (i = 0; i < NUM_JUDGES; i++) {
if (scores[i] > max) {
max = scores[i];
}
if (scores[i] < min) {
min = scores[i];
}
sum += scores[i];
}
sum = sum - max - min;
return sum / (NUM_JUDGES - 2);
}
```
这个程序首先会要求用户输入10个评委给出的分数,然后调用 `calculate_average_score` 函数计算去掉一个最高分和一个最低分后的平均得分,最后将结果输出。在 `calculate_average_score` 函数中,我们先计算出最高分和最低分,然后将分数总和减去这两个分数,最后计算平均得分并返回。
阅读全文