题目描述
输入n个成绩,打印出所有低于平均分的分数(注意:ave = s/n中s 为float或ave = (float)s/n)。
输入
多个测试数据每个测试数据一行,在这行中先输入分数的个数n(1<=n<=100),然后紧跟着输入n个整数(代表分数)
输出
对于每个测试数据,输出一行按照输入顺序输出所有低于(<)平均分的分数,中间用一个空格隔开,如果没有低于平均分的那么只输出一个空行
样例输入
3 40 50 60
2 90 80
5 10 10 90 80 80
样例输出
40
80
10 10
#include<stdio.h>
int main()
{
int a[100],sum,i,n,flag;
float ave;
while(scanf("%d",&n)!=EOF)
{
sum=0;
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
sum+=a[i];
}
ave=(float)sum/n;
flag=0;
for(i=0;i<n;i++)
{
if((float)a[i]<ave)
{
if(flag==0)
{
printf("%d",a[i]);
flag=1;
}
else{
printf(" %d",a[i]);}
}
}
printf("\n");
}
return 0;
}