关系表达式只能表达简单的条件,在实际应用中往往需要把多个关系表达式连接起来以描述复杂的条件。
请运行并分析下表的程序,然后完成表中提出的问题。
(1)根据程序运行结果填写下表。
(2)逻辑运算符的操作数除了关系表达式外,还可以是其他类型的表达式吗?请自行设计实验,并作出结论。
__________________________________________________________
(3)逻辑表达式的运算结果是怎样表示的?
_____________________________
(4)请你分析以下逻辑表达式的值并上机验证,然后归纳逻辑运算符的优先级和结合性。
①4||7&&0 ②!5&&79
你的结论:_______________________________________________________________________________________
(5)写出表达下列条件的表达式。
①ch 是数字字符:_____________________________
②ch是英文字母:_____________________________
③整数x不是偶数:_____________________________
(6)分析下面表达式执行后变量x的值,归纳C语言对这类表达式的处理方法。
int x=4,y=2,z=7;
①y>z&&x++
y<z&&z>7&&x++
y<z&&z>=7&&x++
结论:
_____________________________
②y<z||x++
y>z||z>=7||x++
y>z||z>7||x++
结论:
_____________________________
眼下留神
●在C语言中,逻辑运算符不仅能连接关系表达式,还能连接其他类型的表达式。
●形如A&&B&&C这类用&&连接成的串联表达式,如果表达式A为假,则不再计算表达式B和C,依次类推。
●形如A||B||C这类用||连接成的串联表达式,如果表达式A为真,则不再计算表达式B和C,依次类推。
日积月累
●逻辑运算符的运算规则:
●逻辑运算符的优先级由高到低的顺序是:!,&&,||。
●在C语言中,逻辑表达式结果为真,其值为1;结果为假,其值为0。
布尔与逻辑运算(延伸阅读)