有以下程序:  #include <stdio.h>  main()  {   int x=1,x=2,z=3;   if(X>y)if(y<z)   printf("%d",++z);   else   printf("%d",++y)

admin2022-04-01  30

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

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

答案A

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

最新回复(0)