四舍五入输出

大多数情况下,使用printf、setprecision也可以自动实现四舍五入。
但由于部分系统、编译器的不同,舍入的方式可能会有所差别,因此使用如下方法更加稳妥。

保留小数点后 n n n位:int((a + 10n) + 0.5) / 10n.0

/*
+0.5:如果大于等于0.5就往前进一位,小于0.5就不往前进,然后强制转换到int会向下取整,正好四舍五入到整数
.0:代表是浮点运算恩,这样就不会除完是int了
*/
//保留小数点后1位:
a = int((a * 10) + 0.5) / 10.0;
//保留小数点后2位:
b = int((a * 100) + 0.5) / 100.0;

猜你喜欢

转载自blog.csdn.net/Shao_yihao/article/details/121274504