C语言实现:输入评委打分(分数均是整数,评委人数大于等于五小于等于五十),去掉两个最高分和两个最低分,计算输出平均得分
时间: 2024-05-24 11:12:26 浏览: 194
#include <stdio.h>
int main()
{
int n; // 评委人数
printf("请输入评委人数:");
scanf("%d", &n);
while (n < 5 || n > 50) // 评委人数不符合要求
{
printf("评委人数应大于等于5小于等于50,请重新输入:");
scanf("%d", &n);
}
int scores[n]; // 评委打分
int i;
for (i = 0; i < n; i++)
{
printf("请输入第%d位评委的分数:", i+1);
scanf("%d", &scores[i]);
}
// 去掉两个最高分和两个最低分
int max1 = scores[0], max2 = scores[1], min1 = scores[0], min2 = scores[1];
for (i = 2; i < n; i++)
{
if (scores[i] > max1)
{
max2 = max1;
max1 = scores[i];
}
else if (scores[i] > max2)
{
max2 = scores[i];
}
if (scores[i] < min1)
{
min2 = min1;
min1 = scores[i];
}
else if (scores[i] < min2)
{
min2 = scores[i];
}
}
int sum = 0;
for (i = 0; i < n; i++)
{
if (scores[i] != max1 && scores[i] != max2 && scores[i] != min1 && scores[i] != min2)
{
sum += scores[i];
}
}
double avg = (double)sum / (n-4); // 计算平均得分
printf("去掉最高分和最低分后的平均得分为:%.2f\n", avg);
return 0;
}
阅读全文