c语言中11/3是向0取整得3,还是四舍五入得4?

日期:2021-08-17 08:00:11 人气:1

c语言中11/3是向0取整得3,还是四舍五入得4?

c,
(int)(x*100+0.5)中x*100就把小数点后两位移到整数部分了,然后强制转换为int,再除以float,所以结果为小数点后两位,其他也可以,不过不是保留两位小数。
你假设x=123.456
x*100+0.5=12345.6+0.5=12346.1//这里加0.5是为了4舌5入
然后强制转化成int为12346
再除以100
结果为123.46
这样就做到了保留到小数点后两位,并将第3位四舍五入
    A+
热门评论