用C语言表示比赛评分时要求去掉最高分和最低分,然后对剩下的得分求平均值。现在有10个评委打分,需要你对输入的10个分数,去掉最高分和最低分后计算平均得分,并输出平均分。
时间: 2024-02-18 22:04:28 浏览: 135
好的,这个问题很简单,下面是一份C语言代码实现:
```c
#include <stdio.h>
#define N 10
int main(){
int score[N];
int i, max, min, sum = 0;
float avg;
// 输入10个评分
printf("请输入10个评分:\n");
for(i=0; i<N; i++){
scanf("%d", &score[i]);
}
// 找到最高分和最低分的下标
max = min = 0;
for(i=1; i<N; i++){
if(score[i] > score[max]){
max = i;
}
if(score[i] < score[min]){
min = i;
}
}
// 去掉最高分和最低分,计算总分
for(i=0; i<N; i++){
if(i!=max && i!=min){
sum += score[i];
}
}
// 计算平均分并输出
avg = (float)sum / (N-2);
printf("去掉最高分和最低分后的平均分是:%.2f\n", avg);
return 0;
}
```
这份代码中,我们首先定义了一个长度为10的整型数组score来保存评分。然后通过for循环输入10个评分。接下来,我们通过一个for循环找到最高分和最低分的下标。然后再通过一个for循环去掉最高分和最低分,计算总分。最后计算平均分并输出即可。注意要将总分强制转换为float类型再除以N-2,以保证得到的是浮点数类型的平均分。
阅读全文