欢迎来到天天文库
浏览记录
ID:37199452
大小:182.00 KB
页数:22页
时间:2019-05-19
《C语言基础 四、 选择结构程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、四、选择结构程序设计本章概述:本章主要考查选择结构设计方法,其中包括关系运算符、逻辑运算符、条件运算符以及最常见的if条件判断语句。选择结构程序属于3种基本的程序设计方法之一。通过对历年试卷内容的分析,本章考核内容约占6%,属于一般考查内容。年份2007.42007.92008.42008.9分值7267大纲要求:1.用if语句实现选择结构。 2.用switch语句实现多分支选择结构。 3.选择结构的嵌套。重点难点:1.逻辑运算符的短路原理2.if语句的嵌套3.switch语句的使用考点1考点分析:关系运算符及其优先次序关系运算是逻辑运算中比较简单的一种,
2、“关系运算”就是“比较运算”。将两个值进行比较,判断是否符合或满足给定的条件。如果符合或满足给定的条件,则称关系运算的结果为“真”;如果不符合或不满足给定的条件,则称关系运算的结果为“假”。C语言提供6种关系运算符:【特别提醒】:关系运算符是双目运算符,由两个字符组成的关系运算符之间不能有空格。关于优先次序和结合性:(1)前4种关系运算符的优先级别相同,后两种也相同。前4种高于后两种。(2)关系运算符的优先级低于算术运算符,高于赋值运算符。(3)结合性是自左向右。l试题解析1.已有定义:charc;,程序前面已在命令行中包含ctype.h文件,不能用于判断c中
3、的字符是否为大写字母的表达式是()[2007年9月第23题]A.isupper(c) B.’A’<=c<=’Z’C.’A’<=c&&c<=’Z’ D.c<=(‘2’-32)&&(‘a’-32)<=c解析:答案A是利用库函数,C和D分别用关系运算符来判断是否是大小写,B不能判断,应为’A’<=c的结果只能是0或1,永远小于’Z’,答案永远为真,不能判断是否为大小写。答案为B。考点2关系表达式用关系运算符将两个表达式(算术、关系、逻辑、赋值表达式等)连接起来所构成的表达式,称为关系表达式。关系表达
4、式的值是一个逻辑值,即“真”或“假”。C语言没有逻辑型数据,以1代表“真”,以0代表“假”。【特别提醒】:当关系运算符的两边的类型不一致时,系统自动会进行类型转换。l试题解析1.已知字母A的ASCⅡ代码值为65,若变量kk为char型,以下不能正确判断出kk中的值为大写字母的表达式是()[2008年4月第17题]A.kk>='A'&&kk<='Z'B.!(kk>='A'‖kk<='Z')C.(kk+32)>='a'&&(kk+32)<='z'D.isalpha(kk)&&(kk<91)解析:答案A和C都是利用关系运算符来判断是否是大小写,B中如果满足了kk>=
5、'A'就不会判断后面的kk<='Z'(短路),所以不能判断,D利用函数。答案为B。逻辑运算符及其优先考点3级C语言提供三种逻辑运算符:(1)&&逻辑与(相当日常生活中:而且,并且,只在两条件同时成立时为“真”)(2)
6、
7、逻辑或(相当日常生活中:或,两个条件只要有一个成立时即为“真”)(3)!逻辑非(条件为真,运算后为假,条件为假,运算后为真)aba&&ba
8、
9、b真真真真真假假真假真假真假假假假a!a真假假真【特别提醒】:“&&”,“
10、
11、”是双目运算符,“!”是单目运算符。关于优先次序和结合性:(1)!(非)-&&(与)-
12、
13、(或),“!”为三者中最高。(2)逻
14、辑运算符中的&&和
15、
16、低于关系运算符,!高于算术运算符。(3)结合性是自左向右。l试题解析1.当变量c的值不为2、4、6时,值也为“真”的表达式是()[2008年4月第18题]A.(c==2)‖(c==4)‖(c==6)B.(c>=2&&c<=6)‖(c!=3)‖(c!=5)C.(c>=2&&c<=6)&&!(c%2)D.(c>=2&&c<=6)&&(c%2!=1)解析:逻辑与&&所有的表达式都为真,才为真。,逻辑或
17、
18、只要有一个为真值即为真。答案为B。考点4逻辑表达式用逻辑运算符(逻辑与、逻辑或、逻辑非)将关系表达式或逻辑量连接起来构成逻辑表达式。逻辑表达式
19、的值是一个逻辑值“真”或“假”。逻辑运算结果,以1代表“真”,以0代表“假”,但在判断一个量是否为“真”时,以0代表“假”,以非0代表“真”(即认为一个非0的数值是“真”)。【特别提醒】:在数学中关系式是可以使用的,但是在C语言中不可以用,必须用&&。由&&和
20、
21、组成的逻辑表达式,在某种情况下可以发生“短路现象”:(1),只有当x为真时,才需要判别y的值,只有x和y都为真时,才要判别z的值;只要x为假,y和z不必判别,整个表达式的值就为0。(2),只要x的值为真,就不必判别y和z的值,整个表达式的值为1,只有x的值为假,才需要判别y的值,只有x和y的值同时为假
22、,才需要判别z的值。l试题解析1.已有
此文档下载收益归作者所有