选择题
有以下程序:
#include <stdio.h>
#include <math.h>
main()
{
int a=1,b=4,c=2;
double x=10.5,y=4.0,z;
z=(a+b)/c+sqrt(y)*1.2/c+x;
printf('%f\n',z);
}
程序运行后的输出结果是______。
A、
13.700000
B、
14.000000
C、
15.400000
D、
14.900000
【正确答案】
A
【答案解析】
如果一个运算符两边的运算数类型不同,要先将其转换为相同的类型,即较低类型转换为较高类型,然后再参加运算。程序执行过程为:a+b=5,5/2=2(int类型),sqrt(y)=2.0(double类型),2.0*1.2/2=1.2(double类型),z=2.0(由int类型自动转换成double类型)+1.2+10.5=13.7。选项A正确。
提交答案
关闭