第五章:switch选择结构
第五章:switch选择结构
本章目标
- 掌握swtich选择结构
- 选择结构总结
本章内容
1、为什么要使用switch
案例分析:
案例:班级进行期末测试,
第一名奖励笔记本
第二名奖励硬盘
第三名奖励U盘如何解决:
如何解决?
方案1:多重if,结构比较复杂
方案2:switch,只能处理等值判断
2、switch语法
1 | switch (表达式) { |
使用 switch 语句时必须遵守以下规则:
- switch 语句中表达式的值必须是一个整型、字符、字符串或者枚举类型;
- 在一个 switch 语句中可以有任意数量的 case 语句,每个 case 关键字后面要跟一个与表达式比较的值和一个冒号;
- case 关键字后面的值必须与 switch 中表达式的值具有相同的数据类型,并且必须是一个常量(也可以理解为是一个固定的值,不会随程序的运行发生改变);
- 当表达式的值等于 case 中的值时,就会执行 case 后面的语句,在遇到 break 关键字时停止;
- 当遇到 break 关键字时,switch 语句会停止运行,并跳转到 switch 语句以外的下一行代码继续运行;
- 并不是每一个 case 语句后面都需要包含 break 关键字,如果 case 语句为空(case 语句后面没有要执行的代码),则可以不包含 break 关键字,这时程序会继续执行后续的 case 语句,直至遇到 break 关键字为止;
- C# 不允许从一个 case 语句连续执行到下一个 case 语句,因此如果 case 语句中包含要执行的语句,就必须包含 break 关键字或其他跳转语句;
- 一个 switch 语句的末尾可以有一个可选的 default(默认选项),当所有 case 语句都不能与表达式相匹配时则会执行 default 部分中的代码,而且 default 中的 break 语句可以省略;
- C# 不支持从一个 case 语句跳转到另一个 case 语句,如果要从一个 case 语句跳转到另一个 case 语句的话,可以使用 goto 语句
3、执行流程图
4、案例
案例:班级进行期末测试,
第一名奖励笔记本
第二名奖励硬盘
第三名奖励U盘
代码如下:
1 | int mc=1; |
5、选择结构总结
if选择结构
- 基本if选择结构: 处理单一或组合条件的情况
- If-else选择结构:处理简单的条件分支情况
- 多重if选择结构:处理复杂的条件分支情况
- 嵌套if选择结构:用于较为复杂的流程控制
switch选择结构
多重分支并且条件判断是等值判断的情况
if和switch比较
- 相同点:
- 都是用来处理分支条件的结构,都属于选择结构
- 不同点:
- 多重if选择结构,可以处理多条件判断,也可以处理等值判断
- switch选择结构,通常处理等值判断,代码可阅读性好
- 相同点:
课后作业
- 题目:在控制台输入1-7的数字,输出相应星期数。
比如说输入”1”,打印出“星期一”
输入1-7之外的数字,打印出“输入错误” - 张三为他的手机设定了自动拨号
按1:拨爸爸的号
按2:拨妈妈的号
按3:拨爷爷的号
按4:拨奶奶的号
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 广创科技教育-Blog!
评论