
Problem Description
青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。
Input
输入数据有多组,每组占一行,每行的第一个数是n(2<n<=100),表示评委的人数,然后是n个评委的打分。
Output
对于每组输入数据,输出选手的得分,结果保留2位小数,每组输出占一行。
Sample Input
3 99 98 97 4 100 99 98 97
Sample Output
98.00 98.50
代码如下:
#include <cstdio>
int main(){
int n,score[],temp;
double ave=;
while(scanf("%d",&n)!= EOF){
for(int i=;i<n;i++){
scanf("%d",&score[i]);
}
for(int i=;i<n-;i++){
for(int j=;j<n--i;j++){
if(score[j]>score[j+]){
temp=score[j];
score[j]=score[j+];
score[j+]=temp;
}
}
}
for(int k=;k<n-;k++){
ave+=score[k];
}
ave=ave/(n-);
printf("%.2lf\n",ave);
ave=;
}
return ;
}
思路解析
今天偷懒了。。好累的说。更一道水题吧。