acmwriter @ 2022-11-04 18:49:23
#include<stdio.h>
int main()
{
int a,b,c=0;float d;
scanf("%d",&a);
for(int i=1;i<=a-2;i++)
{
scanf("%d",&b);
c+=b;
}
d=c*1.0/(a-2);
printf("%.2f",d);
return 0;
}
by Kevin_Mamba @ 2022-11-04 18:54:15
@acmwriter ?
太勉强了吧 。
他又没说最后两个就一定是最高分和最低分 。
那你拿40分都是数据水,拿高了。
by cannotdp @ 2022-11-04 18:55:18
应该排序
by WA_sir @ 2022-11-04 18:55:54
@acmwriter 先用数组存,然后排个序,减去最大最小值,求平均数
by Kevin_Mamba @ 2022-11-04 18:57:37
本人没学过C语言,只能用差不多的 C++ 。
#include<stdio.h>
int main()
{
int a,b,c=0;float d;
int mx=-1000000001,mn=1000000001;
scanf("%d",&a);
for(int i=1;i<=a;i++)
{
scanf("%d",&b);
c+=b;
if(b>mx) mx=b;
if(b<mn) mn=b;
}
d=(c-mx-mn)*1.0/(a-2);
printf("%.2f",d);
return 0;
}
by Kevin_Mamba @ 2022-11-04 19:00:04
两位大佬:
只用求最大值和最小值,排序没辟谣吧 。
by WA_sir @ 2022-11-04 19:03:15
@2124Kobe 辟谣->必要
雀食