我的变量类似于float num =(x / y); 当num给出结果如34.443时,我需要对结果进行舍入。 那么如何在c#中做到这一点?
答案 0 :(得分:25)
使用Math.Ceiling:
返回更大的最小整数 大于或等于指定的数字
请注意,这适用于双精度数,因此如果您需要浮点数(或整数),则需要进行强制转换。
float num = (float)Math.Ceiling(x/y);
答案 1 :(得分:5)
float num = (x/y);
float roundedValue = (float)Math.Round(num, 2);
如果我们使用Math.Round函数,我们可以指定没有要舍入的地方。
答案 2 :(得分:2)
如果您希望整数大于答案,请使用Math.Ceiling
;如果您希望整数小于答案,请使用Math.Floor
。
实施例
Math.Ceiling(3.46) = 4;
Math.Floor(3.46) = 3;
使用您的案件所需的任何一个。
答案 3 :(得分:1)
如果你需要2个小数,你可以使用类似的东西:
float roundedvalue = (float)Math.Ceiling(x*100/y) /100;
float roundedvalue = (float)Math.Floor(x*100/y) /100;