以下程序运行后的输出结果是【 】。 main() { int i,m=0,n=0,k=0; for(i=9;i<=11;i++) switch(i/10) { case 0:m++;n++;break;

admin2009-04-15  27

问题 以下程序运行后的输出结果是【  】。
   main()
   {  int i,m=0,n=0,k=0;
      for(i=9;i<=11;i++)
      switch(i/10)
   {  case 0:m++;n++;break;
      case 10:n++;break;
      default:k++;n++;
   }
   printf("%d%d%d\n",m,n,k);
   }

选项

答案1 3 2

解析 主函数中用了一个for循环,for循环里嵌套了一个switch语句,for循环了三次,当i=9时,i/10=0,执行switch语句中case0分支,m和n的值各加1,变为1和1,然后遇到break语句,退出switch语句;当i=10,i/10=1,执行switch语句中default分支,使 k和n的值各加1变为1和2,退出switch语句;当i=11时,i/10=1,执行switch语句中 default分支,k和n的值各加1变为2和3,退出switch语句,循环结束。故该空格处应该填1  3  2。
转载请注明原文地址:https://kaotiyun.com/show/QOXp777K
0

最新回复(0)