24小时热门版块排行榜    

查看: 1281  |  回复: 3
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

dp.xiong

新虫 (初入文坛)

[交流] 一个奇怪的double型数据输出问题 已有3人参与

#include
void main(){
        double a=8.86;
        printf("%.16g",a);
}

此时输出为8.859999999999999;小数点后边为什么还没有16位呢?
若将printf("%.16g",a);改为printf("%.15g",a);则准确输出8.86;
请问这是为什么?急求高手解答。

[ Last edited by dp.xiong on 2011-5-26 at 23:27 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sudo

木虫 (正式写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
xzhdty(金币+1): 谢谢回帖 2011-05-27 08:56:27
引用回帖:
Originally posted by dp.xiong at 2011-05-26 23:25:52:
#include <stdio.h>
void main(){
        double a=8.86;
        printf("%.16g",a);
}

此时输出为8.859999999999999;小数点后边为什么还没有16位呢?
若将printf("%.16g",a);改为printf(& ...

其实使用.15并没有做到在内存中准确存储,显示正确只是因为四舍五入

楼主可以到wiki上查一下double的格式

小数的二进制到十进制的相互转换,存在着不可调和的矛盾:有限位二进制不一定能精确表示有限位的十进制小数

所以简单地说,0.1这个数,double也不能精确保存
4楼2011-05-27 08:53:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 4 个回答

ioadong

木虫 (著名写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
dubo(金币+1): 感谢应助 2011-05-27 17:39:53
The double type contains 64 bits: 1 for sign, 11 for the exponent, and 52 for the mantissa. Its range is +/–1.7E308 with at least 15 digits of precision.
以科学的理性代替天然的非理性。
3楼2011-05-27 00:12:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 澳大利亚 Murdoch University 全奖博士招生(3个名额)地质化工冶金领域 +30 AI8RaGaPaSCR 2026-08-07 32/1600 2026-08-13 21:45 by Hd5o188FDaoB
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +10 医学老男孩 2026-08-13 27/1350 2026-08-13 21:43 by chemsynth
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +9 Tide man 2026-08-10 10/500 2026-08-13 20:33 by 温淼淼淼
[硕博家园] 一作与独作在应聘高校教师时区别大吗 +3 mbygzh 2026-08-08 4/200 2026-08-13 19:31 by 龙-樱
[基金申请] FileCode能看出啥? +10 要乐观耀哥 2026-08-10 28/1400 2026-08-13 17:51 by 医学老男孩
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +4 majunge000 2026-08-11 6/300 2026-08-13 16:50 by 四季常青藤
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +9 家与远方 2026-08-10 14/700 2026-08-13 09:41 by 臭臭不臭01
[基金申请] 好奇怪的filecode +5 布布和一二 2026-08-08 6/300 2026-08-12 16:11 by 云上清扬
[基金申请] 综述论文作为代表作会不会影响评审专家的印象分? +11 yufeiwaner 2026-08-09 13/650 2026-08-12 08:17 by yufeiwaner
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +7 a089 2026-08-07 7/350 2026-08-08 18:05 by gltch
[基金申请] 化学口download_prp&amp;fileCode的固定段好像这几天一直没变,有变的大神么? +3 Tide man 2026-08-07 4/200 2026-08-07 22:39 by Tide man
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
信息提示
请填处理意见