| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 758 人关注过本帖
标题:新手问一个float的问题
只看楼主 加入收藏
fky1989
Rank: 1
来 自:山西省太原市
等 级:新手上路
帖 子:44
专家分:0
注 册:2008-10-3
收藏
 问题点数:0 回复次数:8 
新手问一个float的问题
float a=123.433;
printf("a=%f",a);     
为什么输出的是123.432999啊?为什么不是123.433000?或者是123.433***?
float不是7位有效数字吗?

[[it] 本帖最后由 fky1989 于 2008-10-31 13:28 编辑 [/it]]
搜索更多相关主题的帖子: float 
2008-10-31 13:27
Downloader
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-10-31
收藏
得分:0 
4舍五入吧...
4舍五入吧...
2008-10-31 13:29
zxwangyun
Rank: 4
来 自:云南
等 级:业余侠客
威 望:1
帖 子:232
专家分:299
注 册:2008-10-17
收藏
得分:0 
你用%g控制输出就不会出现这样的问题了
收到的鲜花
  • fky19892008-10-31 13:55 送鲜花  3朵  
2008-10-31 13:36
fky1989
Rank: 1
来 自:山西省太原市
等 级:新手上路
帖 子:44
专家分:0
注 册:2008-10-3
收藏
得分:0 
谢谢了
2008-10-31 13:40
zxwangyun
Rank: 4
来 自:云南
等 级:业余侠客
威 望:1
帖 子:232
专家分:299
注 册:2008-10-17
收藏
得分:0 
评个分噻 哥们
2008-10-31 13:47
fky1989
Rank: 1
来 自:山西省太原市
等 级:新手上路
帖 子:44
专家分:0
注 册:2008-10-3
收藏
得分:0 
可不可以这么说,反正g和f都是7位有效数,以后就用g不用f了?
2008-10-31 13:56
soevil
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2008-10-31
收藏
得分:0 
能说下为什么输出是123.432999吗???

 会不会是编译器的问题??

  楼主用的是什么编译器??
2008-10-31 14:46
风居住的街道
Rank: 1
等 级:新手上路
帖 子:374
专家分:0
注 册:2008-10-24
收藏
得分:0 
我猜因为.433的二进制数字是个循环小数……


果然,.433= 0.01101(110)循环,是个循环小数。
2008-10-31 14:56
fky1989
Rank: 1
来 自:山西省太原市
等 级:新手上路
帖 子:44
专家分:0
注 册:2008-10-3
收藏
得分:0 
我用的wintc
2008-10-31 15:15
快速回复:新手问一个float的问题
数据加载中...
 
   



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

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