搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 新手问一个float的问题
标题:
新手问一个float的问题
只看楼主
fky1989
来 自:山西省太原市
等 级:
新手上路
帖 子: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
等 级:
新手上路
帖 子:2
专家分:0
注 册:2008-10-31
第
2
楼
得分:0
4舍五入吧...
4舍五入吧...
2008-10-31 13:29
zxwangyun
来 自:云南
等 级:
业余侠客
威 望:
1
帖 子:232
专家分:299
注 册:2008-10-17
第
3
楼
得分:0
你用%g控制输出就不会出现这样的问题了
收到的鲜花
fky1989
于
2008-10-31 13:55
送鲜花
3朵
2008-10-31 13:36
fky1989
来 自:山西省太原市
等 级:
新手上路
帖 子:44
专家分:0
注 册:2008-10-3
第
4
楼
得分:0
谢谢了
2008-10-31 13:40
zxwangyun
来 自:云南
等 级:
业余侠客
威 望:
1
帖 子:232
专家分:299
注 册:2008-10-17
第
5
楼
得分:0
评个分噻 哥们
2008-10-31 13:47
fky1989
来 自:山西省太原市
等 级:
新手上路
帖 子:44
专家分:0
注 册:2008-10-3
第
6
楼
得分:0
可不可以这么说,反正g和f都是7位有效数,以后就用g不用f了?
2008-10-31 13:56
soevil
等 级:
新手上路
帖 子:13
专家分:0
注 册:2008-10-31
第
7
楼
得分:0
能说下为什么输出是123.432999吗???
会不会是编译器的问题??
楼主用的是什么编译器??
2008-10-31 14:46
风居住的街道
等 级:
新手上路
帖 子:374
专家分:0
注 册:2008-10-24
第
8
楼
得分:0
我猜因为.433的二进制数字是个循环小数……
果然,.433= 0.01101(110)循环,是个循环小数。
2008-10-31 14:56
fky1989
来 自:山西省太原市
等 级:
新手上路
帖 子:44
专家分:0
注 册:2008-10-3
第
9
楼
得分:0
我用的wintc
2008-10-31 15:15
9
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-241673-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.025383 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved