A-A+
有以下程序:main(){ int k=5 n=0;do{ switch(k){ case
问题详情
有以下程序:
main()
{ int k=5,n=0;
do
{ switch(k)
{ case 1:
case 3:n+=l;k--;break;
defalut:n=0;k--;
case 2:
case 4:n+=2;k--;break:
}
printf("%d",n);
}while(k>0&&n<5);
}
程序运行后的输出结果是()。
A.A.235
B.0235
C.02356
D.2356请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:B
本题考查分支语句用法加个句号因为变量的初始值分别为k=5、n=0,所以程序第1次进入循环时,执行default语句,输出0,k减1;这时n=0、k=4,程序进行第2次循环,执行case4:这个分支,结果是n=2、k=3,打印出2;这时n=2、k=3,break跳出,程序进行第3次循环,执行case3:这个分支,结果是n=3、k=2,打印出3;这时n一3、k2,b¨ak跳出,程序然后进行第4次循环,执行case2:case4:这个分支,结果是n=5、k=1,打印出5,break跳出,这时因为n=5不满足n<5的循环条件,因此循环结束。