前言:

 

      一定要说 坑爹的微软! 坑爹的微软! 坑爹的微软!  重要的事情说 三遍 !

     

摘录 SMDN

      示例

 

下面的示例演示就近舍入。

 
Math.Round(3.44, 1); //Returns 3.4.
Math.Round(3.45, 1); //Returns 3.4.
Math.Round(3.46, 1); //Returns 3.5.

Math.Round(4.34, 1); // Returns 4.3
Math.Round(4.35, 1); // Returns 4.4
Math.Round(4.36, 1); // Returns 4.4

     MSDN 上显示  这就不是 四舍五入  这叫 五舍六入!

     重要的提示!  在  .NET 4.5 自后 该方法就成了标准的 四舍五入了!! 2.0 3.0 3.5 4.0 都是 五舍六入!

     
    解决办法 网上大神也给出过   

    摘录

  C#中小数点后保留两位小数,四舍五入的函数及使用方法

    2011-08-08 10:25 by 追忆似水流年, 编辑

    Math.Round(45.367,2)     //Returns   45.37

    Math.Round(45.365,2)     //Returns   45.36

     C#中的Round()不是我们中国人理解的四舍五入,是老外的四舍五入,是符合IEEE标准的四舍五入,具体是四舍六入,下面的才是符合中国人理解的四舍五入

      Math.Round(45.367,2,MidpointRounding.AwayFromZero);//45.37

    Math.Round(45.365,2,MidpointRounding.AwayFromZero)     //Returns   45.37         

        这个是非得想 使用 该方法   的解决方法     但是!!!  有BUG !!  输入 1.015   得到的结果是 1.01      !!!!  其他的没问题。

    

 

       最终我建议不使用 这个方法  直接使用   ToString("F3")   Fn  n是几 就截取几位小数并且四舍五入!

 

 

 

 

 

此文章由人工翻译。 将光标移到文章的句子上,以查看原文。
译文
原文
.NET Framework 4
 
其他版本
 

 

将小数值按指定的小数位数舍入。

 

命名空间:  System
程序集:  mscorlib(在 mscorlib.dll 中)
语法
 
 
 
public static decimal Round(
	decimal d,
	int decimals
)

参数

d
类型:System.Decimal
要舍入的小数。
decimals
类型:System.Int32
返回值中的小数位数。

返回值

类型:System.Decimal
decimals 位小数的数字。
异常
 
 
异常 条件
ArgumentOutOfRangeException

decimals 小于 0 或大于 28。

OverflowException

Decimal 的范围。

备注
 
 

decimals 等于零,则返回整数。

d 而不做更改。

它可以将因单方向持续舍入中点值而导致的舍入误差降到最低。

Decimal.Round(Decimal, Int32, MidpointRounding) 重载。

示例
 
 

下面的示例演示就近舍入。

 
Math.Round(3.44, 1); //Returns 3.4.
Math.Round(3.45, 1); //Returns 3.4.
Math.Round(3.46, 1); //Returns 3.5.

Math.Round(4.34, 1); // Returns 4.3
Math.Round(4.35, 1); // Returns 4.4
Math.Round(4.36, 1); // Returns 4.4

 

    Math.Round(45.367,2)     //Returns   45.37

    Math.Round(45.365,2)     //Returns   45.36

     C#中的Round()不是我们中国人理解的四舍五入,是老外的四舍五入,是符合IEEE标准的四舍五入,具体是四舍六入,下面的才是符合中国人理解的四舍五入

      Math.Round(45.367,2,MidpointRounding.AwayFromZero);//45.37

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-15
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-11-19
  • 2021-12-21
  • 2021-08-10
  • 2021-08-20
相关资源
相似解决方案