-1

我做了所有我能做的尽职调查,我在pythonc++phpJavaScript中找到了一些答案,这些答案并没有完全解决我的问题......

C#我试图将第二个小数点的值四舍五入到可被 10 整除的最接近的值。
有一个精度值z= 14.066666
我需要z变成 14.10

这是我到目前为止所做的:

var result1 = Math.Ceiling(z);             // 15      (want 14.10)
var result2 = Math.Round(z,2);             // 14.7    (want 14.10)
var result3 = Math.Round(z,5);             // 14.0667 (want 14.10)
var result4 = Math.Ceiling(z*100)/100.0;   // 14.07   (want 14.10)
var result5 = Math.Ceiling(z*10)/10        // 14.1    (want 14.10)

感谢您的考虑,并感谢我提供的任何帮助。

4

1 回答 1

6

14.1 实际上等于 14.10。区别在于表现,而不在于价值。要使用附加零写入此值,您必须指定正确的格式:

    double z = 14.066666;
    var result5 = Math.Ceiling(z*10)/10;
    Console.WriteLine("{0:N2}", result5);
于 2021-09-24T10:26:26.297 回答