有以下程序 #include main() { int x=1,y=2,z=3; if(x>y) if(y<z) printf("%d",++z); elseprintf("%d",++y); printf("%d\n", x++ ); } 程序

admin2015-07-31  29

问题 有以下程序
#include
main()
{  int   x=1,y=2,z=3;
if(x>y)
if(y<z)  printf("%d",++z);
elseprintf("%d",++y);
printf("%d\n", x++ );
}
程序的运行结果是

选项 A、1
B、41
C、2
D、331

答案A

解析 else总是与离他最近的上面的if配对?所以第一个if语句的判断条件不成立,不再执行第二个if语句和与第二个if语句配对的else语句,而是直接执行打印x++的操作,打印x的值1以后在加一。
转载请注明原文地址:https://jikaoti.com/ti/0Oi0FFFM
0

最新回复(0)