1 / 13
文档名称:

第4章 选择结构.doc

格式:doc   大小:66KB   页数:13页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第4章 选择结构.doc

上传人:glfsnxh 2021/2/25 文件大小:66 KB

下载得到文件列表

第4章 选择结构.doc

文档介绍

文档介绍:第四章 选择结构
考核知识点
if语句的实现选择结构
用switch语句实现多分支选择结构
选择结构的嵌套
goto语句和语句标号的使用
重要考点提示
选择语句的简单操作
if语句的嵌套操作
switch语句的使用
关系运算符和关系表达式
关系运算是逻辑运算中较简单的一种。所谓“关系运算”其实就是“比较运算”,对两个值进行比较,判断其比较后的结果是否符合指定,从而执行不同的程序段。
关系运算符及其优先次序
C语言提供了6种关系运算符,见表4-1
表4-1 关系运算符
关系运算符
名称
<
小于
<=
小于或等于
>
大于
>=
大于或等于
==
等于
!=
不等于
小提示:由两个字符组成的运算符之间不可以加空格,关系运算符都是双目运算符。
结合性:自左向右。
优先次序:前4种关系运算符的优先级别相同,后两种优先级相同,且前4种的优先级高于后两种;关系运算符的优先级低于算术运算符,高于赋值运算符。
关系表达式
由关系运算符连接而成的表达式(可以是算术表达式、关系表达式或其他表达式)称为关系表达式。
当关系运算符两边值的类型不一致时,若一边是整型,一边是实型,系统将自动把整型数转化为实型数,然后进行比较。
逻辑运算符和逻辑表达式

C语言提供了3种逻辑运算符,见表4-2
表4-2 逻辑运算符
符号
名称
&&
逻辑与
||
逻辑或

软软非
“&&”和“||”是双目运算符,要求要有两个操作数,而“!”是单目运算符,只要求一个操作数即可,以上逻辑运算符的优先级是:
“!”级别最高,其次是“&&”,“||”级别最低,逻辑运算符中的“&&”和“||”低于关系运算符,而“!”高于关系运算符。

逻辑表达式是由逻辑运算符和运算对象组成,其中,参与逻辑运算的对象可以是一个具体的值,还可以是C语言中任意合法的表达式,逻辑表达式的运算结果为1。若a=5,则!a的值为0。因为a的值为5,被认做是“真”,对它进行“非”运算后,结果为“假”,,各种逻辑运算所得到的结果是不同的。见表4-3
表4-3 逻辑运算表
A
B
!A
!B
A&&B
A||B
1
1
0
0
1
1
1
0
0
1
0
1
0
1
1
0
0
1
0
0
1
1
0
0
值得注意的是:在数学中,关系式0<x<10是可以使用的,表示x的值应在大于0且小于10的范围内。但在C语言中却不能用0<x<10这样一个关系表达式来表示上述逻辑关系,即关系运算符不能连用,但可以借助逻辑运算符来辅助运算,正确的表示方法是0<x&&x<10,在C语言中,由&&或||组成的逻辑表达式,在某些特定情况下会产生“短路”现象。如
x&&y&&z,只有当x为真时,才需要判别y的值;只有当x和y都为真时,才需要去判别z的值;只要x为假就不必判别y和z,整个表达式的值为0.。
x||y||z,只要z的值为真,就不必差别y和z的值,整表达式的值为1.。只有x的值为假时才需要差别y的值,只有x和y的值同时为假才需要判别z的值,因此,如有逻辑表达式(m=x>y)&&(n=c>d),其中x=1,y=2,c=3,d=4若m和n的原值为1,由于“x>y”的值为0,因为m=0,而不执行“n=c>d”,所以n的值不是0而是原值1。
IF语句和用IF语句构成的选择结构
if语句用来对所给定的条件进行判定,判断其表达式的值是否满足某种条件,并根据判定的结果决定执行给出的两种操作中的哪一种。
if语句的几种形式
if(表达式)语句
例如:if(a>b)
printf(“The answer is right!\n”);
其中,if是C语言关系字,a>b是条件判断表达式。表达式两侧的括号不可少,并且只能是圆括号,不能用其他括号替代。紧跟着的是一条输出语句,称为if子句。如果在if子句中需要多个语句,则应该使用大括号({})把一组语句括起来构成复合语句,这样在语法上满足“一条语句”的要求。
if(表达式) 语句1
else 语句2
例如:
if(a>b)printf(“The answer is right.\n”);
else printf(“The answer is wrong.\n”);
if(表达式) 语句1
else if(表达式2)语句2

else if(表达式m) 语句1
else 语句n
“语句1”是if子句,“语句2…语句m”是else子句。这些子句在语法上要求是一条语句,但