%lf改为%f
因为第11行的%lf这里错了,变量num为float类型,用scanf()函数读取输入存入float类型的num变量中,需要使用%f,而不是%lf;然后如果是计算整数的平均值,那个n直接用count赋值即可,需要减去一,count里面即正整数的数量,修改如下:
#include <stdio.h>
int main(void){
float num=0;
float sum=0;
float average=0;
int count =0,n=0;
do{
printf("Give a positive real number (negative will stop)");
scanf("%f",&num);
if(num>0){
sum+=num;
count++;
}else{
break;
}
}while(num>=0);
n=count-1;
average=1.0*sum/n;
printf("Average is %.2f\n",average);
return 0;
}