C语言第3章

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

switch
switch(表达式) { case常量1 :语句1 ; case常量2 :语句2 ; …… case常量n :语句n ; default : 语句n+1 ; }
3
2019/2/12
3.1 关系运算符和关系表达式 关系运算符 关系运算符是对两个操作量进行大小比较的运算符,其操作 结果是“真”或“假”。用“1”表示真;“0”表示假。
第3章 选择结构及其应用
关系运算符和关系表达式 逻辑运算符和逻辑表达式 if语句 switch语句 条件运算符和条件表达式
2019/2/12
1
概述
选择结构是程序的基本结构。所谓选择结构,就是根据不同 的条件,选择不同的程序块(分程序)进行处理。
例:
是 上网
开始
开始
否 继续做作业
作业是否 做完?
真 y=3x-1
2019/2/12 12
说明: (1)a&&b,只有a为真(非0)时,才需要判断b的值,如 果a为假,就不必判断b的值。即:&&运算符,只有a≠0,才 继续进行其右面的运算。 (2)a||b,只要a为真(非0),就不必判断b的值,只有a为 假时,才判断b的值。即:||运算符,只有a=0,才继续进行 其右面的运算。
注意区 分C中 的”= =” 2019/2/12 与” =”
>= (大于或等于) <= (小于或等于) == (等于) != (不等于) > (大于) < (小于)
与数学中的 表示方法不 一样!
4
3.1 关系运算符和关系表达式 说明: (1)C语言中的小于等于、大于等于、等于、不等于运算符 (<=、>=、==、!=)的表示与数学中的表示(≤、≥、 =、≠)不同。 (2)在以上6种关系运算符中,前4种(<、<=、>、>=) 的优先级相同,后两种(==、!=)的优先级相同,前4种 的优先级高于后两种。例如:a>=b!= b<=3等价于(a >=b)!=( b<=3)。 (3)关系运算符的结合性为从左到右。 (4)C语言中“==”是关系运算符,用来判断两个数是否 相等,请读者注意与等号“=”的区别,例如:x==3是要 2019/2/12 判断 x的值是否为3,x=3是使x的值为3。
x<0
假 y=x
睡觉
结束
结束
2019/2/12 2
if-else
if (表达式) 语句; else 语句;
if(表达式) 语句;
if~else 嵌套 if(表达式)
语句; if(表达式) 语句; else 语句; else 语句;
if
if-else if-else
if(表达式) 语句; else if(表达式) 语句; else if(表达式) 语句; else 语句;
值为1 值为1
值为1
6
计算以下表达式的值 3<2 , a>b , a<b+c , c>b==a , a=b>c
3.2 逻辑运算符和逻辑表达式 逻辑运算是用来判断一件事情是“成立”还是“不成立”,判 断的结果只有两种,分别用数“1”和“0”来表示。其中“1”表 示该逻辑运算的结果是“成立”的,“0”表示该逻辑运算的结 果是“不成立” 的。 逻辑真与逻辑假
5
3.1 关系运算符和关系表达式 关系表达式
是用关系运算符把操作对象连接起来而构成的式子,操作对象 可以是各种表达式。关系表达式运算结果值为1或0。 如: (6>5)<2
结果为:1
例:判断下列关系表达式的值: 6==(3+3); (x=3)<5+(y=6) 10==(4+(x=6))
2019/2/12
逻辑或 有真则真,全假则假。 例如:5||3, 4||0 逻辑非
s1 R1
s1 s2
非 0( 真 ) 0 ( 假 ) 0 ( 假 ) 非0(真)
2019/2/12
例如运算符和逻辑表达式 逻辑表达式 是用逻辑运算符把操作对象连接起来而构成的式子。 逻辑表达式运算结果值为1或0。 注意区分逻辑量与逻辑值
逻辑与
S1,S2是两个开关,L是一个灯 泡,在这个电路图中开关S1和 S2只有两种状态:闭合(用1表 示)和断开(用0表示);灯泡也只 有两种状态:亮(用1表示)和不 亮(用0表示)。灯泡是否亮和两 个开关的闭合、断开之间就形 成了一种逻辑运算 。
有假则假,全真才真。 例如:5&&3 4&&0
2019/2/12 10
2019/2/12 8
表3-3逻辑运算真值表 a 真 真 假 假 b 真 假 真 假 a&& b 真 假 假 假 a||b 真 真 真 假 !a 假 假 真 真 !b 假 真 假 真
说明: (1)三种运算符的优先级由高到低依次为:!、&&、||。(2) 逻辑运算符中的“&&”和“||”的结合性为从左到右,“!”的 结合性为从右到左。 (3)关系运算符的优先级低于算术运算符,逻辑运算符中的 “&&”和“||”的优先级低于关系运算符,“!”的优先级高于 2019/2/12 9 算术运算符。
C语言的数据类型里没有逻辑数据类型,但对参与逻辑运算的所 有的数值,都将转换为“逻辑真”或“逻辑假”后才参与逻辑运 算。
如果参与逻辑判断的数值为“0”,则把它作为“逻辑假”处理。 如果参与逻辑判断的数值不为“0”,则把它作为“逻辑真”处 理。不是将数值1作为逻辑真,而是将非0的数值都作为逻辑真。 上述的逻辑判断方法可以归纳为:判假不判真,非假即真。
2019/2/12 7
3.2 逻辑运算符和逻辑表达式 逻辑运算符
C语言中有三个逻辑运算符:逻辑与、逻辑或、逻辑非。
! && ||
(逻辑非) (逻辑与) (逻辑或)
单目运算符 双目运算符 双目运算符
逻辑运算把一切“非 0” 的数作为真,把“0” 数作为假。 逻辑运算是“非 0”和“0”两类数据或真和假两种状态的运算。
(3)2<a<3在C语言中的表示为(2<a)&&( a<3)。
逻辑量——凡是参加逻辑运算的变量、常量都是逻辑量, 以0代表“假”,以非0代表“真”。 逻辑值——逻辑量、逻辑表达式的运算结果的值就是逻辑 值。逻辑值只能是“0”和“1”这二个数。“1”表示逻辑真 (成立);“0”表示逻辑假(不成立)。
逻辑量与逻辑值间的关系:一切非“0”的逻辑量其逻辑值都为真。 例:4&&7的逻辑值为1。
相关文档
最新文档