#include <stdio.h>
int main(){
int n;
float max,min,average,sum;
int count=0;
scanf("%d",&n);
max=n;
min=n;
sum=0;
while(n<=1000){
count++;
if(n>max){
max=n;
}else if(n<min){
n=min;
}
sum+=n;
average=sum/count;
scanf("%d",&n);
}
if(n>1000){
printf("Illegal input number\n");
}else{
printf("max=%.3f min=%.3f average=%.3f\n",max,min,average);
}
return 0;
}
一是可能Max和Min没有进行初始化,应为本身随着编译器中的优化程度不同变量未赋值前的系统给的值是不同的可能Max=378789;导致结果不对
总结变量在赋值之前是不确定的,特别的它不一定是0