如果我将150除以100,应该得到1.5。但是当我像下面这样除法运算时,我得到了1.0:
double result = 150 / 100;
有人能告诉我如何获得1.5吗?
double result = 150 / 100;
有人能告诉我如何获得1.5吗?
尝试执行以下操作:
double result = (double)150/100;
当你像以前一样进行除法时:
double result = 150/100;
首先,将被除数转换为整型进行计算,然后再将结果强制转换为双精度浮点型,因此得到的结果是1.0。你需要在等式中使用双精度浮点型才能得到双精度除法的结果。
double result = (double)150 / 100;
var result = 150/100f
你可以通过添加.0
使任何数字变为浮点数:
double result=150.0/100
或者
double result=150/100.0
double result = (150.0/100.0)
< p>在等号右侧,一个或两个数字应该是浮点数/双精度浮点数。
如果你只是使用像150和100这样的字面值,C#会将它们视为整数,并且整数运算总是“向下取整”。你可以添加一个标志,如“f”表示浮点数或“m”表示十进制数,以避免得到整数运算结果。因此,例如result = 150m/100m
将给出与result = 150/100
不同的答案。
100
是一个整数 - 使用双精度浮点数代替。 - BrokenGlass