对于四舍五入及小数点问题不太懂
t=(h*1000+5)/10;
答案中这条语句可以对数字四舍五入,但是没太看懂额。。。
return (float)t/100; /*除以100,保留2位小数*/ 也没太看懂。。。
就是将小数保留位及其后一位转换为整数,加上一个5如果保留位后面的数大于或等于5就会进位,反之就不进位,然后再除以10,将保留位后一位去掉,然后重新除以1000,变为原来的小数,进行返回
比如保留2位小数四舍五入 那么我们就需要对第三位小数进行判断 如果是大于等于5 那么我们就需要进位 否则就舍去
所以我们先扩大1000倍+5 就是对第三位小数进行判断 如果是大于等于5 此时我们这个数十位上就会进位 然后除以10 就把最后一位去掉了 最后再除以100 缩小100倍 就四舍五入了