A-A+

以下程序的运行结果是【 】。 include <stdio.h> main() { int

2022-08-12 18:22:26 问答库 阅读 197 次

问题详情

以下程序的运行结果是【 】。 include <stdio.h> main() { int x=1,y=0,a=0,b=0; switch(x) { case 1: switch(y) { case 0:a++; break; case 1: b++; break; } case 2:a++; b++;break; case 3:a++;b++; } printf("a=%d,b=%dn",a,b); }


请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:a=2b=1
本题考查了switch结构的内容。C语言中,程序执行完一个case标号的内容后,如果没有break语句,控制结构会转移到下一个case继续执行,因为case常量表达式只是起语句标号作用,并不是在该处进行条件判断。本题程序在执行完内部switch结构后,继续执行了外部switch结构的case2分支,最后a和b的值分别为2和1。

考点:程序