Math.Round Visual Studio C# 中的小数点不四舍五入
Math.Round decimal in Visual Studio C# not rounding
我希望我的计算结果为 return 两位小数。
我用 Google 搜索并找到了 Math.Round 函数。
我在几个地方将它应用到我的代码中,即在变量声明之后、return 语句之前、计算行之前和计算行之后,但得到 $251.333333333333 作为我的结果。
我的代码如下所示:
public decimal finalCalc()
{
decimal calcNumber3;
decimal g = firstPartofCalc();
decimal h = secondPartofCalc();
if (rbMonthlyPay.Checked)
{
Math.Round(calcNumber3 = (((g + h) * 52) / 12), 2) ;
}
else
{
calcNumber3 = g + h;
}
return calcNumber3;
}
计算 1 和 2 return 小数结果。我知道还有其他一些方法可以获得相同的结果,包括 return 将结果作为字符串。但是,作为编码方面的新手,我真的很想知道为什么这不起作用。
TIA
薇琪
您没有正确地将计算值分配给 calcNumber3,请将其更改为:
calcNumber3 = Math.Round((((g + h) * 52) / 12), 2) ;
我希望我的计算结果为 return 两位小数。 我用 Google 搜索并找到了 Math.Round 函数。 我在几个地方将它应用到我的代码中,即在变量声明之后、return 语句之前、计算行之前和计算行之后,但得到 $251.333333333333 作为我的结果。 我的代码如下所示:
public decimal finalCalc()
{
decimal calcNumber3;
decimal g = firstPartofCalc();
decimal h = secondPartofCalc();
if (rbMonthlyPay.Checked)
{
Math.Round(calcNumber3 = (((g + h) * 52) / 12), 2) ;
}
else
{
calcNumber3 = g + h;
}
return calcNumber3;
}
计算 1 和 2 return 小数结果。我知道还有其他一些方法可以获得相同的结果,包括 return 将结果作为字符串。但是,作为编码方面的新手,我真的很想知道为什么这不起作用。
TIA 薇琪
您没有正确地将计算值分配给 calcNumber3,请将其更改为:
calcNumber3 = Math.Round((((g + h) * 52) / 12), 2) ;