其他分享
首页 > 其他分享> > 关于四舍六入五取偶这件事

关于四舍六入五取偶这件事

作者:互联网

因为被某不知名题毒害而被一群dalao安利的新知识,不适用于全部环境

	double a=2.35; 
	printf("%.1lf",a);

看上面这一段代码,输出是2.4,这没什么问题

	double a=2.25; 
	printf("%.1lf",a);

但这段代码输出的却是2.2,并不符合四舍五入的原则

这就得需要用"四舍六入五取偶"的原则来解释了,如果你保留的下一位正好是5且后面都是0(比如说2.251保留1位就是2.3,因为它第2位以后还有值),就看保留的那位是奇数还是偶数,奇数就+1,偶数不变

就比如说你想给12.15保留一位小数,第2位小数上的数码是5,那就看第1位,是1,奇数,那就给它+1,结果就是12.2

又比如说你想给12.25保留一位小数,第1位是2,偶数,那就不变,结果也是12.2

至于想要四舍五入的解决方法,输出浮点数的时候给它加个1e-10就行了

标签:六入,四舍五入,%.,奇数,五取,保留,偶数,四舍,小数
来源: https://www.cnblogs.com/We269/p/15004167.html