用c++求大于平均值的个数

输入若干个自然数,最后一个为 0(表示输入结束),输出大于平均值的正整数的个数。 注意:整数 0 只作为输入结束标志,不参与平均值的计算。

供参考:

#include<stdio.h>
#define N 100

int main()
{
   int i=0,a[N],avg=0,s=0;
   printf("请输入若干自然数,0结束输入:");
   while(1)
   {
        scanf("%d",&a[i]);
        if(a[i]==0) break;
        avg += a[i];
        i++;
   }
   if(i!=0) avg = avg/i;
   for(;i>=0;i--)
       if(a[i]>avg) s++;
   printf("输入数中大于平均数的个数为:%d\n",s);
  
   return 0;
}
#include<stdio.h>
int Number(int *p,int n){    
 int i,j,k,avrage,q;
 k=0;
 for(i=0;i<n;i++)
  k+=p[i];
   avrage=k/n;
   q=0;
   for(j=0;j<n;j++)
    if(p[j]>avrage)
     q++;
    return q;
}
int main(){
 int a[5]={1,4,6,8,3};
 int k;
 k=Number(a,5);
 printf("数组a中大于平均数的个数为k=%d\n",k);
 return 0;
}