我想在c#中四舍五入小数点后两位的双值,我怎么能做到呢?

double inputValue = 48.485;

舍入后

inputValue = 48.49;

相关:c# -如何将十进制值四舍五入到2位小数点后(用于页面上的输出)


当前回答

另一种简单的方法是使用带参数的ToString。 例子:

float d = 54.9700F;    
string s = d.ToString("N2");
Console.WriteLine(s);

结果:

54.97

其他回答

使用数学。轮

value = Math.Round(48.485, 2);

如此:

inputValue = Math.Round(inputValue, 2);

你可以从下面试试。这有很多方法。

1. 
 value=Math.Round(123.4567, 2, MidpointRounding.AwayFromZero) //"123.46"
2.
 inputvalue=Math.Round(123.4567, 2)  //"123.46"
3. 
 String.Format("{0:0.00}", 123.4567);      // "123.46"
4. 
string.Format("{0:F2}", 123.456789);     //123.46
string.Format("{0:F3}", 123.456789);     //123.457
string.Format("{0:F4}", 123.456789);     //123.4568

使用插值字符串,这将生成一个四舍五入的字符串:

var strlen = 6;
$"{48.485:F2}"

输出

"48.49"
Math.Round(inputValue, 2, MidpointRounding.AwayFromZero)