天天看点

C语言 第四章 关系、逻辑运算与分支流程控制一、关系运算二、逻辑运算三、运算优先级四、if语句五、switch语句

若干表达式用关系运算符连接而成,就构成关系表达式。

关系表达式中,表达式成立,其值为1(真);表达式不成立,其值为0(假)。

其他表达式中,其结果如果是非0则为真,结果为0则为假。

关系运算符的优先级低于算术运算符,高于赋值运算符。

关系运算符号:> >= < <= !=

运算结果:

C语言 第四章 关系、逻辑运算与分支流程控制一、关系运算二、逻辑运算三、运算优先级四、if语句五、switch语句
C语言 第四章 关系、逻辑运算与分支流程控制一、关系运算二、逻辑运算三、运算优先级四、if语句五、switch语句

!(逻辑非)

运算规则:!1 = 0,!0 = 1 。优先级:高。

&&(逻辑与)

运算规则:1&&1=1,1&&0=0,0&&1=0,0&&0=0优先级:中

||(逻辑或)

运算规则:0||1=1,1||0=1,0||0=0,1||1=1。

优先级:低

注意:短路,当与运算时,第一个表达式为假时,不会再处理第2个表达式。

a&&b

当或运算时,第1个表达式为真是,不会再处理第2个表达式

a||b

注意:

另外使用时必须注意以下几点:

代数中的不等式0<x<5必须写成(x>0)&&(x<5)

C语言允许直接对数字或字符进行逻辑运算。

例如:!5,其结果为0。因为在C语言中,非0的值均认为是“真”,而5是个非零值,对非零值求反,即得零值。5&&‘c’,结果为1。因为字符'c'的ASCLL码为非零的整数,非零值与非零值作“与”运算,结果为真。

C语言 第四章 关系、逻辑运算与分支流程控制一、关系运算二、逻辑运算三、运算优先级四、if语句五、switch语句
C语言 第四章 关系、逻辑运算与分支流程控制一、关系运算二、逻辑运算三、运算优先级四、if语句五、switch语句

代码块表示一段代码,有{}符号界定,是一个新的作用域,可以有0-n行代码。

C语言 第四章 关系、逻辑运算与分支流程控制一、关系运算二、逻辑运算三、运算优先级四、if语句五、switch语句
C语言 第四章 关系、逻辑运算与分支流程控制一、关系运算二、逻辑运算三、运算优先级四、if语句五、switch语句

if(条件表达式)

{

条件表达式为真时要执行的语句块(分支一语句);

}

其语义是:

如果表达式的值为真,则执行其后的分支一语句, 否则不执行该分支一语句。

C语言 第四章 关系、逻辑运算与分支流程控制一、关系运算二、逻辑运算三、运算优先级四、if语句五、switch语句

else

条件表达式为假时要执行的语句块(分支二语句);

其语义是:如果表达式的值为真,则执行分支一语句,否则执行分支二语句。

C语言 第四章 关系、逻辑运算与分支流程控制一、关系运算二、逻辑运算三、运算优先级四、if语句五、switch语句
C语言 第四章 关系、逻辑运算与分支流程控制一、关系运算二、逻辑运算三、运算优先级四、if语句五、switch语句

使用多重if完成下面的内容:

输入分数,根据分数输出等级.

0-59 不及格

59-70 良好

71-85 优秀

86-100 卓越

练习:

使用switch完成菜单功能,用户按键(1-5)选择。

1、开始游戏

2、创建存档

3、加载存档

4、加载地图

5、退出

请选择(1-5):

当输入1-5以外的内容时输出错误

switch练习2:

输入年份与月份,输出天数。

年:2008

月:2

29

年:2009

月:3

31

答案:

继续阅读