Chapt05_选择结构.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 选择结构程序设计 5.1 关系运算符和关系表达式 “关系运算”实际上就是比较运算。 将两个值进行比较,判断比较的结果是否符合给定的条件。 用关系运算符将两个表达式连接起来的式子称为关系表达式. 5.2 逻辑运算符和逻辑表达式 5.2.2 逻辑表达式 1. 由系统给出的逻辑运算结果不是0 就是1,不可能是其他数值。而在逻辑表达式中作为参与逻辑运算的运算对象(操作数)可以是0(“假”)或任何非0的数值(按“真”对待)。 如 53 0 || 84 - ! 0 在一个表达式中不同位置上出现数值,应区分哪些是作为数值运算或关系运算的对象,哪些是作为逻辑运算的对象。 2. 逻辑运算符两侧的运算对象不但可以是0 和 1,或者0 和非0 的整数,也可以是任何类型的数据,可以是字符型、实型或指针类型等。系统最终以0和非 0 来判定它们属于“真”或“假”。 例如,c d 其值为1。因为c和d的ASCII码值都不为0。 3. 在逻辑表达式的求解中,并不是所有的逻辑运算符都被执行,而只是在必须执行下 一个逻辑运算符才能求出表达式的解时,才执行该运算符。 5.3 if 语句 if 语句用来判定给定的条件是否满足,根据判定的结果来决定执行何种操作。 5.3.1 if 语句的三种形式 1. if (表达式) 语句; 例 5.1 输入两个实数,按从小到大的次序输出 。 main() { float a,b,t; printf(Input a and b:); scanf(%f,%f,a,b); if (ab) { t=a; a=b; b=t; } printf(%f,%f\n,a,b); } main() { int x,y; scanf(%d,x); if (x0) y=-1; else if (x==0) y=0; else y=1; printf(x=%d, y=%d\n,x,y); } 5.4 switch 语句 switch 语句是多分支选择语句。 if 语句只有两个分支,当遇到多分支选择时,可以用嵌套 if 语句来处理,但是由于需要嵌套的 if 语句层次多,因此程序的可读性降低。C语言中的 switch 语句可直接处理多分支选择,它的一般形式是: 5.5 程序举例 本章要点 课 堂 练 习 3. 阅读程序,写出程序或程序段的运行结果。 (1) void main ( ) { int a=10, b=4, c=3; if(ab) a=b ; if(ac) a=c ; printf(“%d, %d, %d\n”, a, b, c) ; } (2)void main ( ) { int x=100, a=10, b=20, ok1=5, ok2=0 ; if(ab) if(b! =15) if(!ok1) x=1; else if(ok2) x=10; else x=-1; printf(“%d\n”, x); } (3) int k, a=1, b=2; k=(a++==b) ? 2 : 3; printf(“%d,%d,%d\n”, a, b, k); 4. 选择题: (1) 假定所有变量均已正确定义,下列程序段运行后y的值是( )。 int a=0, y=10; if(a=0) y- - ;else if(a0) y++; else y+=y ; A. 20 B. 11 C. 9 D. 0 (2) 假定所有变量均已正确定义,下列程序段运行后x的值是( )。 a=b=c=0,x=35; if(!a) x- -; else if(b) ;if(c) x=3;else x=4; A.34 B.4 C.35 D.3 (3)下列各语句中,能够且仅输出整型变量a、b中最大值的是( )。 A. if(ab) printf(”%d\n”,a); printf(”%d\n”,b); B. printf(”%d\n”,b); if(ab) printf(”%d\n”,a); C. if(ab) printf(”%d\n”,a); else printf(”%d\n”,b); D. if(ab) printf(”%d\n”,a); printf(”%d\n”,b); 例5.6 求 a

文档评论(0)

wst34008 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档