问题
填空题
设有定义:float x=123.4567;,则执行以下语句后的输出结果是 [6] 。 printf("%f\n"(int)(x*100+0.5)/100.1;
答案
参考答案:123.460000
解析:评析:输出语句的表达式:(int)(x*100+0.5)/100.0是指先运算表达式中的“x*100+0.5”,然后将其结果强制转换为int型,即:(int)(l23.4567*100+O.5)=(int)12346.17=12346,接下来进行”/100.0”的运算即:12346/100.0=123.46,原因是除运算是双目运算,当—边是整型数,—边是实型数时,系统自动将整型转换为实型数,然后进行运算,又因为最后的的输出格式是float类型的实数,所以结果为123.460000。