问题 单项选择题

下面程序段的输出结果是( )。
#include<stdio.h>
main()
float x=1.236547;
printf("%f\n",(int)(x*1000+0.5)/(float)1000);

A.1.237000

B.输出格式说明与输出项不匹配,输出无定值

C.1.236000

D.1.24

答案

参考答案:A

解析: 本题中,(int)(x*1000+0.5)的结果为1237,(float)1000是将1000强制转换成float类型;整个表达式(int)(x*1000+0.5)/(float)1000的结果为1.237000,再以实数(6位小数)形式输出。

单项选择题
问答题