有以下程序 #include <stdio.h> main( ) { int a, b; for (a=0; a<3; a++) { scanf("%d", &b); switch(b) { defaul

admin2021-06-15  19

问题 有以下程序
#include   <stdio.h>
main( )
{  int  a, b;
   for (a=0; a<3; a++)  
   {  scanf("%d", &b);
      switch(b)
      {  default:  printf("%d,",b+1);  continue;
         case  1:  printf("%d,", b+1);
         case  2:  printf("%d,", b+1);  continue;
      }
   }
}
执行时输入:1  2  3<回车>,则输出结果是

选项 A、2,2,3,4,4,4,
B、2,3,4,
C、2,2,3,4,
D、2,3,3,4,5,6,

答案C

解析 continue语句的作用是跳过循环体中剩余的语句而强行执行下一次循环。switch…case如果没有break会导致多个分支重叠。因此,输入1,2,3,则1执行case  1:  printf("%d,", b+1);case 2: printf("%d,", b+1); continue;后结束。2则执行case 2:  printf("%d,", b+1); continue;3则执行default:  printf("%d,",b+1); continue;得到的结果是2,2,3,4。故答案为C选项
转载请注明原文地址:https://kaotiyun.com/show/Eutp777K
0

最新回复(0)