试题]lh-04-多分支结构和循环结构程序设计.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《试题]lh-04-多分支结构和循环结构程序设计.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 试题 lh 04 分支 结构 循环 程序设计
- 资源描述:
-
1、西安电子科技大学 -Xidian University 1主要内容 多分支选择结构 switch语句 循环结构 while语句西安电子科技大学 -Xidian University 2多分支的选择结构多分支的选择结构西安电子科技大学 -Xidian University 3多分支的选择结构根据同一个表达式的各种取值分情况处理根据同一个表达式的各种取值分情况处理表达式表达式e?语句序列语句序列1值值1语句序列语句序列2值值2语句序列语句序列n+1其他值其他值语句序列语句序列n值值n.西安电子科技大学 -Xidian University 4switch语句switch语句用于表示多分支的选语句用
2、于表示多分支的选择结构,其基本形式为:择结构,其基本形式为:switch(表达式表达式e)case 常量表达式常量表达式1:语句序列语句序列1;break;case 常量表达式常量表达式2:语句序列语句序列2;break;.case 常量表达式:常量表达式:语句序列;语句序列;break;default:语句序列语句序列+1;switch语句的含义是:若表达式语句的含义是:若表达式e的值等于某个常量表达式的值等于某个常量表达式i的值,则执行相应的语句序的值,则执行相应的语句序列列i;否则,执行;否则,执行default的语的语句序列。句序列。什么是常量表达式?什么是常量表达式?西安电子科技大学
3、 -Xidian University 5switch语句的使用举例 问题:输入一个百分制的成绩,将其转换为等级分制输出。规则如下:规则如下:90100:A8089:B7079:C6069:D低于低于60:F西安电子科技大学 -Xidian University 6成绩转换1(用if语句)#include main()int score;printf(input a score(0100):);scanf(%d,&score);if(score=90)printf(grade=An);else if(score=80)printf(grade=Bn);else if(score=70)prin
4、tf(grade=Cn);else if(score=60)printf(grade=Dn);else printf(grade=Fn);西安电子科技大学 -Xidian University 7成绩转换2#include main()int score;/*score用于表示百分制分数用于表示百分制分数*/printf(input score(0100):);scanf(%d,&score);switch(score/10)case 10:printf(grade=An);break;case 9:printf(grade=An);break;case 8:printf(grade=Bn);
5、break;case 7:printf(grade=Cn);break;case 6:printf(grade=Dn);break;case 5:printf(grade=Fn);break;case 4:printf(grade=Fn);break;case 3:printf(grade=Fn);break;case 2:printf(grade=Fn);break;case 1:printf(grade=Fn);break;case 0:printf(grade=Fn);break;没有这些没有这些break,该,该程序的执行结果是什程序的执行结果是什么?么?西安电子科技大学 -Xidia
6、n University 8缺少break的switch语句示例 switch(n)case 1:printf(grade=An);case 2:printf(grade=Bn);case 3:printf(grade=Cn);case 4:printf(grade=Dn);case 5:printf(grade=Fn);n=1?YesNo输出输出grade=A输出输出grade=Bn=2?YesNo输出输出grade=C输出输出grade=D输出输出grade=Fn=3?YesNon=4?YesNon=5?YesNo西安电子科技大学 -Xidian University 9switch中的b
7、reak 语句 break 语句的目的 终止 switch 语句的执行 如果没有 break 语句,则程序会从指定的 case 分支开始,并在该分支结束后继续执行下去 除非 switch 语句结束,后面的其他 case 分支或 default 分支中的语句都会得到执行 原因:case 子句中的常数表达式仅起到语句标号的作用,不是分支之间的分隔标记 省略 break 语句的场合 允许多个分支执行同样的代码西安电子科技大学 -Xidian University 10成绩转换3#include main()int score,grade;printf(input a score(0100):);sc
8、anf(%d,&score);grade=score/10;switch(grade)case 10:case 9:printf(grade=An);break;case 8:printf(grade=Bn);break;case 7:printf(grade=Cn);break;西安电子科技大学 -Xidian University 11成绩转换3(续)case 6:printf(grade=Dn);break;case 5:case 4:case 3:case 2:case 1:case 0:printf(grade=Fn);break;default:printf(Invalid inp
9、ut!n);西安电子科技大学 -Xidian University 12成绩转换4(if和switch结合使用)#include main()int score,n;printf(input a score(0100):);scanf(%d,&score);if(score=90)n=1;else if(score=80)n=2;else if(score=70)n=3;else if(score=60)n=4;else n=5;switch(n)case 1:printf(grade=An);break;case 2:printf(grade =Bn);break;case 3:printf
10、(grade=Cn);break;case 4:printf(grade=Dn);break;case 5:printf(grade=Fn);break;/*end of switch*/*end of main*/西安电子科技大学 -Xidian University 13成绩转换5(if和switch结合使用)#include main()int score,n;printf(input a score(0100):);scanf(%d,&score);if(score 60)n=0;else n=(score 60)/10+1;switch(n)case 5:case 4:printf(
11、grade =An);break;case 3:printf(grade=Bn);break;case 2:printf(grade=Cn);break;case 1:printf(grade=Dn);break;case 0:printf(grade=Fn);break;/*end of switch*/*end of main*/至此,我们已经了解了至此,我们已经了解了if语句和语句和switch语句的含义和用法,语句的含义和用法,那么,程序中使用那么,程序中使用if语句的地方能否用语句的地方能否用switch语句替换呢?语句替换呢?西安电子科技大学 -Xidian University
展开阅读全文