- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言内涵教程 周二强 zeq126@126.com 中国铁道出版社 ISBN9787113163815 第4章 逻辑运算与选择结构程序 4.1 C语言中的“逻辑型” 4.2 关系操作符 4.3 逻辑操作符 4.4 简单的if选择结构 4.5 if-else选择结构 4.6 条件操作符 4.7 switch选择结构 4.8 典型例题 4.1 C语言中的“逻辑型” “用户输入的数是否为正数?”,答案只有两个: “是”或者“否”。 解决这类问题时通常先假设一个“结论”。 “用户输入的数是正数”。如果用户输入的数存储在变量a中,则结论为“变量a是正数”。 如何根据这个结论解决问题? “变量a是正数”! 根据用户输入的实际值对结论进行判断,计算机会得到一个或为“真”或为“假”的值。 如果用户输入了一个正数,则这个结论的值就是“真”(“是”);如果用户输入了一个非正数,则这个结论的值就是“假”(“否”)。 因此,当结论为“真”时,用户输入了正数;当结论为“假”时,用户输入的不是正数。 逻辑运算 对结论进行判断,得出一个“真”或“假”的值的过程也是一种运算,即逻辑运算。 计算机支持逻辑运算,逻辑运算的运算结果不是“真”就是“假”。“真”和“假”又称为逻辑量。 “变量a是正数”与表达式a0 假设的结论在C语言中常用表达式表示,如结论“变量a是正数”可以用关系表达式a 0表示,为什么? 因为两者“等价”,同真同假。 “变量a是正数”与表达式a 0,要么同为“真”,要么同为“假”。 “真”和“假”在C语言中的编码 如果某表达式的值为“真”,则它的值为整数1,也就是说C语言中“真”用整数1表示; 如果某表达式的值为“假”,则它的值为整数0,即C语言中“假”用整数0表示。 什么是真?什么是假? 虽然“真”用整数1表示,“假”用整数0表示,但整数1就是“真”,整数0就是“假”的说法却有问题。 C语言中“0”是“假”,而被认为是“假”的“0”可能是整数0或浮点数0(0.0),也可能是ASCII码为0的字符。 不为“0”的其它数据都被认为是“真”,即不是“假”就是“真”。 4.2 关系操作符 C语言提供了6种关系操作符:(小于)、= (小于等于)、 (大于)、 = (大于等于)、 == (等于)和!=(不等于)。 关系操作符进行的运算是“比较大小运算”,根据比较结果得出真或假的值,是一种简单的逻辑运算。 关系操作符的优先级前4种高于后2种。低于算术操作符高于赋值操作符。 例4-2 关系表达式求值 1. A Z 2. 3 - 5u 0 3. a % 2 != 0 4. 99 x 1000 变量x的值为2523 4.3.1 逻辑操作符 逻辑与操作符是一个逻辑操作符。与比较操作符把其操作数看作是普通数据不同,逻辑操作符会把操作数看作是逻辑量,这是逻辑操作符的显著特点。35 35 逻辑量只有真和假两个值,因此,逻辑操作符的运算规则只有四种情况,可用一个表格简明地表示,这样的表格常称为真值表。 表4-1 逻辑与的真值表 例4-3 证明代数式99 x 1000与表达式(x 99) (x 1000)等价。 当代数式99 x 1000成立时, 逻辑表达式(x 99) (x 1000)的值为1,即真。 当代数式99 x 1000不成立时, 逻辑表达式(x 99) (x 1000)的值也为0,即假。 反之,当(x 99) (x 1000)为真时,此时代数式99 x 1000成立;当(x 99) (x 1000)为假时,此时代数式99 x 1000不成立。 因此,两者等价。 其它逻辑操作符 逻辑或操作符||表示“或者”的关系。操作数a 和b中只要有一个值为真,即非0,表达式a || b的值就为1,即真;只有a 和b都为假,即0,表达式a || b的值才为0,即假。 C语言中还有一个称为逻辑非!的逻辑操作符。逻辑非!是一个单目操作符。当操作数a非0,即真时,表达式!a的值为0,即假;当操作数a为0,即假时,表达式!a的值1,即真。 例4-4 用表达式表示结论“变量a的绝对值大于5”。 当|a| 5时有a 5或者a -5,因此,相应的表达式为(a 5) || (a -5)。 结论“变量a的绝对值不大于5”可用逻辑表达式 !((a 5) || (a -5))表示,当然也可写作(a = 5) (a = -5)。 逻辑操作符的优先级 逻辑与和逻辑或||的优先级低于关系操作符即先求(逻辑)值再(逻辑)运算, 而逻辑与的优先级又高于逻辑或||的优先级。 单目操作符的优先级都比较高,逻辑非!的优先级不仅高于关系操作符,而且还高于算术操作符。 例4-5 用表达式表示下
您可能关注的文档
- CorelDRAW X4平面设计实例教程 第12章教程 新.ppt
- CorelDRAW X4平面设计实例教程 第13章教程 新.ppt
- CorelDRAW X4平面设计实例教程 苏 颖 第1章教程 新.ppt
- CorelDRAW X4平面设计实例教程 苏 颖 第3章教程 新.ppt
- CorelDRAW X4平面设计实例教程 苏 颖 第4章教程 新.ppt
- CorelDRAW X4平面设计实例教程 苏 颖 第5章教程 新.ppt
- CorelDRAW X4平面设计实例教程 苏 颖 第6章教程 新.ppt
- CorelDRAW X4平面设计实例教程 苏 颖 第7章教程 新.ppt
- CorelDRAW X4平面设计实例教程 苏 颖 第10章教程 新.ppt
- CorelDRAW X4平面设计实例教程 苏 颖 第11章教程 新.ppt
文档评论(0)