第四章 选择结构程序设计
本章主要任务:
1、理解条件-产生逻辑值的表达式。
2、掌握关系运算符、关系表达式;逻辑运算符、关系表达式。
3、掌握if语句。
4、掌握条件运算符、条件表达式。
5、掌握switch-case语句。
选择结构
选择结构是三种基本结构(顺序、选择、循环)之一。
C语言中的选择结构是用if语句实现的。if语句的常用的形式是:
if(关系/逻辑表达式)
语句1
else
语句2
选择结构应用举例
用C语言实现图示的分段函数。
用C语言描述
if(x > 0)
y = 1;
else
y = -1;
说明:
x>0是一个关系表达式,“>”是一个关系运算符。x>0关系表达式成立,也就是说由关系表达式x>0构成的逻辑运算为真时,y<=1,否则y<=-1。
4.1关系运算符和关系表达式
关系运算是逻辑运算中比较简单的一种,“关系运算”就是“比较运算”。即,将两个值进行比较,判断是否符合或满足给定的条件。如果符合或满足给定的条件,则称关系运算的结果为“真”;如果不符合或不满足给定的条件,则称关系运算的结果为“假”。
4.1.1 C语言提供6种关系运算符
关系运算符优先次序
(1)前4种关系运算符的优先级别相同,后两种也相同。前4种高于后两种。
(2)关系运算符的优先级低于算术运算符。
(3)关系运算符的优先级高于赋值运算符。
4.1.2关系表达式
用关系运算符将两个表达式(算术、关系、逻辑、赋值表达式等)连接起来所构成的表达式,称为关系表达式。
关系表达式的值是一个逻辑值,即“真”或“假”。C语言没有逻辑型数据,以1代表“真”,以0代表“假”。
关系表达式举例
例如:
假如a=3,b=2,c=1,
则:
关系表达式“a>b”的值为“真”,即表达式的值为:1。
关系表达式“b+c
4.2 逻辑运算符和逻辑表达式
逻辑表达式:
用逻辑运算符(逻辑与、逻辑或、逻辑非)将关系表达式或逻辑量连接起来构成逻辑表达式。
4.2.1 C语言提供三种逻辑运算符
(1)&& 逻辑与(相当日常生活中:而且,并且,只在两条件同时成立时为“真”)
(2)|| 逻辑或(相当日常生活中:或,两个条件只要有一个成立时即为“真”)
(3)! 逻辑非(条件为真,运算后为假,条件为假,运算后为真)
逻辑运算举例
a&&b 若a、b为真,则a&&b为真。
a||b 若a、b之一为真,则a||b为真。
!a 若a为真,则!a为假,反之若a为假,则!a为真。
4.2.2 逻辑表达式
逻辑表达式:
用逻辑运算符(逻辑与、逻辑或、逻辑非)将关系表达式或逻辑量连接起来构成逻辑表达式。
逻辑表达式的值是一个逻辑量“真”或“假”。C语言编译系统在给出逻辑运算结果时,以1代表“真”,以0代表“假”,但在判断一个量是否为“真”时,以0代表“假”,以非0代表“真”(即认为一个非0的数值是“真”)。
逻辑表达式举例
例如:非0值作为逻辑值参与运算=“真”(此时与1的作用一样)
若a=4, 则!a=0(假)。
若a=4,b=5,
则
a&b=1(真),a||b=1(真),!a||b=1(真)
4&&0||2=1(真)
‘c’(真)&&’d’(真)=1
逻辑表达式举例
例如:计算:5>3&&2||8<4-!0
(注意运算符优先级、数值所起作用-是逻辑值,原值