在C#中累计到下一个10美分(一角钱)

时间:2013-11-15 12:48:30

标签: c# decimal rounding

我想在C#中将十进制数格格式化为 NEXT 0.10美分(一角钱),如下所示:

22.62 - > 22.70
23.50 - > 22.50
23.21 - > 23.30
23.03 - > 23.10
23.10 - > 23.10
23.14 - > 23.20
23.17 - > 23.20
23.11 - > 23.20

任何帮助将不胜感激。感谢

到目前为止我所拥有的:

Math.Round(22.621, 1, MidpointRounding.AwayFromZero) //gives 22.60 
Math.Round(22.656, 1, MidpointRounding.AwayFromZero) //gives 22.70 

1 个答案:

答案 0 :(得分:4)

此方法将获得您正在寻找的答案:

decimal RoundToNextDime(decimal d)
{
    return Math.Ceiling(d*10)/10;
}