这个C程序运行结果出现-NAN是为什么?

原题为:一个学习小组有5个人,每个人有三门课的考试成绩。求全组每一科的平均成绩和各科总平均成绩。(b[3]存放所求得各科平均成绩,设变量avg为全组各科总平均成绩。三科科... 原题为:一个学习小组有5个人,每个人有三门课的考试成绩。求全组每一科的平均成绩和各科总平均成绩。
(b[3]存放所求得各科平均成绩,设变量avg为全组各科总平均成绩。三科科目分别为math、C、dbase。)程序如下:
#include <stdio.h>
void main()
{
int i,j,a[5][3];
float b[3],avg;
for(i=0;i<5;i++)
{ printf("Please input the scores of No.%d:\n",i+1);
for(j=0;j<3;j++)
{ scanf("%d",&a[i][j]);
b[j]+=a[i][j];
}
}
for(j=0;j<3;j++)
b[j]=b[j]/5;
avg=(b[0]+b[1]+b[2])/3;
printf("math:%.2f\nC:%.2f\ndbase:%.2f\n",b[0],b[1],b[2]);
printf("total:%.2f\n",avg);
}
运行之后b[0]跟b[2]的值都可以正确输出,就是b[1]跟total的值输出为-NAN,这是为什么呢?
觉得很奇怪,为什么处于中间的b[1]倒是不能正确输出了呢?total不能正确输出应该也是因为b[1]不能正确输出的缘故吧?劳烦知道的大神提点一下小弟,若是有用,必定第一时间采纳为满意回答。
展开
 我来答
wjx123xxx
2012-08-22 · 超过17用户采纳过TA的回答
知道答主
回答量:86
采纳率:0%
帮助的人:78.1万
展开全部
你这个b数组都没初始化过吧。。。怎么可能会有正确的输出的。。。好神奇
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shaoqi08110820
2012-08-22 · TA获得超过2508个赞
知道大有可为答主
回答量:1514
采纳率:100%
帮助的人:1717万
展开全部
float b[3]={0};初始化
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
乐秋梵裕0G7
2012-08-22
知道答主
回答量:3
采纳率:0%
帮助的人:4667
展开全部
我也不知道 为做任务~~~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式