sum之后多了个a
改成avg = sum*1.0/N;
int i,max,min,float sum=0;
改成
int i,max,min;
float sum=0;
代码改好了
#include<stdio.h>
#define N 10
int main()
{
int a[N]={1,22,3,44,5,61,70,18,9,10};
int k,min,max;
double sum=0;
double avg;
max=min=a[0];
for(k=0;k<N;k++)
{
sum=sum+a[k];
if(max<a[k]) max=a[k];
if(min>a[k]) min=a[k];
}
avg=sum/N;
printf("max=%d,min=%d,avg=%lf\n",max,min,avg);
for(k=N-1;k>=0;k--)
printf("%-4d",a[k]);
return 0;
}
如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!
都说了要avg=sum*1.0/N啊
sum/N是整除,小数部分被舍弃了
sum写错了,然后你把两个不同类型的数据相等了,你可以乘或除以一个1.0