以下程序的运行结果是( )。 main() (int a=2,b=7,c=5; switch(a>0) {case 1:switch(b<0) {case 1:switch(");break; case 2:pri

admin2011-06-10  27

问题 以下程序的运行结果是(       )。
   main()
   (int a=2,b=7,c=5;
   switch(a>0)
  {case 1:switch(b<0)
{case 1:switch(");break;
   case 2:printf("!");break;
}
  case 0:switch(c==5)
{case 0:printf("*");break;
   case 1:printf("#");break;
  case 2:printf("$");break;
  }
  default:printf ("&");
   }
  printf("\n");
   }

选项

答案#&

解析 刚开始时,switch后面的表达式a>0为真(1),与case1匹配,然后执行case1后面的switch语句,表达式b<0值为0,没有与其匹配的语句,返回外层,因为外层没有break语句,顺序执行case 0后面的switch语句,表达式“c==5”值为1,与其后面的case1匹配,因此输出#,遇到break返回外层,又因为外层没有break语句,顺序执行default后的语句,输出&。
转载请注明原文地址:https://kaotiyun.com/show/GRPp777K
0

最新回复(0)