选择题 有以下程序
#include
main()
{ int x=l,y=0;
  if(!x) y++;
  else if (x==0)  
       if(x) y+=2;  
       else y+=3;
   printf(“%d\n”,y);
}
程序运行后的输出结果是(     )。
【正确答案】 D
【答案解析】在ifelse语句中else总是与离它最近的if配对。本题目中x为1,因此“!x”为0,所以执行elseif语句中的内容,判断“x==0”是否成立,因为x为1,所以条件不成立,因此elseif内部的“if...else”语句不再执行,所以y的值还是初始值0。