C#怎么保留小数后面2个小数 又怎么四舍五入保留2个小数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#怎么保留小数后面2个小数 又怎么四舍五入保留2个小数相关的知识,希望对你有一定的参考价值。
C#中小数点后保留两位小数,四舍五入的函数及使用方法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追问
不是的,结果都是45.37
参考技术A 1.Convert.ToDouble(i).ToString("0.00")
2.
Math.Round(0.333333,2);//按照四舍五入的国际标准
3.
double dbdata=0.335333;
string str1=String.Format("0:F",dbdata);//默认为保留两位
4.
float i=0.333333;
int j=(int)(i * 100);
i = j/100;
5.
decimal.Round(decimal.Parse("0.3333333"),2)
6.
private System.Globalization.NumberFormatInfo nfi = new System.Globalization.NumberFormatInfo();
float test=0.333333f;
nfi.NumberDecimalDigits=2;
string result=test.ToString("N", nfi);
7.
string result= String.Format("0:N2",Convert.ToDecimal("0.333333").ToString());
(转载)追问
怎么没有显示结果
第三个是12是被强制转换小数舍去了吗?
😂四舍五入都被你玩坏了
追答功能有很多种方法可以实现,像这种保留几位小数的,我最常用的是
Convert.todouble(n).tostring("0.00"),这个可以理解为强制转化为"0.00"格式,以此类推,也可以为"0.000","0.0000"。其他的几种方法我也是转载来的,有注明,没事可以琢磨琢磨,共同学习,一起进步。
以后有疑问,就直接问你啦,😁
以上是关于C#怎么保留小数后面2个小数 又怎么四舍五入保留2个小数的主要内容,如果未能解决你的问题,请参考以下文章