变量x为float型,且已经赋值。
x=(int)(x*100+0.5)/100.0
为什么上面这个式子能使x保留到小数点后两位,并对第三位进行四舍五入处理?
变量x为float型,且已经赋值。
x=(int)(x*100+0.5)/100.0
为什么上面这个式子能使x保留到小数点后两位,并对第三位进行四舍五入处理?
x*100就是把float 数字扩大100倍 +0.5就是四舍五入的处理方法
比如 0.005扩大100倍就是 0.5 +0.5 = 1.0 转化为 int 就是 1
而 0.001扩大相同的处理就是 0.6但是转化为 int 的时候 还是 0 所以 +0.5 是四舍五入的处理方法
(int)仅仅只是把(x*100+0.5)转化为整形 也就是舍去第三位以后的数字
再除以100.0 则变回float类型
希望你能明白