【发布时间】:2012-10-27 18:48:25
【问题描述】:
这段代码有问题
int cent;
int dollar ;
float cnt2dlr;
//convert cnt to doloar ;
cnt2dlr=(cnt)/(100);
问题在于cnt = 175、cnt2dlr = 0.17,444444 而不是0.17,5
有什么帮助吗?
【问题讨论】:
-
关于这个问题,你的昵称很有趣:)
-
我觉得奇怪的是它偏离了这么多......
-
一美元有 100 美分,而不是 1000。还要确保执行浮点除法。
175/1000在 c 中是0,而175/1000.0是0.175(可能会出现浮点表示错误)。 -
你确定那不是 0.17499999?那么这将是四舍五入/表示错误,因为浮点算术不是真正的算术。
标签: c++ floating-point c++builder