由于整数运算中,小数直接去除,不管四舍五入。
要解决问题这有一个方法一步到位,且不用改变数据类型:
利用各位在5到9范围进位,只要乘上10进行计算后,加上5直接对四舍五入手动判断进位,再除10捎去无用的个位,就行了
b = ((1000 * (c - x)) / x)+5;
b=b/10;//这里求的是c超出x的百分比,两行可以合并成一行。
本文介绍了一种在整数运算中实现四舍五入的方法,通过乘以10并加上5来手动判断进位,再除以10去掉无用的个位数,适用于需要精确控制四舍五入场景。
由于整数运算中,小数直接去除,不管四舍五入。
要解决问题这有一个方法一步到位,且不用改变数据类型:
利用各位在5到9范围进位,只要乘上10进行计算后,加上5直接对四舍五入手动判断进位,再除10捎去无用的个位,就行了
b = ((1000 * (c - x)) / x)+5;
b=b/10;//这里求的是c超出x的百分比,两行可以合并成一行。
2万+
3847
1万+

被折叠的 条评论
为什么被折叠?