作业帮 > 综合 > 作业

C语言编程,评委打分问题(及格)

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/05 00:51:29
C语言编程,评委打分问题(及格)
要求:
(1)在青年歌手大奖赛中,有10个评委为参赛的选手打分,分数为1~100分.选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值.请编写一个程序实现.
(2)同时对评委评分进行裁判,即在10个评委中找出最公平(即评分最接近平均分)和最不公平(即与平均分的差距最大)的评委.
(3) 要求对所有选手的最后得分进行从高到低排列.
#include<stdio.h>
#include<math.h>
int main()
{
\x09float k,s=0,a[10],max,min,fair,unfair;
\x09int i,j,t;
\x09for(i=0;i<10;i++)
\x09{
\x09\x09scanf("%f",&a[i]);
\x09\x09s+=a[i];
\x09}
\x09min=max=a[0];
\x09for(i=1;i<10;i++)
\x09{
\x09\x09if(a[i]>max)
\x09\x09\x09max=a[i];
\x09\x09if(a[i]<min)
\x09\x09\x09min=a[i];
\x09}
\x09k=(s-max-min)/8;
\x09printf("the score is %f\n",k);
\x09fair=fabs(a[0]-k);
\x09unfair=fabs(a[0]-k);
\x09j=0;
\x09t=0;
\x09for(i=1;i<10;i++)
\x09{
\x09\x09if(fabs(a[i]-k)<fair)
\x09\x09{
\x09\x09\x09fair=fabs(a[i]-k);
\x09\x09\x09j=i;
\x09\x09}
\x09\x09if(fabs(a[i]-k)>unfair)
\x09\x09{
\x09\x09\x09unfair=fabs(a[i]-k);\x09
\x09\x09\x09t=i;\x09
\x09\x09}
\x09}
\x09printf("the fair score is %f\n",a[j]);
\x09printf("the unfair score is %f",a[t]);
\x09for(i=0;i<9;i++)
\x09{
\x09\x09for(j=0;j<9-i;j++)
\x09\x09{
\x09\x09\x09if(a[j]<a[j+1])
\x09\x09\x09{
\x09\x09\x09\x09k=a[j];
\x09\x09\x09\x09a[j]=a[j+1];
\x09\x09\x09\x09a[j+1]=k;
\x09\x09\x09}
\x09\x09}
\x09}
\x09printf("\nafter sort ,the score are follows:\n");
\x09for(i=0;i<10;i++)
\x09\x09printf("%f\t",a[i]);
}您好,很高兴为您解答,流星不死为您答疑解惑如果本题还有不懂的地方请追问,望采纳我的回答.祝楼主学习进步.上面的代码可以直接复制到编译器里,带换行.
再问: 不是去掉一个最高分吗。怎么输出的时候去掉的不是最高分
再答: 不是剪了max和min吗,现在太冷了,编不了,你自己能搞定的吧。。
再问: 是的,我要是可以搞定我就不会问了,大神,求啊
再答: 哪边的问题,我晚上改
再问: 谢啦,这个是正确的了,刚刚没看清楚 ,不好意思啊,嘿嘿