编程作业,C语言 从键盘输入一组非0整数(个数不超过10个)存入数组中,以输入0标志结束,求这组

编程作业,C语言
从键盘输入一组非0整数(个数不超过10个)存入数组中,以输入0标志结束,求这组整数的平均值,并统计其中正数和负数的个数。

#include<stdio.h>
#include<stdlib.h>

int main(void){
const int arrLen = 10;              //数组的长度 
int data[arrLen];
for(int i = 0; i < arrLen; ++i ){   //个数组初值 
data[i] = 0;
}

int getNumber =  0;   //输入的数字 
int a=0;              //正数 次数 
int i = 0;            //输入的次数,减去正数次数,可以得到负数 次数 
int sum = 0;          //总数 

do{
printf("请输入一个数字,0表示输入结束:\n");
scanf("%d",&getNumber);
if(getNumber == 0) break;  //输入0,结束 循环 
if(getNumber > 0) ++a;     //输入正数,正数+1 
data[i] = getNumber;       //把输入的数字存入数组 
++i;                      //输入的次数 
sum += getNumber;         //总数 
if(i >= 10) break;        //超过10次,结束循环 
}while(getNumber != 0);

printf("正数:%d,负数:%d,平均数:%f,总共输入了%d次\n",a,i-a,float(sum)/float(i),i);

system("pause");

return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-11-25
void main(){
int num[10],i=0,sum=0;
float va;
while(i<10){
suanf("%d",&num[i]);
if(num[i]==0)
break;
sum+=num[i];
i++;
}
va=(float)sum/i;
printf("平均数:%.2lf\n",va);
}本回答被网友采纳
相似回答