《switch语句的应用》PPT课件

《switch语句的应用》PPT课件

ID:45096627

大小:308.50 KB

页数:40页

时间:2019-11-09

《switch语句的应用》PPT课件_第1页
《switch语句的应用》PPT课件_第2页
《switch语句的应用》PPT课件_第3页
《switch语句的应用》PPT课件_第4页
《switch语句的应用》PPT课件_第5页
资源描述:

《《switch语句的应用》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第七章switch语句的应用7.1switch语句:switch语句是一条多分支选择语句.在实际应用中,要在多种情况中选择一种情况,执行某一部分语句。当然可以使用嵌套的if,ifelseif语句来处理,但其分支过多,程序冗长,难读,不够灵巧。switch语句是C语言中处理多路选择问题的一种更直观和有效的手段.在测试某个表达式是否与一组常量表达式中的某一值相配时,switch语句显得更为方便.一般形式如下:switch(表达式){case常量表达式1:语句1[break];case常量表达式2:语句2[break];…case常量表达式

2、n:语句n[break];[default:语句n+1]}说明:(1).关于表达式:表达式可以是整型、字符型等表达式。有一个确定的值(不是逻辑值).(2).关于常量表达式1~n:只起到一个标号的作用,根据表达式的值来判断,找到一个相匹配的入口处,程序往下执行。各个case后的常量表达式的值必须互不相同.(3).每个case分支可有多条语句,可不用花括号{}。switch(表达式){case常量表达式1:语句1[break];case常量表达式2:语句2[break];…case常量表达式n:语句n[break];[default:语句n+1

3、]}(4).各个case语句只是一个入口标号,并不确定执行的终止点.(5).一般在各个case语句最后应该加一break语句,可使程序流程跳出Switch结构.否则会从入口处一直向下执行.(6).各个case和default出现的先后次序,并不影响执行结果.default可以没有.(7).多个case可共用一组执行语句.例如为了统计一段文字中的数字,字母及分隔符的个数, 可用下列程序段实现:switch(ch){case‘0’: case‘1’:…. case‘8’:case‘9’:digit++;break;case‘’:case‘

4、’:case‘t’:white++;break;default:character++;break;}这里有一个空格.表达式后都有一冒号”:”.无break语句表达式==常量表达式1?语句序列1真(非0)break假(0)有break语句无break语句表达式=常量表达式2?语句序列2break有break语句真(非0)假(0)表达式=常量表达式n?语句序列nbreak真(非0)假(0)无break语句语句序列n+1有break语句switch(表达式)说明:switch语句不等同于if语句:1.switch只能进行值的相等性的检查.

5、2.if语句不但可以进行相等性的检查,还可以计算关系表达式或逻辑表达式,进行逻辑判断的真假.只进行值的相等性的检查,不是逻辑判断!例7.1键盘输入0-6之间的整数,分别代表每周的星期日、星期一、…、星期六#includeintmain(){intday;printf("请输入星期的数字编号(0-6):");scanf("%d",&day);….Ch7_7_1.c….switch(day){case0:printf("星期日");break;case1:printf("星期一");break;case2:printf

6、("星期二");break;case3:printf("星期三");break;case4:printf("星期四");break;case5:printf("星期五");break;case6:printf("星期六");break;default:printf("输入有误,请输入0-6之间的数字!");}return0;}每个case分支可有多条语句,可不用花括号{},也可以用。表达式有一个确定的值(不是逻辑值).例7.2求执行下列程序段后k的值#includeintmain(){charc=‘

7、2’;intk=1;switch(c+1-'0'){case2:k+=1;case2+1:k+=2;case4:k+=3;}printf("k=%d",k);return0;}一般在各个case语句最后应该加一break语句,可使程序流程跳出Switch结构.否则会从入口处一直向下执行.‘0‘的ASCII值为48.Ch7_7_2.c例7.3执行下列程序,当分别输入A、B、C、E时,求K的值.charc;intk=2;scanf(“%c”,&c);switch(c-’A’){case0:k++;case1:K+=2;break;defau

8、lt:k*=k;case4:k*=3;}printf(“k=%d”,k);Ch7_7_3.c例7.4输入一字符,如果是Y,N或y,n,则分别执行一输出语句,如果是其他字母则执行另

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

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

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