c语言switch语句中怎样在嵌套switch

发布网友 发布时间:2022-04-21 09:46

我来回答

5个回答

热心网友 时间:2023-10-17 23:19

就是在第一个switch的某个case语句或default语句中进行嵌套。

例如:

int a=4,i=0;

switch(a)

{

case 1: 

{

printf("abc");

break;

    }

case 2: 

{

printf("abcd");

        break;

}

case 3: 

{

i++;

switch(i)  // switch语句中嵌套switch语句

{

case 1: printf("fff");break;

case 2: printf("111");break;

default: printf("222");

}

break;

}

default :

printf("error");

}

扩展资料:

注意事项

1、witch后面括号里的结果必须是×××值。因为这个值是要和case语句后面直接跟的常量表达式进行匹配的。

2、break在switch case语句中主要是将语句划分成不同的部分,方便匹配后跳出switch语句。

3、default的位置并不是固定的。为了使程序正常运行,它放在case之间的时候,后面必须跟上break语句;如果放在最后,可以跟break语句,也可以不跟。

4、不是所有case语句最后都跟有break。我们起初见到的代码里,基本上每个case最后都跟有break,它是指当switch后面括号里的表达式与哪一个case后面的常亮表达式匹配时,直接进入这个case,执行完里面的语句后,遇到break,直接退出整个switch case语句。

实际当中,我们还会碰到类似于上述代码的情况(不是所有case语句最后都跟有break),这个时候,程序总是从匹配的case执行,直到遇到break或者程序走到最后的default结束,退出switch case语句。 

热心网友 时间:2023-10-17 23:19

switch嵌套语句的一般形式:

switch(表达式)

case常量1:语句1

case常量2:switch(表达式)

{case常量1:语句1

case常量2:语句2

......

case常量n:语句n

default:语句n+1

}

.....

case常量n:语句n

default:语句n+1

扩展资料

在使用switch语句注意事项:

1、在case后的各常量表达式的值不能相同,否则会出现错误。

2、在case后,允许有多个语句,可以不用{}括起来。

3、各case和default子句的先后顺序可以变动,而不会影响程序执行结果。

4、default子句可以省略不用。

热心网友 时间:2023-10-17 23:20

switch中嵌套switch就是在第一个switch的某个case语句或default语句中进行嵌套。


下面以switch嵌套在case语句中进行举例说明。

int a=4,i=0;
switch(a)
{
    case 1: 
    {
        printf("abc");
        break;
    }
    case 2: 
    {
        printf("abcd");
        break;
    }
    case 3: 
    {
        i++;
        switch(i)  // switch语句中嵌套switch语句
        {
            case 1: printf("fff");break;
            case 2: printf("111");break;
            default: printf("222");
        }
        break;
    }
    default :
        printf("error");
}

热心网友 时间:2023-10-17 23:20

#include <stdio.h>

int main()
{
 char select[5] = {0};
 int flag = 0;
 printf("please select:");
 gets(select);
 switch(select[0])
 {
 case '0':
 {
  printf("Please select:");
  scanf("%d", &flag);
  getchar();
  switch(flag)
  {
  case 1:
   printf("flag = 1.\n");
   break;
  case 2:
   printf("flag = 2.\n");
   break;
  default:
   break;
  }
 }
  printf("select[0] = '0'.\n");
  break;
 case '1':
  break;
 default:
  break;
 }
 return 0;
}

热心网友 时间:2023-10-17 23:21

举个例子吧:
main()
{
int a=1,b=2,c=3;
switch(a〉0)
{
case1:
switch(b〈0)
{
case0:printf("1");
case1:printf("2");
}
case0:
switch(c==3)
{
case0:printf("3");
case1:printf("4");
default:printf("5");
}
default:printf("6");
}
printf("7");
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com