标题:为什么N输出的总是0
只看楼主
LANCE00
Rank: 2
等 级:论坛游民
帖 子:31
专家分:10
注 册:2013-4-23
结帖率:100%
 问题点数:0 回复次数:17 
为什么N输出的总是0
#include<stdio.h>
void main()
{float score,average=0;
 int n=0;
 do
 {scanf("%f",&score);
  if (score>=0)
  {average+=score;
   n++;
  }
 }while (score>=0);
 if (n!=0)average/=n;
 printf("%6.2f\n",average);
 printf("%6.2f",n);
}



 printf("%6.2f",n);
我想看看一共输入的是N是多少结果输出的是0 为什么?
搜索更多相关主题的帖子: average 
2013-04-24 10:52
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
请你逐行解释一下自己的代码,解释过后自然知道是什么原因。

授人以渔,不授人以鱼。
2013-04-24 10:55
LANCE00
Rank: 2
等 级:论坛游民
帖 子:31
专家分:10
注 册:2013-4-23
得分:0 
T版,我就是不知道N是怎么保存的才问的呀,IF语句的时候N还不是零到了printf咋就零了?就这里真心不懂。
2013-04-24 10:58
LANCE00
Rank: 2
等 级:论坛游民
帖 子:31
专家分:10
注 册:2013-4-23
得分:0 
回复 2楼 TonyDeng
2013-04-24 10:58
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
除了对n初始化为0之外,你什么时候对它赋过值了?还有不是0的时候?

授人以渔,不授人以鱼。
2013-04-24 11:01
LANCE00
Rank: 2
等 级:论坛游民
帖 子:31
专家分:10
注 册:2013-4-23
得分:0 
回复 5楼 TonyDeng
这句中的N怎么解释?我就想输出它
2013-04-24 11:02
LANCE00
Rank: 2
等 级:论坛游民
帖 子:31
专家分:10
注 册:2013-4-23
得分:0 
if (n!=0)average/=n;
2013-04-24 11:02
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
以下是引用LANCE00在2013-4-24 11:02:37的发言:

if (n!=0)average/=n;

你看看书这句是干什么的

授人以渔,不授人以鱼。
2013-04-24 11:03
LANCE00
Rank: 2
等 级:论坛游民
帖 子:31
专家分:10
注 册:2013-4-23
得分:0 
那有没有办法输出累加的N,我想知道一共输入了几个数?拜托T版了
2013-04-24 11:06
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2391
专家分:13384
注 册:2013-3-3
得分:0 
格式不对;printf("%d",n);
可以了
收到的鲜花
  • LANCE002013-04-24 11:21 送鲜花  3朵   附言:我很赞同

Maybe
2013-04-24 11:11



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-405322-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.056793 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved