当前位置: 代码迷 >> C语言 >> [求助]请教个程序的问题
  详细解决方案

[求助]请教个程序的问题

热度:216   发布时间:2007-03-22 16:52:40.0
[求助]请教个程序的问题
有个题目是:输入6名学生5门课程的成绩,分别统计出每个学生5门课程的平均分数.
程序如下:
#define N 6
#define M 5
main()
{ int i,j;
float g,sum,ave;
for(i=1;i<=N;i++)
{ sum=0;
for(j=1;j<=M;j++)
{ scanf("%f",&g);
sum=sum+g;
}
ave=sum/M;
printf("NO.%d ave=%5.2f\n",i,ave);
}
}
对于以上程序我有下列3个问题,希望各位高手能给予解答.
问题1.sum=0;能否放在外循环体外?
问题2.sum=sum+g;能否放在外循环体内?
问题3.ave=sum/M;能否放在内循环体内?
如果按照上述问题中所做的操作,将导致何种结果?




----------------解决方案--------------------------------------------------------

问题1 是可以的,其它的就不行。
结果嘛 你可以自己上机调试的。


----------------解决方案--------------------------------------------------------
“...将导致何种结果?”

自己试一试不就知道了嘛

----------------解决方案--------------------------------------------------------
问题1.sum=0;能否放在外循环体外? / /只有第一个学生的平均分是正确的,其他都要加上前几个学生的总成绩.
问题2.sum=sum+g;能否放在外循环体内? //由第一步g没有赋初值而是个随机数,得出的结果自然是错的.
问题3.ave=sum/M;能否放在内循环体内? //这个算出的是该学生前x门课的M平均分.每个学生只有最后一个结果才是正确的.
----------------解决方案--------------------------------------------------------
  相关解决方案