gpt4 book ai didi

c# - 在 C# 中向后计算增值税总是返回 0

转载 作者:行者123 更新时间:2023-11-30 19:32:53 24 4
gpt4 key购买 nike

public string s()
{
double price = 123.12
double preVatPrice = (100 / (100 + 20) + price);

return preVatPrice.ToString();
}

在 c# 中这总是返回 '0' 任何想法为什么?

最佳答案

这是 integer division :

100 / (100 + 20)

这将导致 0。

把它变成:

100.0 / (100.0 + 20.0)

确保所有参数都是浮点类型。


顺便说一句 - 当我测试它时,该函数返回“123.12”。


更新:

正如几条评论中指出的那样 - 您应该使用 decimal用于货币计算,尽管在这种情况下不太可能成为问题。

The Decimal value type is appropriate for financial calculations requiring large numbers of significant integral and fractional digits and no round-off errors.

关于c# - 在 C# 中向后计算增值税总是返回 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4681324/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com