C语言-09switch-case多分支开路语句.ppt

C语言程序设计,第九课 switch-case 多分支开路语句,9.1 switch-case 语句,在编写应用程序时,在必须从很多可以的选项中选择一组指令的地方,可以使用 if-else 链。在将一个整数表达式的值与特定的值进行比较时,可以使用 switch-case 语句来替代 if-else 链。switch-case 语句的常规格式如下 switch整型表达式 case 常量1 语句系列1; break; case 常量2 语句系列2; break; . . case 常量n 语句系列n; break; default 语句 n1; ,9.2 switch-case 常规书写格式,switch整型表达式 case 常量1 语句系列1; break; case 常量2 语句系列2; break; . . case 常量n 语句系列n; break; default 语句 n1; ,复合语句开始,switch和复合语句结束,以冒号结束,以冒号结束,以冒号结束,以冒号结束,缩进,再次缩进缩进,9.3 switch-case 执行流程图,在 switch-case 语句中有4个新的关键字switch、case、default 和 break,下面分别给予介绍。 关键字 switch 标识 swithc-case 语句的开始。该关键字后的圆括号内的整型表达式将得到赋值,然后将该表达式的结果与复合语句内包含的各种可以的值依次进行比较。 swith 语句中的表达式必须被指定为整数结果值,否则将会出现编译错误。在 switch-case 语句内,关键字 case 被用来标识或标记与 switch 表达式的值进行比较的每个值。 switch 表达式的值与这些 case 值依次进行比较,直到找到匹配的值。当找到匹配值时,执行将从紧跟着该匹配值的语句开始,因此,如下所示,表达式的值决定了在 switch 语句中执行实际开始的位置,9.4 switch 和 case 关键字,在一个 switch 语句中可以采用任意顺序来包含任意数目的 case 标签。但是,如果表达式的值与所有 case 值都不匹配,那么将不执行任何语句,除非遇到关键字 default。关键字 default 是可选的,并且它与 if-else 链中的最后一个 else 的作用相同。,9.5 default 关键字,switch整型表达式 case 常量1 . . break; case 常量2 . . break; . . case 常量n . break; default . switch 语句结束,若表达式等于常量1,则从这里开始,若表达式等于常量2,则从这里开始,若表达式等于常量n,则从这里开始,若所有常量都不匹配,则从这里开始,模拟ATM机菜单系统程序片段(完整程序请参考 ex09_01.c) 执行各个分支 switch key case 1 printf“您执行的是修改密码操作n“; case 2 printf“您执行的是转帐操作n“; case 3 printf“您执行的是存款操作n“; case 4 printf“您执行的是取款操作n“; case 5 printf“您执行的查询余额操作n“; case 6 printf“系统退出n“; default printf“您选择了一个错误的操作n“; ,一旦通过 switch 语句确定了入口点,所有进一步的 case 赋值都会被忽略,并且,除非遇到关键字 break,否则执行将一直持续到复合语句结束,这就是采用 break 语句的原因,它将标识特定 case 的结束,并使得立即退出 switch 语句,因此,就像关键字 case 标识复合语句中可以存在的起始点一样,break 语句将确定终止点。如果省略了 break 语句,那么匹配的 case 值后的所有情况(包括 default 情况)都会被执行。,10.6 break 关键字,switch整型表达式 case 常量表达式1 . . break; case 常量表达式2 . . break; . . case 常量表达式n . break; default . switch 语句结束,若表达式等于常量1,则从这里开始,若表达式等于常量2,则从这里开始,若表达式等于常量n,则从这里开始,若所有常量都不匹配,则从这里开始,跳出,跳出,跳出,模拟ATM机菜单系统程序片段(完整程序请参考 ex09_02.c) 执行各个分支 switch key case 1 printf“您执行的是修改密码操作n“; break; 跳出switch语句 case 2 printf“您执行的是转帐操作n“; break; 跳出switch语句 case 3 printf“您执行的是存款操作n“; break; 跳出switch语句 case 4 printf“您执行的是取款操作n“; break; 跳出switch语句 case 5 printf“您执行的查询余额操作n“; break; 跳出switch语句 case 6 printf“系统退出n“; break; 跳出switch语句 default printf“您选择了一个错误的操作n“; ,/* 执行下列程序ts09_01.c,输入为 1 时运行结果是_, 输入为 2 时运行结果是_。*/ include void main int k; scanf“d“, ,在编写 switch 语句时,可以使用多个 case 值来引用同一组语句;default标签是可选的。,9.7 多个 case 值引用同一组语句,程序片段输入月份,输出相应的天数(if-else链) 完整程序请参考 ex09_03.c 求相应月份的天数 ifmonth1 month3 month5 month7 month8 month10 month12 days 31; else ifmonth2 days 28; else ifmonth4 month6 month9 month11 days 30; else days 0;,程序片段输入月份,输出相应的天数(switch 结构) 完整程序请参考 ex09_04.c 求相应月份的天数 switchmonth case 1 case 3 case 5 case 7 case 8 case 10 case 12 days 31; break; case 2 days 28; break; case 4 case 6 case 9 case 11 days 31; break; default days 0; ,例子如表所示是学生的等级成绩情况。 表 学生的等级成绩 编写一个C程序,接受学生的分数,将分数成绩转换成相应的等级成绩,并显示等级成绩。,9.8 switch 的应用,/* 程序片段将学生分数成绩转换成相应的等级成绩 完全程序请参考 ex09_05.c */ switchscore/10 score/10对百分制成绩进行折算 case 10 case 9 printf“A 等n“; break; case 8 printf“B 等n“; break; case 7 printf“C 等n“; break; case 6 printf“D 等n“; break; default printf“E 等n“; ,/* 程序片段将学生分数成绩转换成相应的等级成绩 完全程序请参考 ex09_06.c */ if score100 score0 printf“输入成绩错误n“; else switch score/10 score/10对百分制成绩进行折算 case 10 case 9 printf“A 等n“; break; case 8 printf“B 等n“; break; case 7 printf“C 等n“; break; case 6 printf“D 等n“; break; default printf“A 等n“; ,例子根据下表计算一下销售人员的月收入 表 销售人员的月收入 编写一个C程序,接受销售人员的月销售额,计算其月收入,作业,

c语言switch case ppt,C语言-09switch-case多分支开路语句.ppt相关推荐

  1. c语言switch逻辑用语,C语言习题(前五章)参考答案.doc

    C语言习题(前五章)参考答案.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3. ...

  2. c语言switch问候语,C语言switch语句用法详解

    switch语句的通常形式: switch(整形表达式) { case 常量表达式1:  语句1; case 常量表达式2:  语句2; - case 常量表达式n:  语句n; default:  ...

  3. c语言switch循环语序,C语言初学者常见错误统计.doc

    C语言初学者常见错误统计.doc C语言初学者常见错误统计 被偏爱程度触犯人次错误类型 ★★★★17使用未定义的变量★★★★16变量值溢出★★★9一行C语句后面漏掉:★★★8语序颠倒★★★6混淆字符常 ...

  4. C语言switch如何退出,C语言萌新,想问问如何让下面那个switch函数输出的结果继续...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include int main() { char sex,sports,diet; float faHeight,moHeight, ...

  5. Go语言-switch case | switch中判断多个值、interface conversion: interface {} is float64, not int

    文章目录 Go语言-switch case 背景 switch case Golang中switch的特殊用法--fallthrough go语言switch中判断多个值 Type Switch,判断 ...

  6. c语言switch case解释,C语言switch case语句详解

    C语言虽然没有限制 if else 能够处理的分支数量,但当分支过多时,用 if else 处理会不太方便,而且容易出现 if else 配对出错的情况.例如,输入一个整数,输出该整数对应的星期几的英 ...

  7. C语言switch case语句详解

    当分支比较少的时候我们使用if else语句解决,当分支比较多的时候,我们要使用switch case语句解决,针对分支的复杂性选择合适的程序解决. 当分支过多时,用 if else 处理会不太方便, ...

  8. c语言 switch case 字符串,c语言switch case用法详解

    c语言switchcase用法详解 switch是"开关"的意思,它也是一种"选择"语句,但它的用法非常简单.switch是多分支选择语句.说得通俗点,多分支就 ...

  9. C语言多case自动跳出,C语言switch中case后跟随break语句

    1.case后面的常量表达式实际上只起语句标号作用,而不起条件判断作用,即"只是开始执行处的入口标号". 因此,一旦与switch后面圆括号中表达式的值匹配,就从此标号处开始执行: ...

最新文章

  1. Flask基础-(模板)
  2. Linux Kernel TCP/IP Stack — L1 Layer — NIC bonding
  3. 第一章:1.1.4信号运算
  4. Eclipse Validating减少不必要的验证
  5. Activiti 工作流会签开发设计思路
  6. Spark之RDD理论篇
  7. (71)FPGA面试题-使用不同的代码实现2-4译码器?使用case语句
  8. 【kafka】kafka 2.3 版本的kafka topic 分区扩容
  9. IP65防水步进电机可以在什么环境使用?
  10. Drools workbench kie-server部署和简单使用(全流程
  11. SFR算法详解(二)——斜棱法
  12. cad如何生成kml文件_如何制作KML文件?
  13. WeUI首页、文档和下载 - 专为微信设计的 UI 库 - 开源中国社区
  14. asp.net oracle连接数据库,通过ASP.NET连接Oracle数据库实例教程
  15. 国密算法c语言实现,求 国密sm2 算法 第四部分 公钥加密算法 c语言实现代码,该怎么解决...
  16. svn怎么比对文件_svn导出文件进行比较
  17. 用matlab数学建模报告,Matlab数学建模实验报告.doc
  18. 计算机主机重装主机过程,电脑怎么重装系统步骤 超简单的电脑重装系统教程...
  19. exp oracle 904,EXP-00008: ORACLE error 904 encountered的解决方法
  20. 网络***的基础教程

热门文章

  1. apache mysql 密码_apache2 – 无法为mysql“root”用户设置密码
  2. python3.6中内置函数变化
  3. LeetCode 368. 最大整除子集(动态规划)
  4. 3D中obj文件操作
  5. TensorFlow精进之路(十一):反向传播BP
  6. 单元测试 : Googel test测试框架
  7. 动态连接数据库及动态建立ODBC,DSN(ZT)
  8. 莫烦Tensorflow教程(1~14)(转)
  9. python之路 -- 并发编程之线程
  10. Atom打开报错:Cannot load the system dictionary for zh-CN