有以下程序 main( ) { int k=5,n=0; do { switch(k) { case 1: case 3:n+=1;k--;break; default:n=0;k--;

admin2010-09-05  29

问题 有以下程序
   main( )
   { int k=5,n=0;
     do
     { switch(k)
     { case 1: case 3:n+=1;k--;break;
       default:n=0;k--;
       case 2: case 4:n+=2;k--;break;
     }
     printf("%d",n);
     }while(k>0&&n<5);
   }
   程序运行后的输出结果是

选项 A、235
B、0235
C、02356
D、2356

答案A

解析 因为变量的初始值分别为“k=5,n=0”,所以程序第一次进入循环时,执行default语句,这时k=4,执行"case 4:”这个分支,结果是 “n=2,k=3”,打印出2;然后程序进行第二次循环,这时“n=2,k=3”,执行"case 3:”这个分支,结果是“n=3,k=2”,打印出3;程序进行第三次循环,这时“n=3,k=2”,执行“case 2:case 4:”这两个分支,结果是“n=5,k=1”,打印出5,这时因为n=5不满足n<5的循环条件,因此退出循环,程序运行结束,故输出结果为235。
转载请注明原文地址:https://jikaoti.com/ti/z1I0FFFM
0

相关试题推荐
随机试题
最新回复(0)