问题
单项选择题
以下程序运行后的输出结果是
#include<stdio.h>
main( )
int x=1,y=2,z=3;
it(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语言规定:在jf的嵌套结构中,else子句总是和最近的一个if语句配对。由于x>y为假,程序流程跳过内嵌的if语句,退出外层if结构,顺序执行打印x++。由于x++是后置运算,所以先输出1,x再自加1。