我在C#中有这段代码
double result = 480 - 460.8;
为什么结果是19.199999999999989而不是19.2?
答案 0 :(得分:4)
你应该格式化result
输出的双精度:
double result = 480 - 460.8;
String.Format("{0:0.##}", result);
测试示例:
<强>更新强>
还有另一种没有字符串格式的方法,您可以使用小数位后两位数的方法Math.Round
:
Math.Round(result,2);
示例: