输人口 个评委的评分,计算并输出参赛选手的最后得分。计算方法为去除一个最高分和去除一个最低分,其余的进行平均,得出参赛选手的最后得分,用c语言完成
时间: 2024-05-14 08:18:00 浏览: 108
比赛评委亮分计算表 去掉最高分和 最低分
以下是一个简单的 C 语言程序,可以实现你所描述的功能:
```c
#include <stdio.h>
// 定义评委数量和最大分数
#define JUDGES 5
#define MAX_SCORE 10
int main() {
int scores[JUDGES]; // 存储评委评分的数组
int i, max_score, min_score, total_score;
float final_score;
// 读入评委评分
for (i = 0; i < JUDGES; i++) {
printf("请输入第 %d 个评委的评分:", i + 1);
scanf("%d", &scores[i]);
// 确保评分在合理范围内
if (scores[i] < 0) {
scores[i] = 0;
} else if (scores[i] > MAX_SCORE) {
scores[i] = MAX_SCORE;
}
}
// 找到最高分和最低分
max_score = scores[0];
min_score = scores[0];
for (i = 1; i < JUDGES; i++) {
if (scores[i] > max_score) {
max_score = scores[i];
}
if (scores[i] < min_score) {
min_score = scores[i];
}
}
// 计算总分(去掉最高分和最低分)
total_score = 0;
for (i = 0; i < JUDGES; i++) {
if (scores[i] != max_score && scores[i] != min_score) {
total_score += scores[i];
}
}
// 计算最终得分(平均分)
final_score = (float)total_score / (JUDGES - 2);
printf("选手的最终得分为:%.2f\n", final_score);
return 0;
}
```
这个程序首先会提示用户依次输入每个评委的评分,然后找到最高分和最低分,计算总分并去掉最高分和最低分,最后计算出最终得分并输出。需要注意的是,这个程序假设评分的范围为 $0 \sim 10$ 分,如果实际评分范围不同,需要相应地修改代码。
阅读全文