20 求最高、最低、平均分
作者: 孙辞海 时间限制: 1S章节: 循环
问题描述 :
输入N个学生的成绩,打印输出最高分、最低分、以及平均分。
输入说明 :
你的程序需要从标准输入设备(通常为键盘)中读入多组测试数据。每组输入数据由多行组成。每组测试数据的第一行输入一个整数N(0<N<20),表示有N个学生。其后N 行每行有一个整数s(0≤s≤100),表示一个学生的成绩。
输出说明 :
对每组测试数据,你的程序需要向标准输出设备(通常为启动该程序的文本终端)输出一行,包括3个整数,分别为最高分、最低分、平均分(向下取整),整数之间以一个空格分隔,所有数据前后没有多余的空行及空格,两组数据之间也没有多余的空行。
输入范例 :
5
100
20
5
0
99
3
33
33
34
输出范例 :
100 0 44
34 33 33
#include<stdio.h>
int main(){
int N,i,s;
while(scanf("%d",&N)!=EOF&&(N>0&&N<20)){
int a[100];
int min,max,sum=0;
for(i=0;i<N;i++){
scanf("%d",&a[i]);
}
max=a[0];
for(i=1;i<N;i++){ //求最大数
if(a[i]>max) max=a[i];
}
min=a[0];
for(i=1;i<N;i++){ //求最小数
if(a[i]<min) min=a[i];
}
for(i=0;i<N;i++){ //求平均数
sum=a[i]+sum;
}
printf("%d %d %d\n",max,min,sum/N);
}
return 0;
}