问题
单项选择题
有下列程序:
#include<stdio.h>
main()
int x=1,y=2,z=3;
if(x>y)
if(y<z)printf("%d",++z);
else printf("%d",++y);
printf("%d\n",x++);
程序的运行结果是( )。
A.331
B.41
C.2
D.1
答案
参考答案:D
解析: C语言中规定,else与离它最近的if相匹配。
x=1,y=2,z=3,所以第一个if的条件(x>y)不成立,直接执行“printf("%d\n",x+1);”语句,输出x的值1,再把x加1。