- 1、本文档共48页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章选择结构程序设计解析
教学内容: 6.1 if 语句 6.2 switch 语句 6.3 选择结构程序举例 教学要求: 1.掌握if语句的语法和使用方法。 2.掌握switch语句的语法和使用方法。 3.掌握分支语句的嵌套使用方法。 例6.4 输入任意三个数,按从小到大的顺序排序输出。 main() { int a, b, c, temp; printf(Please input three numbers:); scanf(%d,%d,%d,a,b,c); if (ab) { temp=a; a=b; b=temp;} if (bc) { temp=b; b=c; c=temp;} if (ab) { temp=a; a=b; b=temp;} printf(Three numbers after sorted:); printf(%d,%d,%d\n,a,b,c); } 3. 第三种形式 例6.6 输入任意三个整数,求三个数中的最大值。 main() { int n1,n2,n3,max; scanf(%d,%d,%d,n1,n2,n3); if (n1n2) max=n1; else max=n2; if (n3max) max=n3; printf(The three numbers are:”); printf(“%d,%d,%d\n,n1,n2,n3); printf(max=%d\n,max); } 程序运行情况如下: Please input three nbers:11,22,18↙ The three nbers are:11,22,18 max=22 本例中的第1个if语句,可优化为如下不带else子句的形式: max=n1; if (n2max) max=n2; 优化的基本思想是: 首先取一个数预置为max(最大值),然后再用max依次与其余的数逐个比较,如果发现有比max大的,就用它给max重新赋值,比较完所有的数后,max中的数就是最大值。 5. if 语句与条件运算符 如果在条件语句中,只执行单个的赋值语句时, 常可使用条件表达式来实现。不但使程序简洁,也提高了运行效率。 例 6.7 输入任意三个整数,求三个数中的最大值。 main() { int n1,n2,n3,max; scanf(%d,%d,%d,n1,n2,n3); max= n1n2 ? n1: n2; max= (n3max) ? n3: max ; printf(max=%d\n,max); } 下列C程序运行后输出的结果是什么? #include “stdio.h” main() {int m=5; if(m++5) printf(“%d\n”,m); else printf(“%d\n”,m--); } 例 6.8 输入任意三个整数,求三个数中的最大值。 main() { int n1,n2,n3 ; scanf(%d,%d,%d,n1,n2,n3); if (n1n2) if (n1n3) printf(max=%d\n, n1); else printf(max=%d\n, n3); else if (n2 n3) printf(max=%d\n, n2); else printf(max=%d\n, n3); } 2.执行过程 (1)当switch后面“表达式”的值,与某个case后面的“常量表达式”的值相同时,就执行该case后面的语句组; (2)如果没有任何一个case后面的“常量表达式”的值,与“表达式”的值匹配,则执行default 后面的语句,然后,再执行switch语句的下一条。 case后面的常量表达式仅起语句标号作用,并不进行条件判断。系统一旦找到入口标号,就从此标号开始执行,不再进行标号判断; 3.switch 语句使用说明 (1) switch、case均为关键字,不得省略; switch的语句体必须用{ }括起来。 (2) switch后的表达式可以为任何类型,但通常为整型
文档评论(0)