第四章Switch分支语句.ppt

第四章Switch分支语句.ppt

ID:48147224

大小:391.50 KB

页数:20页

时间:2020-01-17

第四章Switch分支语句.ppt_第1页
第四章Switch分支语句.ppt_第2页
第四章Switch分支语句.ppt_第3页
第四章Switch分支语句.ppt_第4页
第四章Switch分支语句.ppt_第5页
资源描述:

《第四章Switch分支语句.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C语言分支结构-switch颜明生学习目标与课程安排目标:理解掌握C语言switch分支结构。课程安排背景知识回顾switch分支结构介绍注意事项实例讲解典型错误总结1.1if语句回顾1.if(表达式)语句2.if(表达式)语句1else语句23.if(表达式1)语句1elseif(表达式2)语句2elseif(表达式3)语句3……elseif(表达式m)语句melse语句n1.2if-elseif多分支选择结构if(表达式)语句1 elseif(表达式)语句2elseif(表达式)语句3 else…先判断表达式1的值

2、一直这样做下去表达式1真语句1假表达式2表达式3语句4语句3语句2真真假假直到得出最后结果流程图如左:为0就执行下一个判断非0就执行下面的语句缺点:if与else的配对容易混淆2.1Switch多分支结构switch(表达式) {case常量1:语句块1;break; case常量2:语句块2;break;……………. case常量n:语句块n;break; default:语句块n+1; }关键字:switch关键字:break关键字:case关键字:default2.2执行过程计算表达式的值,判断与case后哪个常

3、量相等。若与常量i的值相等,则从语句块i开始执行,直到遇到第一条break语句结束,或执行完语句块n+1结束。若与任何一个常量的值都不相等,直接执行语句块n+1。3实例讲解例1写一个程序完成下列功能:输入:一个整数score输出:当score<60输出D当60<=score<70输出C当70<=score<90输出B当90<=score输出A分析:score为整型数,利用两个整数相除,结果自动取整的特性,score和score/10有如下对应关系:3实例讲解ScoreScore/1090~10010,970~897,8

4、60~69660~05,4,3,2,1,0程序#include main(){intscore; scanf("%d",&score); switch(score/10) {case10: case9:printf("%d:A",score);break; case8:case7:printf("%d:B",score);break; case6:printf("%d:C",score);break; default:printf("%d:D",score); } }不同情况执行相同的

5、操作4.典型错误千万不要遗漏必要的break!如:switch(score){case5:printf(“verygood”);case4:printf(“good”);case3:printf(“pass”);case2:printf(“fail”);default:printf(“error”);}当输入5时,将输出:verygoodgoodpassfailerror5注意事项Switch后跟整形,Case后面接常量,Default是可选项,常量值须互不同。只能判断值相等,遇到break才中断。Break常常很必要

6、,冒号小心别漏掉。5注意事项第一、Switch后跟整形。switch(表达式)中,表达式值只能是整型和字符类型。包括:int,char,unsignedint,short,unsignedchar,枚举类型(enum)。实型(浮点型)数就不行,如:floata=0.123;switch(a)//错误!a不是整型或字符类型变量。{....}第二、Case后面接常量。case之后可以是直接的常量数值,如例中的1、2、3、4,也可以是一个使用常量计算式,如2+2等,但不能是变量或带有变量的表达式,如a*2等。不能是实型数,如

7、4.1,或2.0/2。switch(formWay){case2-1://正确...casea-2://错误...case2.0://错误...}另外,在case与常量值之后,需要一个冒号,请注意不要疏忽。第三、遇到break才中断,Break常常很必要。break使得程序在执行完选中的分支后,可以跳出整个switch语句;如果没有这个break,程序将在继续前进到下一分支,直到遇到后面的break或者switch完成。第四、Default是可选项。default是可选中,前面我们已经说过它的用处,及如果没有defau

8、lt,程序在找不到匹配的case分支后,将在switch语句范围内不做什么事,直接完成switch。第五、常量值须互不同。每一个case的常量值必须互不相同,否则就会出现同一个值有两种或多种执行方案。第六、只能判断值相等。switch并不能代替所有的if..else...语句。这一点你应该知道了,因为前面已说过,它在对变量做判断时

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。