发布网友 发布时间:2022-04-24 08:57
共5个回答
热心网友 时间:2022-06-18 06:54
当case后面没有break语句的时候它是执行完本条语句后接着执行下一句,直到遇见break语句或者结尾
于是当m=0时它执行了case0,然后继续执行,当执行到case3时,遇见了break语句跳出switch
当m=3时直接执行case 3,然后跳出switch于是只能输出 Condition 3.
所以答案只有abc
热心网友 时间:2022-06-18 06:54
A:输出为Condition 0 Condition 1 Condition 2 Condition 3
B:输出为Condition 1 Condition 2 Condition 3
C:输出为Condition 2 Condition 3
D:输出为Condition 3
E和F:输出为Other Condition
switch语句是让m从相应的case开始执行,直到遇到break跳出
热心网友 时间:2022-06-18 06:54
这个问题和break有关系。
比如 m=0,case 0 就输出“condition 0”
但是case 0 后面没有breark, 于是继续执行输出“condition 1”
知道遇到一个break或者遍历所有的case为才终止
想要得到 输出“condition 2”,必须为case 2 加上break
热心网友 时间:2022-06-18 06:55
这是由于break 的缘故,想明白这个问题就要先明白break,得用法
break 用于结束当前结构(推出(switch)),switch 他是从上向下执行的,如果你有100个case 且没有break 那么它会一条条的都给你执行出来
直到 遇到break 为止。
A B C 数 0 1 2 case 后面没有break 就向下运行;
而D 数 3 输出完Condition 3后执行break;
于是就跳出switch.当然不会有Condition 2的输出拉。
热心网友 时间:2022-06-18 06:56
D:将在输出"Condition 3"后跳出,也就是不会输出"Condition 2"了。
case的只要满足条件就会往下走,直到它碰到break语句跳出。
所以ABC,都是满足条件的。