杭电Oj刷题(2014)

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

题目描述:

青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。

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 <stdio.h>
int main(){
	int n;
	while(scanf("%d",&n)!=EOF){
		int a[100],min,max;
		double sum=0;
	    for(int i=0;i<n;i++){       //评委打分 
	        int score; 
	        scanf("%d",&score);	
	        a[i]=score;
		} 
		//找出最大最小值 
		min=a[0];
		max=a[0];
		for(int i=0;i<n;i++){
			if(a[i]<min)min=a[i];
			if(a[i]>max)max=a[i];
		}
		for(int i=0;i<n;i++){
			if(a[i]!=max&&a[i]!=min){
			    sum+=a[i];
		    }
		}
		printf("%.2f\n",sum/(n-2));
    }
    return 0;
}
发布了55 篇原创文章 · 获赞 0 · 访问量 1025

猜你喜欢

转载自blog.csdn.net/ZhangShaoYan111/article/details/104083462