我有一个datagridview列'total',其中我正在对输入的各个项目的费率进行总和。有时候我会得到30.19卢比或100.59卢比的额外费用,我想要30.19到30.50& 100.59到101.所以任何人都可以帮助我......?
我试过了
float val = float.Parse(value);
total = val;
ekunrakam = ekunrakam + total;
Math.Round(ekunrakam + 0.5,2);
但它不起作用..
提前感谢..
答案 0 :(得分:2)
通常使用货币,在您没有专用货币类型的情况下,您使用存在,最高或美分的最小货币单位或您拥有的货币。
此外,不要使用浮动物来赚钱,否则舍入错误会让你失望。 这些民间建议十进制。
What is the best data type to use for money in c#?
大多数国家都有关于如何汇总部分货币数量的官方标准,有时需要法律规定,但它们通常是银行家四舍五入的变体。幸运的是,它是Decimal.Round的默认行为。
http://msdn.microsoft.com/en-us/library/system.decimal.round%28v=vs.71%29.aspx
答案 1 :(得分:1)
你想要Math.Round(Somefloat + 0.5,2)才能胜任。
答案 2 :(得分:0)
如果你想要舍入到最接近的整数,比如100.59到101,我会告诉你只需将你的float变量设置为int。但是,你为什么要围绕30.50?四舍五入的具体规则是什么?