前言
既有肉身,就注定要承受与生俱来的千般惊扰。 ——余光中
一、方法介绍
四舍五入有很多方法,一是直接调用库函数,二是自己写一个四舍五入的函数,三就是今天要介绍的方法了——乘n除n法。
例如88.567,我们要四舍五入保留两位小数的话,可以先乘100,再加0.5,再除以100,也就是(int)(88.567 × 100 + 0.5 )/ 100.0 = (int)(8856.7 + 0.5 )/ 100.0 = 8857 / 100.0 = 88.57
我们可以仔细观察,如果要保留两位小数,那么我们就乘100,把那个需要观察是否大于五的数字放在了末尾,也就是小数点后面。如果大于五,加了0.5便会进一位,再强转为整数,最后除100.0返回原来的样子。
注意:是除以100.0,否则就是整数除法。
扩展到所有的保留小数的四舍五入,要保留n位小数,便乘以10的n次方,再强转为整数后加上0.5,最后除以10的n次方即可。
二. 代码展示
//保留两位小数
#include
using namespace std;
int main(){
double a,b,c;
int no;
scanf("%d;%lf,%lf,%lf",&no,&a,&b,&c);
a = (int)(a*100+0.5)/100.0;
b = (int)(b*100+0.5)/100.0;
c = (int)(c*100+0.5)/100.0;
printf("The each subject score of No. %d is %.2lf, %.2f, %.2f.",no,a,b,c);
return 0;
}
代码运行结果展示
总结
以上就是利用数学方法巧妙四舍五入的方法啦,只要牢记保留n位小数,便乘以10的n次方,再强转为整数后加上0.5,最后除以10的n次方即可。
以上就是全部内容,如果你觉得有所收获的话,能不能帮小桃子点个赞呢~
我是小桃子,我爱这个世界。