有以下程序 #include main( ) {int a=1,b=0 if(!a)b++; else if(a==0)if(a)b+=2 else b+=3 printf(”%d\n”,b); } 程序运行后的输出结果

admin2013-02-23  29

问题 有以下程序
  #include
  main( )
  {int a=1,b=0
  if(!a)b++;
  else if(a==0)if(a)b+=2
  else b+=3
  printf(”%d\n”,b);
  }
  程序运行后的输出结果是(    )。

选项 A、0
B、1
C、2
D、3

答案A

解析 a=1所以!a表达式为假,不执行b++。又a=1所以a=0为假,所以跳过语句后面的if和else语句(因为else和最近的if语句组成一条复合语句),直接输出,所以结果为0。
转载请注明原文地址:https://jikaoti.com/ti/GCB0FFFM
0

最新回复(0)