在C语言中,switch
语句是一种多分支选择结构,它根据表达式的值来执行相应的代码块。switch
语句的语法如下:
十载的克州网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网整合营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整克州建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“克州网站设计”,“克州网站推广”以来,每个客户项目都认真落实执行。
switch (表达式) { case 常量1: // 当表达式的值等于常量1时执行的代码 break; case 常量2: // 当表达式的值等于常量2时执行的代码 break; // ... default: // 当表达式的值不等于任何常量时执行的代码 }
下面将详细介绍如何使用switch
语句。
1、定义表达式和常量
我们需要定义一个表达式和一个或多个常量,表达式可以是整型、字符型或枚举类型,常量是与表达式类型相同的值,我们可以定义一个整数变量num
和一个字符变量ch
:
int num = 2; char ch = 'a';
2、编写switch
语句
接下来,我们使用switch
关键字编写一个switch
语句,将表达式放在括号内,然后列出所有可能的常量及其对应的代码块,每个代码块以case
关键字开头,后跟常量值和一个冒号,在每个代码块的末尾,我们需要使用break
关键字跳出switch
语句,以防止执行下一个代码块,如果没有匹配的常量,可以使用default
关键字编写一个默认代码块。
switch (num) { case 1: printf("数字是1 "); break; case 2: printf("数字是2 "); break; case 3: printf("数字是3 "); break; default: printf("数字不是1、2、3 "); }
在这个例子中,我们将num
的值与三个常量进行比较,如果num
的值等于某个常量,程序将输出相应的信息并结束,如果num
的值不等于任何常量,程序将输出"数字不是1、2、3"。
3、使用字符型变量和枚举类型
除了整型变量外,我们还可以使用字符型变量和枚举类型作为switch
语句的表达式,对于字符型变量,我们可以将其转换为整数后再进行比较,对于枚举类型,可以直接使用其值进行比较。
enum Weekday { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday }; Weekday today = Monday; switch (today) { case Monday: printf("今天是星期一 "); break; case Tuesday: printf("今天是星期二 "); break; // ... default: printf("今天不是工作日 "); }
在这个例子中,我们将枚举类型Weekday
的值作为switch
语句的表达式,程序将根据枚举值输出相应的信息。
4、嵌套switch
语句和空的代码块(fallthrough)
在某些情况下,我们可能需要在一个switch
语句中使用另一个switch
语句,或者让程序继续执行而不执行任何操作,这时,我们可以使用嵌套的switch
语句和空的代码块(fallthrough)。
int num = 3; int level = 2; switch (level) { case 1: switch (num) { case 1: printf("一级考试,第一题"); break; case 2: printf("一级考试,第二题"); break; // ... default: printf("未知题目"); } break; case 2: switch (num) { case 1: case 2: case 3: // fallthrough表示不执行break,继续执行下一个case的代码块 printf("二级考试,题目%d", num); break; // 如果需要结束当前switch语句,可以在这里添加break语句 default: printf("未知题目"); } break; default: printf("未知级别"); }
在这个例子中,我们使用了嵌套的switch
语句来处理不同级别的考试,通过使用空的代码块(没有写任何代码),我们可以让程序继续执行下一个case
的代码块,需要注意的是,空的代码块可能会导致逻辑错误,因此在使用时应谨慎,如果需要结束当前switch
语句,可以在最后一个空的代码块后面添加一个带有break
关键字的代码块。
文章题目:c语言中switch怎么用
转载注明:http://www.gawzjz.com/qtweb2/news0/11350.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联