0

我需要创建一个像这样四舍五入十进制数的函数:

Round("$32.95", 0) 到 -> $33 Round("85.86%", 1) 到 -> 86.9%

其中第一个参数是字符串,第二个参数是所需的小数位数

我正在使用 Math.round 但它正在转换为 85.9

4

2 回答 2

0

您可以使用的算法(我不知道 C#):

  • 获得 10 次幂(有效位数)(=P10)
  • 将你的十进制数乘以 P10
  • 加:0.5
  • 将此总和的整数部分除以 (P10) - 答案将是您的四舍五入数
于 2012-06-14T08:58:44.793 回答
0

将字符串转换为 double 并以类似的方式将其传递给 Math.Round,如下所示:

double num=32.86;
Math.Round(num);   //Output 33
Math.Round(num, 1) //Output 32.9
于 2012-06-14T09:38:48.520 回答