青年歌手大奖赛_评委会打分
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Submit
Status
Practice
HDU 2014
Description
青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。
Input
输入数据有多组,每组占一行,每行的第一个数是n(2
#include <stdio.h>
int main (){
int n,i,j;
float a[105],sum,max,min,s;
while(scanf("%d",&n)!=EOF){
sum=0;
for (i=1;i<=n;i++){
scanf("%f",&a[i]);
sum+=a[i];
}
max=a[1];min=a[1];
for (i=1;i<=n;i++){
if (a[i]<=min) {
min=a[i];
}
if (a[i]>=max){
max=a[i];
}
}
j=n-2;
s=(sum-max-min)/j;
printf("%.2f\n",s);
}
return 0;
}
定义数组个数时,不妨将数组个数较题目要求多几个,以防止数组上标溢出,先将数组中任意存入的一个值赋于max,min,再利用for循环与if选择,得到最大值与最小值。