柠檬试题库
search
首页
计算机
公务员
驾照
关于
share
有以下程序: #include
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=%d\n", a, b); } 程序的运行结果是( )。
A.a=2,b=2
B.a=2,b=1
C.a=1,b=1
D.a=1,b=0
热度🔥959
参考答案:B
解析:
【解析】case常量表达式只是起语句标号作用,并不是该处进行条件判断。在执行switch语句时,根据switch的表达式,找到与之匹配的case语句,就从此case子句执行下去,不在进行判断,直到碰到break或函数结束为止。所以执行内层switch(y)时只执行了a++,此时a的值为1。然后执行外层case 2语句的a++;b++;a为2,b为1。所以结果为B)。
复制题目向AI提问
content_copy
content_copy
扫码免费计算机二级刷题
2025年计算机等级考试题库
推荐
在概念模型中,属性用于描述事物的特征或性质。关于属性有下列说法: Ⅰ.一个实体集中的属性名要唯一 Ⅱ.属性一般用名词或名词短语命名 Ⅲ.一个属性的值可以取自不同的域 Ⅳ.实体集的标识属性能够唯一识别实体集中每一个实体 Ⅴ.标识属性的取值不能重复,但可以为空 以上说法正确的是()。
ARM处理器如果R1=0x00000080,则指令MOV R0,R1, LSL#2执行后,R0的值为( )。
某二叉树的中序序列为BDCA,后序序列为DCBA,则前序序列为( )。
下列叙述中正确的是( )。
标签
二级C语言
case
switch
执行
语句