算法:实现四舍五入的小技巧

来源:互联网 发布:愚人节整蛊软件 编辑:程序博客网 时间:2024/05/22 12:54

如果要对正小数进行四舍五入取整,可以通过 int(f+0.5) 来实现;对于负小数,只需改为 int(f-0.5)
同样,可以将这一方法扩展至对任意位进行四舍五入,代码如下。

#include<stdio.h>int main(){    double a=24680.13579;    int a1=(int)(a+0.5);//对十分位四舍五入    double a2=((int)((a*1000)+0.5))/1000.0;//对万分位四舍五入    double a3=((int)((a/1000)+0.5))*1000.0;//对千位四舍五入     printf("%lf %d %lf %lf\n",a,a1,a2,a3);    double b=-24680.13579;    int b1=(int)(b-0.5);//对十分位四舍五入    double b2=((int)((b*1000)-0.5))/1000.0;//对万分位四舍五入    double b3=((int)((b/1000)-0.5))*1000.0;//对千位四舍五入     printf("%lf %d %lf %lf\n",b,b1,b2,b3);    return 0;}