|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
int main ( )
{
int a = 15, b = 21, m = 0;
switch (a % 3)
{
case 0: m++; break; 这个break是连下一个switch也跳出了吗,为什么不执行下面那个switch语句了
case 1:m++;
switch(b % 2)
{
default: m++;
case 0:m++; break;
}
}
printf("%d\n", m);
}
本帖最后由 rt3 于 2020-12-8 13:57 编辑
第2个 switch 是 在 执行 第1个 switch 语句的 case 1段时才会调用。
为了便于理解,对你的代码添加了一些缩进,以及几个用于调试的printf语句,并变更了a的值
- #include <stdio.h>
- int main ( )
- {
- int a = 16, b = 21, m = 0;
- switch(a%3){
- case 0:
- m++;
- break; //这个break是连下一个switch也跳出了吗,为什么不执行下面那个switch语句了
- case 1:
- m++;
- switch(b%2){
- default:
- m++;
- case 0:
- printf("switch 2 case 0.\n");
- m++;
- break;
- }
- printf("switch 1 case 1.\n");
- }
- printf("%d\n", m);
- }
复制代码
|
|