如果我将 150 除以 100,我应该得到 1.5。但是当我像下面那样划分时,我得到了 1.0:
double result = 150 / 100;
谁能告诉我如何获得1.5?
如果我将 150 除以 100,我应该得到 1.5。但是当我像下面那样划分时,我得到了 1.0:
double result = 150 / 100;
谁能告诉我如何获得1.5?
尝试:
double result = (double)150/100;
当您像以前一样执行除法时:
double result = 150/100;
该除法首先作为一个 Int 完成,然后它被转换为一个 double 因此你得到 1.0,你需要在等式中有一个 double 才能将它除为一个 double。
将其中一个整数转换为浮点类型。您应该查看小数和双精度之间的区别并决定您想要哪个,但要使用双精度:
double result = (double)150 / 100;
打个号码float
var result = 150/100f
或者您可以通过添加使任何数字浮动.0
:
double result=150.0/100
或者
double result=150/100.0
double result = (150.0/100.0)
一个或两个数字应该是右侧的浮点数/双精度数=
如果你只是使用像 150 和 100 这样的文字值,C# 会将它们视为整数,并且整数数学总是“向下舍入”。您可以为浮点数添加一个标志,如“f”或为十进制添加“m”,以不获取整数数学。所以例如result = 150m/100m
会给你一个不同的答案result = 150/100
。