在C#中我有一个数,例如2.345678476,如何将其四舍五入保留两位小数??
3个回答
展开全部
要实现四舍五入函数,对于正数,可以加一个 MidpointRounding.AwayFromZero 参数指定当一个数字是其他两个数字的中间值时其舍入为两个值中绝对值较大的值,例:
Math.Round(3.45, 2, MidpointRounding.AwayFromZero)
不过对于负数上面的方法就又不对了
因此需要自己写个函数来处理
double ChinaRound(double value, int decimals)
{
if (value < 0)
{
return Math.Round(value + 5 / Math.Pow(10, decimals + 1), decimals, MidpointRounding.AwayFromZero);
}
else
{
return Math.Round(value, decimals, MidpointRounding.AwayFromZero);
}
}
Math.Round(3.45, 2, MidpointRounding.AwayFromZero)
不过对于负数上面的方法就又不对了
因此需要自己写个函数来处理
double ChinaRound(double value, int decimals)
{
if (value < 0)
{
return Math.Round(value + 5 / Math.Pow(10, decimals + 1), decimals, MidpointRounding.AwayFromZero);
}
else
{
return Math.Round(value, decimals, MidpointRounding.AwayFromZero);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-08-10
展开全部
Double.Parse(2.345678476).ToString("0.00")
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Console.WriteLine("请输入第一个数:");
string str = Console.ReadLine();
Console.WriteLine(Double.Parse(str).ToString("0.##"));
Console.ReadKey();
string str = Console.ReadLine();
Console.WriteLine(Double.Parse(str).ToString("0.##"));
Console.ReadKey();
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询