C语言 设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面2位,并将第3位四舍五入
12、设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面2位,并将第3位四舍五入的是__B__。
A)x=x*100+0.5/100.0     B)x=(x*100+0.5)/100.0
C)x=(int)(x*100+0.5)/100.0  D)x=(x/100+0.5)*100.0
我要分析过程,谢谢大虾
最佳答案
答案 C
(int)(x*100+0.5)  把float型数据(x*100+0.5)强转成int,这样就可以去掉小数点,+0.5就是为了四舍五入
例如x=4.256,则(4.256*100+0.5)=426.1   ,则(int)426.1/100.0=4.26 

你选的B是错误的,没有强转成int,所以426.1/100=4.261,并没有达到题目要求

1/10无法用二进制精确表示,所以这样了