c++中有这三个函数用来处理小数向整数的转换:
2.1 2.6 -2.1 -2.6
floor : 不大于自变量的最大整数 2 2 -3 -3
ceil :不小于自变量的最大整数 3 3 -2 -2
round:四舍五入到最邻近的整数 2 3 -2 -3
但代码中经常要处理小数的四舍五入,例如对37.775进行保留两位小数的四舍五入输出,正确输出应该为37.78这个时候以上三个现成的函数不能够直接达到我们的目的。
我们用以下两种思路来达到我们的目的:
float a=37.775
a=ceil(a*100+0.5)/100
float a=37.775;
a=round(a*100)/100