计算机c语言中保留两位数时为什么要先乘以100再除以100

如题所述

上面那位解释了位数的问题。扩大1000倍是为了把原数的三位小数都转化为整数的后三位。保留两位有效数字要看三位小数。加5是为了四舍五入。比如说原数为1.2345 【1】*1000再转化为长整型-->1234【2】+5再除以10-->1239/10-->123(看清楚没?把4舍去了,原若第三位小数大于等于5,加上5就能进位。这样实现四舍五入)【3】再转化为double,除以100,便得到了两位有效数字。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-12
乘100并强制转换为整数 小数小后第3为开始就都没有了如1.2345 * 100 --> 123.45 --> 123除 100.0 (注意是100.0 不是 整数100 否则结果为1)123 / 100.0 = 1.23是不是把 45去掉了
第2个回答  2013-09-12
保留两位小数还是?