搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 程序输出结果跟预期结果不一样,为什么会这样呢?
标题:
程序输出结果跟预期结果不一样,为什么会这样呢?
取消只看楼主
ospf
等 级:
新手上路
帖 子:15
专家分:0
注 册:2008-7-9
楼主
问题点数:0 回复次数:3
程序输出结果跟预期结果不一样,为什么会这样呢?
#include<stdio.h>
int main(void)
{
float i=1000000.1;
printf("%f",i*0.01);
return 0;
}
vc输出结果是10000.001250,为什么不是10000.001呢?
搜索更多相关主题的帖子:
结果
输出
float
void
2008-07-09 00:07
ospf
等 级:
新手上路
帖 子:15
专家分:0
注 册:2008-7-9
第
2
楼
得分:0
[bo][un]Rand[/un] 在 2008-7-9 00:40 的发言:[/bo]
精度问题,0.1无法用二进制准确表示,你换成0.25(0.25=2^-2)就可以准确表示,你可以试试。
我觉得应该也是精度问题,但是你说的还是有问题,你看下面的程序,为什么就能正确输出0.00100呢?
#include<stdio.h>
int main(void)
{
float a=0.1;
printf("%f",a*0.01);
return 0;
}
2008-07-09 22:49
ospf
等 级:
新手上路
帖 子:15
专家分:0
注 册:2008-7-9
第
3
楼
得分:0
ding yi ge
2008-07-11 20:15
ospf
等 级:
新手上路
帖 子:15
专家分:0
注 册:2008-7-9
第
4
楼
得分:0
感谢你的热心,但是我不明白你的意思,能否详细解释一下啊,谢谢!
2008-07-12 09:49
4
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-223161-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.715731 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved