7-1 输出所有大于平均值的数 (15分)
本题要求编写程序,将输入的n个整数存入数组a中,然后计算这些数的平均值,再输出所有大于平均值的数。
输入格式:
输入在第1行中给出一个正整数n(1≤n≤10),第2行输入n个整数,其间以空格分隔。题目保证数据不超过长整型整数的范围。
输出格式:
输出在第1行给出平均值,保留2位小数。在第2行输出所有大于平均值的数,每个数的后面有一个空格;如果没有满足条件的数,则输出空行。
如果输入的n不在有效范围内,则在一行中输出"Invalid."。
输入样例1:
10
55 23 8 11 22 89 0 -1 78 186
输出样例1:
47.10
55 89 78 186
输入样例2:
0
输出样例2:
Invalid.
使用简单的数组即可。
#include<stdio.h>
int main(){
int n,i;
scanf("%d",&n);
if(n<1||n>10) printf("Invalid.");
else {
int a[n],sum=0,j=0;
double ave;
for(i=1;i<=n;i++){
scanf("%d",&a[i-1]);
sum+=a[i-1];
}
printf("%.2lf\n",ave=sum*1.0/n);
for(i=1;i<=n;i++){
if(a[i-1]>ave) {j++;printf("%d ",a[i-1]);}
}
if(j==0)printf("\n");
}
return 0;
}