Switch case 语句怎么使用

 我来答
问明6E
高粉答主

2019-04-11 · 每个回答都超有意思的
知道答主
回答量:279
采纳率:100%
帮助的人:13万
展开全部

switch case用法详解:

1、switch是“开关”的意思,它也是一种“选择”语句,但它的用法非常简单。

2、switch是多分支选择语句。说得通俗点,多分支就是多个if。

从功能上说,switch语句和if语句完全可以相互取代。但从编程的角度,它们又各有各的特点,所以至今为止也不能说谁可以完全取代谁。

3、当嵌套的if比较少时(三个以内),用if编写程序会比较简洁。但是当选择的分支比较多时,嵌套的if语句层数就会很多,导致程序冗长,可读性下降。因此C语言提供switch语句来处理多分支选择。所以if和switch可以说是分工明确的。在很多大型的项目中,多分支选择的情况经常会遇到,所以switch语句用得还是比较多的。

4、switch的一般形式如下:

switch(表达式)

{

case常量表达式1:语句1

case常量表达式2:语句2

case常量表达式n:语句n

default:语句n+1

}


扩展资料:

说明:

1)、switch后面括号内的“表达式”必须是整数类型。也就是说可以是int型变量、char型变量,也可以直接是整数或字符常量,哪怕是负数都可以。但绝对不可以是实数,float型变量、double型变量、小数常量通通不行,全部都是语法错误。

2)、switch下的case和default必须用一对大括号{}括起来。

3)、当switch后面括号内“表达式”的值与某个case后面的“常量表达式”的值相等时,就执行此case后面的语句。执行完一个case后面的语句后,流程控制转移到下一个case继续执行。如果你只想执行这一个case语句,不想执行其他case,那么就需要在这个case语句后面加上break,跳出switch语句。

再重申一下:switch是“选择”语句,不是“循环”语句。很多新手看到break就以为是循环语句,因为break一般给我们的印象都是跳出“循环”,但break还有一个用法,就是跳出switch。

4)、若所有的case中的常量表达式的值都没有与switch后面括号内“表达式”的值相等的,就执行default后面的语句,default是“默认”的意思。如果default是最后一条语句的话,那么其后就可以不加break,因为既然已经是最后一句了,则执行完后自然就退出switch了。

5)、每个case后面“常量表达式”的值必须互不相同,否则就会出现互相矛盾的现象,而且这样写造成语法错误。

6)、“case常量表达式”只是起语句标号的作用,并不是在该处进行判断。在执行switch语句时,根据switch后面表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断。

7)、各个case和default的出现次序不影响执行结果。但从阅读的角度最好是按字母或数字的顺序写。

8)、当然你也可以不要default语句,就跟if…else最后不要else语句一样。但最好是加上,后面可以什么都不写。这样可以避免别人误以为你忘了进行default处理,而且可以提醒别人switch到此结束了。

写在枫叶上的故事
推荐于2020-04-19 · TA获得超过2.6万个赞
知道答主
回答量:164
采纳率:0%
帮助的人:2.6万
展开全部

switch的用法是判断case后面的表达式和switch后面的表达式是否相匹配,一旦case匹配,就会顺序执行后面的程序代码,而不管后面的case是否匹配,直到遇见break。

Switch case 语句表达式为:

switch
{
case 常量1: 语句体1;
case 常量2: 语句体2;
case 常量3: 语句体3;
case 常量4: 语句体4;
....
default : 语句体;
}

当常量表达式所表达的量与其中一个case语句中的常量相符时,就执行此case语句后面的语句,并依次下去执行后面所有case语句中的语句,除非遇到break;语句跳出switch语句为止。如果常量表达式的量与所有case语句的常量都不相符,就执行default语句中的语句并跳出switch语句。

扩展资料

switch ...  case语句的特点:

1、把要讨论的表达式与case后面的常量进行比较,发现匹配项之后,从该位置入口,做它下面的所有语句。

2、case 后面的常量不能重复

3、可以在每一个case语句的后面加上break语句,这样就能保证只做与之相匹配的那一项。

4、break实质:在switch ...case语句里面最先遇到那一个break就从该位置结束该语句

5、可以在最后一个case的下面加上default语句表示如果找不到匹配项时,就做default对应的项。

6、default并不是一定要有,如果前面遇到break,default就不执行。如果没有遇到break,就一定会执行。

7、case后面的语句可以不执行,表示与下一个case是或的关系。

参考资料来源:百度百科——switch

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
J_ENG
推荐于2019-10-28 · TA获得超过9777个赞
知道答主
回答量:81
采纳率:0%
帮助的人:4.6万
展开全部

1、Switch用在编程中,如C语言中它经常跟Case一起使用,是一个判断选择代码。其功能就是控制业务流程流转的。直线翻译:switch语句,即“切换”语句;case即“情况”。

2、switch语句的语法如下(switch,case和default是关键字):

switch ( 常量表达式 )

{

case 常量1 :语句;

case 常量2 :语句;

case 常量3 :语句;

...

case 常量n:语句;

default :语句;

}

扩展资料:

具体特点说明:

1、switch 后面括号内的“表达式”必须是整数类型。也就是说可以是 int 型变量、char 型变量,也可以直接是整数或字符常量,哪怕是负数都可以。但绝对不可以是实数,float 型变量、double 型变量、小数常量通通不行,全部都是语法错误。

2、switch 下的 case 和 default 必须用一对大括号{}括起来。当switch后面括号内“表达式”的值与某个case后面的“常量表达式”的值相等时,就执行此case后面的语句。

3、执行完一个case后面的语句后,流程控制转移到下一个case继续执行。如果你只想执行这一个case语句,不想执行其他case,那么就需要在这个case语句后面加上break,跳出switch语句。

4、再重申一下:switch是“选择”语句,不是“循环”语句。很多新手看到break就以为是循环语句,因为break一般给我们的印象都是跳出“循环”,但break还有一个用法,就是跳出switch。

5、若所有的 case 中的常量表达式的值都没有与 switch 后面括号内“表达式”的值相等的,就执行 default 后面的语句,default 是“默认”的意思。如果 default 是最后一条语句的话,那么其后就可以不加 break,因为既然已经是最后一句了,则执行完后自然就退出 switch 了。

6、每个 case 后面“常量表达式”的值必须互不相同,否则就会出现互相矛盾的现象,而且这样写造成语法错误。

7、“case常量表达式”只是起语句标号的作用,并不是在该处进行判断。在执行 switch 语句时,根据 switch 后面表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断。

8、各个 case 和 default 的出现次序不影响执行结果。但从阅读的角度最好是按字母或数字的顺序写。

9、当然你也可以不要 default 语句,就跟 if…else 最后不要 else 语句一样。但最好是加上,后面可以什么都不写。这样可以避免别人误以为你忘了进行 default 处理,而且可以提醒别人 switch 到此结束了。

扩展资料:

百度百科-switch

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gggongqu
推荐于2019-08-18 · TA获得超过5778个赞
知道答主
回答量:73
采纳率:0%
帮助的人:1.9万
展开全部

switch的一般形式如下:

switch (表达式)
{
case 常量表达式1:    语句1
case 常量表达式2:    语句2

case 常量表达式n:    语句n
default:        语句n+1
}

说明:


1) switch 后面括号内的“表达式”必须是整数类型。也就是说可以是 int 型变量、char 型变量,也可以直接是整数或字符常量,哪怕是负数都可以。但绝对不可以是实数,float 型变量、double 型变量、小数常量通通不行,全部都是语法错误。



2) switch 下的 case 和 default 必须用一对大括号{}括起来。



3) 当switch后面括号内“表达式”的值与某个case后面的“常量表达式”的值相等时,就执行此case后面的语句。执行完一个case后面的语句后,流程控制转移到下一个case继续执行。如果你只想执行这一个case语句,不想执行其他case,那么就需要在这个case语句后面加上break,跳出switch语句。



再重申一下:switch是“选择”语句,不是“循环”语句。很多新手看到break就以为是循环语句,因为break一般给我们的印象都是跳出“循环”,但break还有一个用法,就是跳出switch。



4) 若所有的 case 中的常量表达式的值都没有与 switch 后面括号内“表达式”的值相等的,就执行 default 后面的语句,default 是“默认”的意思。如果 default 是最后一条语句的话,那么其后就可以不加 break,因为既然已经是最后一句了,则执行完后自然就退出 switch 了。



5) 每个 case 后面“常量表达式”的值必须互不相同,否则就会出现互相矛盾的现象,而且这样写造成语法错误。

6) “case常量表达式”只是起语句标号的作用,并不是在该处进行判断。在执行 switch 语句时,根据 switch 后面表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断。

7) 各个 case 和 default 的出现次序不影响执行结果。但从阅读的角度最好是按字母或数字的顺序写。



8) 当然你也可以不要 default 语句,就跟 if…else 最后不要 else 语句一样。但最好是加上,后面可以什么都不写。这样可以避免别人误以为你忘了进行 default 处理,而且可以提醒别人 switch 到此结束了。



但是需要注意的是,default 后面可以什么都不写,但是后面的冒号和分号千万不能省略,省略了就是语法错误。很多新手在这个地方很容易出错,要么忘了分号,要么忘了冒号,所以要注意!
下面给大家写一个程序,通过这个程序来看一下。

扩展资料

switch 是“开关”的意思,它也是一种“选择”语句,但它的用法非常简单。switch 是多分支选择语句。说得通俗点,多分支就是多个 if。



从功能上说,switch 语句和 if 语句完全可以相互取代。但从编程的角度,它们又各有各的特点,所以至今为止也不能说谁可以完全取代谁。



当嵌套的 if 比较少时(三个以内),用 if 编写程序会比较简洁。但是当选择的分支比较多时,嵌套的 if 语句层数就会很多,导致程序冗长,可读性下降。因此C语言提供 switch 语句来处理多分支选择。所以 if 和 switch 可以说是分工明确的。在很多大型的项目中,多分支选择的情况经常会遇到,所以 switch 语句用得还是比较多的。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
丿MarsHan
推荐于2019-09-07 · TA获得超过4921个赞
知道答主
回答量:79
采纳率:0%
帮助的人:43.3万
展开全部

switch用在编程中,如C语言中它经常跟Case一起使用,是一个判断选择代码。其功能就是控制业务流程流转的。

直线翻译:switch语句,即“切换”语句;case即“情况”。

switch语句的语法如下(switch,case和default是关键字):

switch ( 常量表达式 )

{

case 常量1 :语句;

case 常量2 :语句;

case 常量3 :语句;

...

case 常量n:语句;

default :语句;

}

代码如下图:

扩展资料

switch case 语句用来判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。支持的数据类型包括:

1、基本数据类型:byte, short, char, int;

2、包装数据类型:Byte, Short, Character, Integer;

3、枚举类型:Enum;

4、字符串类型:String。

参考资料:

百度百科——switch语法

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(11)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式