在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1~100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值,同时考虑对评委评分进行裁判,即在10个评委中找出最公平和最不公平。请编写一个c语言程序实现。
时间: 2024-02-12 14:04:28 浏览: 72
好的,我可以为您编写这个程序。以下是代码:
```
#include <stdio.h>
int main() {
int scores[10]; // 保存评分的数组
int max_score = 0, min_score = 100; // 最高分和最低分的初始值
int sum_score = 0; // 所有分数的总和
int fair_judge = 0, unfair_judge = 0; // 最公平和最不公平的评委编号
float average_score; // 最后的平均分
// 循环读入10个评委的分数,并更新最高分和最低分
for (int i = 0; i < 10; i++) {
printf("请输入第%d个评委的分数:", i + 1);
scanf("%d", &scores[i]);
if (scores[i] > max_score) {
max_score = scores[i];
unfair_judge = i;
}
if (scores[i] < min_score) {
min_score = scores[i];
fair_judge = i;
}
sum_score += scores[i];
}
// 计算最后的平均分
average_score = (sum_score - max_score - min_score) / 8.0;
// 输出结果
printf("最后得分为:%.2f分\n", average_score);
printf("最公平的评委编号为:%d\n", fair_judge + 1);
printf("最不公平的评委编号为:%d\n", unfair_judge + 1);
return 0;
}
```
程序会依次读入10个评委的分数,并更新最高分和最低分,同时记录最公平和最不公平的评委编号。然后根据公式计算出最后的平均分,并输出结果。
阅读全文