问题
单项选择题
有以下程序程序运行后的输出结果是【 】。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。