- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言选择结构的
第五章 选择结构程序设计
;5.1 关系运算及其表达式;3.结合性:自左至右;
二、 关系表达式
1.关系表达式的概念
所谓关系表达式是指,用关系运算符将两个表达式连接起来,进行关系运算的式子。
例如,下面的关系表达式都是合法的:
ab,a+bc-d,(a=3)=(b=5),a=b,(ab)= =(bc)
2.关系表达式的值:条件成立为真,整数“1”表示“逻辑真;
条件不成立为假,用整数“0”表示“逻辑假”。
例如: int a=2,b=3,c=1;
abc
先计算ab,值是1 , 再计算 1c,值是0
632
先计算63 ,值是1 , 再计算 12,值为 1; 练习,假设num1=3,num2=4,num3=5,则:
(1)num1num2的值=?。
(2)(num1num2)!=num3的值=?。
(3)num1num2num3的值=?。
思考题:任意改变num1或num2的值,会影响整个表达式的值吗?为什么?
(4)(num1num2)+num3的值=?
再次强调:C语言用整数“1”表示“逻辑真”,用整数“0”表示“逻辑假”。所以,关系表达式的值,还可以参与其它种类的运算,例如算术运算等。;三、条件运算符
?和: ,它们与三个操作数组组成三元运算。
? 形式为: 表达式1 ? 表达式2:表达式3
? 求值规则和表达式的值:
真(非0),求解表达式2
求解表达式1 条件表达式的值
假(0),求解表达式3
例如: int max,a=5,b=3;
max=ab?a:b max及赋值表达式的值均为5;
ab?a:b+1 条件表达式的值为4。;5.2 逻辑运算及其表达式;(2)运算规则
1):全真为真。当且仅当两个运算量的值都为“真”时,运算结果为“真”,否则为“假”。
2) || :全假为假。当且仅当两个运算量的值都为“假”时,运算结果为“假”,否则为“真”。
3) ! :非真即假,非假即真。当运算量的值为“真”时,运算结果为“假”;当运算量的值为“假”时,运算结果为“真”。
例如,假定x=5,则(x=0) (x10)的值为“真”,(x-1) || (x5)的值为“假”,!(x5)的值为“真”。
;2.逻辑运算符的运算优先级
(1)逻辑非的优先级最高,逻辑与次之,逻辑或最低,即: !(非) → (与) → ||(或)
(2)与其它种类运算符的优先关系
!→ 算术运算 → 关系运算 → → || → 赋值运算
3.逻辑运算符的结合律 C语言逻辑运算符采用左结合律。表达式中出现优先级别为同一级别的运算符时, 按从左到右的结合方向处理。例如:
a b c
计算顺序为:(a b) c。
;二、逻辑表达式
1.逻辑表达式的概念
所谓逻辑表达式是指,用逻辑运算符将1个或多个表达式连接起来,进行逻辑运算的式子。在C语言中,用逻辑表达式表示多个条件的组合。
例如,a=’a’ a=‘z’ 就是一个判断一个字符是否是小写字母的逻辑表达式。 逻辑表达式的值也是一个逻辑值(非“真”即“假”)。
2.逻辑量的真假判定──0和非0
只有数值0才是逻辑“0”,只要是非零的数值均是逻辑“1”。
逻辑运算值的表示:逻辑真,值为1,
逻辑假,值为0。
例如,假设num=12,则: !num的值=0 ,
num=1 &&num=31的值=1 ,num || num31的值=1。 ; 3.说明
在计算逻辑表达式时,只有在必须执行下一个表达式才能求解时,才求解该表达式(即并不是所有的表达式都被求解)。换句话说:
1)对于逻辑与运算,如果第一个操作数被判定为“假”,系统不再判定或求解第二操作数。
例:a = 0; b = 1;
c = a++ ( b = 3 );
结果: a为1,b为1,c为0。
2)对于逻辑或运算,如果第一个操作数被判定为“真”,系统不再判定或求解第二操作数。
例:a = 1; b = 1; c=0;
d = --a || b-- ||(c = b+3 );
结果: a为0,b为
您可能关注的文档
- CH3-5ed 数据链路层的.ppt
- ch6 第六章 集合代实凝.doc
- ch4_4双线性变换法的.ppt
- CH6 网络互连的.ppt
- Ch6 软件质量度量的.ppt
- CH6电气控制及PLC的.ppt
- ch8 广域网的.ppt
- ch9 基于OMAP5912的的开发应用.ppt
- chap 3 非理想流动返拇应器.ppt
- ch6输入输出接口的.ppt
- 2025年经济师职称考试经济基础模拟试题(历年真题回顾).docx
- 银川市劳动合同范本专业版9篇.docx
- 2025沈阳市城市建设管理学校工作人员招聘考试真题.docx
- 2025年会计职称考试《初级会计实务》内部控制与审计综合应用题解析.docx
- 期中卷 【期中测试·达标卷】-2023-2024学年八年级地理下册单元精讲·速记·巧练(湘教版)(解析版).docx
- 2025年小学教师资格考试《综合素质》教育活动设计必备考点与真题模拟试卷.docx
- 2025四平市职业技术教育中心工作人员招聘考试真题.docx
- 2025太原市晋源区职业中学校工作人员招聘考试真题.docx
- 2025太康县职业中等专业学校工作人员招聘考试真题.docx
- 2020人教版九年级上学期同步单元专题大培优:18.2电功率同步练习.docx
文档评论(0)