我试图将两个数字相减,并得到一个十进制数字加上两个小数位的结果,但是当发生减法时,我得到的是全数字,没有任何小数位。
这是我正在尝试的:

int totalMiles = 1001;
decimal total_used = 0.0M, total_gallons_used = 0.0M;
total_gallons_used = (totalMiles / 46);


如果计算正确完成,我需要接收21,76的结果,但是total_gallons_used只能得到21。

知道我在做什么错吗?

最佳答案

那是因为您要执行整数division(两个操作数是整数)。您可能要执行实数除法(一个或两个操作数是实数):

total_gallons_used = (totalMiles / 46M);


现在结果将是一个实数。

关于c# - 减去两位小数位,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8631955/

10-10 17:39