#include<stdio.h>void main(){ float grade[100],sum=0,ave; int n=0,i=0; //变量n统计输入学生成绩的个数 printf("enter grades:\n"); do { scanf("%f",&grade[i]); i++; n++; }while(grade[i]>=0); for(i=0;i<n;i++) sum=sum+grade[i]; ave=sum/n; printf("ave=%.2f\n",ave); printf("lower than the average:\n"); for(i=0;i<n;i++) if(grade[i]<ave) printf("%f\t",grade[i]);}请帮忙看一下,这个程序哪里出了错,为什么运行结果不对呢?
我感觉是首先因为grade[]没有初始化,然后如果我输入了grade[0],执行了i++后出来判断条件执行的是grade[1]>=0,所以导致运行结果是错的,这样理解对吗
追答嗯对