C# 使用数学。截断为两位小数

C# 使用数学。截断为两位小数,c#,C#,我有这个号码:11806.206193333 我正在使用Math.Truncate(val*100)/100希望更改为11806.20 但最终结果是11806.00。出了什么问题 谢谢。你的逻辑是正确的。这非常有效: decimal val = 11806.206193333m; decimal truncated = Math.Truncate(val * 100) / 100; Console.WriteLine("{0:N2}", truncated); 这将打印11806.20(在

我有这个号码:11806.206193333

我正在使用Math.Truncate(val*100)/100希望更改为11806.20

但最终结果是11806.00。出了什么问题


谢谢。

你的逻辑是正确的。这非常有效:

decimal val = 11806.206193333m;
decimal truncated =  Math.Truncate(val * 100) / 100;

Console.WriteLine("{0:N2}", truncated);

这将打印
11806.20
(在美式英语系统上)。

您的逻辑是正确的。这非常有效:

decimal val = 11806.206193333m;
decimal truncated =  Math.Truncate(val * 100) / 100;

Console.WriteLine("{0:N2}", truncated);

这将打印
11806.20
(在美式英语系统上)。

这应该也确实有效。你能给我们看一下代码的其余部分吗?你检查过数字是十进制、浮点还是双精度类型的变量吗?这应该也确实有效。你能告诉我们代码的其余部分吗?你检查过数字是十进制、浮点还是双精度类型的变量吗?