1、使用标准库函数round(),该函数会将浮点数四舍五入为最接近的整数值。例如:
double num = 3.7;
int roundedNum = round(num);
2、使用自定义函数进行四舍五入,可以根据小数部分的值来判断应该向上还是向下取整。例如:
int round(double num) {
return (num >= 0) ? int(num + 0.5) : int(num - 0.5);
}
3、使用ceil和floor函数:可以使用ceil和floor函数来进行向上取整和向下取整,然后根据小数部分的大小来判断是否需要进行四舍五入。例如:
num = 3.1;
int roundedNum = (num - floor(num) >= 0.5) ? ceil(num) : floor(num);
4、可以使用iomanip库中的setprecision和fixed函数来实现四舍五入的效果。例如:
double num = 3.6;
cout << fixed << setprecision(0) << num << endl;
5、使用printf()函数可以实现四舍五入,结合 %.nf 格式化字符串来实现保留n位小数的四舍五入效果。例如:
printf("%.0lf\n",num);
以上均可以实现四舍五入,想进一步搞懂取整逻辑的可以继续往下阅读
1、向上取整ceil():向上取整是指将一个数向正无穷方向取最接近的整数。即不小于这个数的最小整数。例如,在-3~-4之间的绿点都将向数轴右边取整为-3,任何在3~4之间的红点都将向右边取整为4。
2、向下取整floor():向下取整是指将一个数向负无穷方向取最接近的整数。即不大于这个数的最大整数。例如,在-3~-4之间的绿点都将向数轴左边取整为-4,任何在3~4之间的红点都将向左边取整为3。
3、向0取整int:将一个数向0的方向取最接近的整数,例如,在-3~-4之间的绿点都将向0取整为-3,任何在3~4之间的红点都将向0取整为3。
4、四舍五入取整round():将一个数四舍五入到最接近的整数。看红点离两端a和b的距离,向距离更短的方向取整,例如,这里红色线段<绿色距离,故取整为a。(特别的,当距离相等时,规定向右侧的b取整)