c#返回带有两位小数点的小数
本文关键字:两位 小数点 小数 返回 | 更新日期: 2023-09-27 17:54:41
我正在尝试将十进制值四舍五入为两位,例如,我有57,328385899814471243042671610,我想要57.33。
for (int i = 1; i < cobtable.Columns.Count; i++) //loop para preencher a linha das percentagens
{
Decimal a = (Decimal)cobtable.Rows[2][i];
Decimal b = (Decimal)cobtable.Rows[0][i];
cobtable.Rows[3][i] = Decimal.Divide(a, b) * 100;
// Decimal c = (Decimal)cobtable.Rows[3][i];
// c = (a / b) * 100;
// c = Math.Round(c,2);
Response.Write((Decimal)cobtable.Rows[3][i]);
Response.Write("*");
}
GroupGrid.DataSource = cobtable;
GroupGrid.DataBind();
c
变量在response.write()
上给了我正确的值,但在网格中它没有显示相同的值,它显示了57,328385899814471243042671610。我做错了什么?
使用以下方法:
Math.Round(57.328385899814471243042671610,2);
第二个参数没有小数
System.Math.Ceiling(c * 100) / 100);
为GridView
中的相关列指定一个DateFormatString
。
DataFormatString="{0:F2}" // Rounds to 2 decimal places
这会影响值对用户的显示方式,而不会因为舍入而导致实际的数据丢失。