| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 513 人关注过本帖, 1 人收藏
标题:请问??
只看楼主 加入收藏
demonj
Rank: 1
等 级:新手上路
帖 子:4
专家分:3
注 册:2009-10-11
结帖率:50%
收藏(1)
已结贴  问题点数:5 回复次数:9 
请问??
x=3.15724
四舍五入
(int)(x*100+0.5)/100.0=3.16
请问下这算式中为什么要加0.5
加0.3不就可以进位了???

能不能发张《带限定词后不同类型整数的长度和范围》,《实型数据的类型及表示范围》表给我,我书上的好像是错的~~!!!
谢谢了
搜索更多相关主题的帖子: 数据 限定词 
2009-10-25 14:52
pgy
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:C
等 级:小飞侠
威 望:8
帖 子:1248
专家分:2329
注 册:2009-9-23
收藏
得分:3 
0.1-0.4加0.5都不能进位,而0.5以上的就能进位了(从而达到四舍五入)。如果加0.3那就是6舍7入了

[ 本帖最后由 pgy 于 2009-10-25 15:29 编辑 ]

我可好玩啦...不信你玩玩^_^
2009-10-25 15:10
zqb7899
Rank: 4
等 级:业余侠客
帖 子:159
专家分:238
注 册:2009-10-16
收藏
得分:2 
四舍五入这样不就行了:printf("%.2f\n",x)
加0.3也可以进位啊
#include "stdio.h"
 
main()
{
  float x=3.15724,y;
  printf("%.2f\n",x);
  y=(int)(x*100+0.3)/100.0;
  printf("%f",y);
  getch();
}
WIN-TC下编译,输出:
3.16
3.160000
2009-10-25 15:21
pgy
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:C
等 级:小飞侠
威 望:8
帖 子:1248
专家分:2329
注 册:2009-9-23
收藏
得分:0 
回复 3楼 zqb7899
你那叫只做出了结果,思路都不对
你看2楼的话,然后想想为什么是除以100(那除以1000是什么意思)
还想想为什么是加上0.5(加0.3是六舍七入)

我可好玩啦...不信你玩玩^_^
2009-10-25 15:29
theiswiner
Rank: 2
等 级:论坛游民
帖 子:15
专家分:10
注 册:2009-10-20
收藏
得分:0 
................
2009-10-25 22:12
wql5223891
Rank: 1
等 级:新手上路
帖 子:19
专家分:2
注 册:2009-10-10
收藏
得分:0 
不懂!
2009-10-25 22:38
AngelMayCry
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2009-10-24
收藏
得分:0 
呵呵,如果x=3.155...的话加0.3就不行了吧
2009-10-27 20:08
AngelMayCry
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2009-10-24
收藏
得分:0 
呵呵,如果x=3.155...加0.3不就不能进位了吗
2009-10-27 20:10
yilangcb
Rank: 2
等 级:论坛游民
帖 子:30
专家分:23
注 册:2009-10-15
收藏
得分:0 
0+0.5=0.5
0+0.3=0.3
这就很明显了,只有保证所有的情况都可以猜才行,0.3是不够的
2009-10-27 20:13
demonj
Rank: 1
等 级:新手上路
帖 子:4
专家分:3
注 册:2009-10-11
收藏
得分:0 
谢谢了
2009-10-28 22:23
快速回复:请问??
数据加载中...
 
   



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

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