在体操竞技赛上,邀请了n位评委给出打分结果(1到100分),评分规则是从所有评委给分 的结果中去掉一个最高分和一个最低分后计算其余n-2个评委的平均分,作为这个选手的最 终得分,输入评委个数n,再输入n个评委打出的各个分数,最后输出这个选手的得分(保 留3位小数)。C语言程序
时间: 2024-05-01 15:23:16 浏览: 142
以下是一个示例C语言程序,可以实现所描述的功能:
```c
#include <stdio.h>
int main() {
int n;
scanf("%d", &n);
int scores[n];
for (int i = 0; i < n; i++) {
scanf("%d", &scores[i]);
}
// 计算最高分和最低分的下标
int max_index = 0, min_index = 0;
for (int i = 1; i < n; i++) {
if (scores[i] > scores[max_index]) {
max_index = i;
}
if (scores[i] < scores[min_index]) {
min_index = i;
}
}
// 计算总分
double total_score = 0.0;
for (int i = 0; i < n; i++) {
if (i != max_index && i != min_index) {
total_score += scores[i];
}
}
// 计算平均分并输出
double avg_score = total_score / (n - 2);
printf("%.3f\n", avg_score);
return 0;
}
```
程序中首先读入评委个数n和各个评委的分数,然后遍历所有分数找出最高分和最低分的下标,接着计算总分,去掉最高分和最低分后计算平均分并输出。需要注意数据类型的选择,以确保计算过程中不会出现精度丢失等问题。
阅读全文