在一些比赛会有若干个评委给选手打分,评分规则是在评委给出的若干个分数中去掉一个最高分和一个最低分再计算平均分为选手得分,现在就让你写一个程序来代替这个复杂的工作吧。输入格式:
第一行输入一个整数n(3<=n<=20)为给出的分数个数,第二行给出n个大于等于0小于等于100的实数为分数。
输出格式:
在一行分别输出得分,最低分,最高分。
两个数中间用一个空格分开。
得分四舍五入保留整数部分,最低分和最高分保留一位小数。
输入样例:
5
67.5 43.6 56.78 89.7 99.2
输出样例:
71 43.6 99.2
代码长度限制 16 KB
时间限制 400 ms
内存限制 64 MB
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int n, i, j;
double score[20], sum = 0, max = 0, min = 100;
scanf("%d", &n);
for (i = 0; i < n; i++) {
scanf("%lf", &score[i]);
if (score[i] > max) max = score[i];
if (score[i] < min) min = score[i];
sum += score[i];
}
sum -= max + min;
printf("%d %.1lf %.1lf", (int)round(sum / (n - 2)), min, max);
return 0;
}