我想在c#中四舍五入小数点后两位的双值,我怎么能做到呢?
double inputValue = 48.485;
舍入后
inputValue = 48.49;
相关:c# -如何将十进制值四舍五入到2位小数点后(用于页面上的输出)
我想在c#中四舍五入小数点后两位的双值,我怎么能做到呢?
double inputValue = 48.485;
舍入后
inputValue = 48.49;
相关:c# -如何将十进制值四舍五入到2位小数点后(用于页面上的输出)
当前回答
使用数学。轮
value = Math.Round(48.485, 2);
其他回答
使用插值字符串,这将生成一个四舍五入的字符串:
var strlen = 6;
$"{48.485:F2}"
输出
"48.49"
你应该使用
inputvalue=Math.Round(inputValue, 2, MidpointRounding.AwayFromZero)
数学。轮
数学。将双精度浮点值舍入为a 指定的小数位数。
MidpointRounding
指定数学舍入方法应如何处理数字 这是两个数的中间。
基本上,上面的函数会取你的输入值并四舍五入到小数点后2位(或任何你指定的数字)。MidpointRounding。当一个数字位于另外两个数字的中间时,它会四舍五入到离0最近的数字。还有另一个选项,你可以使用四舍五入到最近的偶数。
Math.Round(inputValue, 2, MidpointRounding.AwayFromZero)
另一种简单的方法是使用带参数的ToString。 例子:
float d = 54.9700F;
string s = d.ToString("N2");
Console.WriteLine(s);
结果:
54.97
如此:
inputValue = Math.Round(inputValue, 2);