除以100时的问题

时间:2014-03-11 22:42:35

标签: c++ c divide

Helo,我是编程和遇到问题的新手,我有一个整数,例如158,我将它除以100,得到的是1,但我想要1.58而不是

这可能是已知的问题,但对不起,我现在就是noob。)

3 个答案:

答案 0 :(得分:2)

将其转换为浮点数

int i = 158;
float f = (float)i / 100;  //less precision
double d = (double)i / 100;  //more precision
//other way
int i = 158;
float f = i / 100.0;  //less precision
double d = i / 100.0;  //more precision

你正在做的是将整数除以整数,在这种情况下结果总是整数,得到浮点数,两个操作数中至少有一个必须是浮点数。

答案 1 :(得分:1)

您需要除100.0而不是100

答案 2 :(得分:0)

在C ++中除以整数总是会给你一个整数,所以它永远不会完全准确。话虽如此,上面提到你可以除以一个或两个长,以得到你想要的准确十进制数。