游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2870|回复: 5

求助,那个,关于long double的精度的一个问题,

[复制链接]

33

主题

544

帖子

554

积分

高级会员

Rank: 4

积分
554
发表于 2006-9-18 15:13:00 | 显示全部楼层 |阅读模式
比如定义一个long double
long double apple=986532.2;
然后打印apple,值就是986532.199999...了
因为程序需要打印出一个比较精确的值,比如这个时候我只想打印出来986532.2
有人能告诉我该怎么做吗?谢谢了;)

121

主题

2029

帖子

2034

积分

金牌会员

Rank: 6Rank: 6

积分
2034
QQ
发表于 2006-9-18 17:33:00 | 显示全部楼层

Re:求助,那个,关于long double的精度的一个问题,

fprintf("%.2d", apple + epsilon);

33

主题

544

帖子

554

积分

高级会员

Rank: 4

积分
554
 楼主| 发表于 2006-9-18 18:33:00 | 显示全部楼层

Re:求助,那个,关于long double的精度的一个问题,

那个,epsilon定多少比较合适?
我设过很多值,有时这个数字可以正常打出来,但另一个就不行了,
还有,楼上,那个,long double用%d是打印不出来的;)应该是%f
呼...怎么办呀...大家知道就教我哈,嘿嘿

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
发表于 2006-9-18 19:09:00 | 显示全部楼层

Re:求助,那个,关于long double的精度的一个问题,

"%.Xf"中,X是小数点后保留几多位。至于epsilon,应该搜查搜查网络

50

主题

244

帖子

319

积分

中级会员

Rank: 3Rank: 3

积分
319
QQ
发表于 2006-9-19 22:43:00 | 显示全部楼层

Re:求助,那个,关于long double的精度的一个问题,

应该是写0.*5就好了(*为保留小数位数,填充0),一般是5舍6入,加这个只是让有小数的进1。不过这个也不一定准确,可以自己测试下。

0

主题

202

帖子

202

积分

中级会员

Rank: 3Rank: 3

积分
202
发表于 2006-9-20 02:06:00 | 显示全部楼层

Re:求助,那个,关于long double的精度的一个问题,

printf("%.1f",apple);
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 11:33

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表