青年歌手大奖赛_评委会打分

来源:百度知道 编辑:UC知道 时间:2024/05/31 20:50:04
这是我写的程序,但交上去有问题(显示Output Limit Exceeded)菜鸟在这儿拜托大侠们了,谢谢!!!!!!

#include<stdio.h>
#include<math.h>
void main()
{
int n,i;
float avg,a[100],s,max,min;

do
{
scanf("%d",&n);
} while(n<=0);
while(n>0)
{

s=0.0;
for(i=0;i<n;i++)
{
scanf("%f",&a[i]);
s+=a[i];
}

max=min=a[0];
for(i=0;i<n;i++)
{
if(max<a[i]) max=a[i];
if(min>a[i]) min=a[i];
}
s=s-max-min;
avg=s/(n-2);
printf("%.2f\n",avg);
scanf("%d",&n);
}
}

1.输入的评委人数n,必须大于2且小于100.否则就出错了。所以在你的程序中你应该给出n<2的处理,还有n>100的处理。
2.有一类的情况,你没有考虑到。比如有4个评委,打分分别是:9 8 8 9。你应该怎样来处理呢?程序中没有提供正确的处理方法