接上一篇, 这篇文章咱们讲下占了代码半壁江山的运算符中的关系运算符和逻辑运算符。
C++中的关系运算符包括:大于(>)、小于(<)、等于(==)、大于等于(>=)、小于等于(>=)和不等于(!=),总共六种,它们都是双目运算符,用来比较两个变量或表达式值的大小。这里建议同学们自己尝试研究一下关系运算符有没有返回值,它们的返回值是什么类型的,都有哪些返回值?
逻辑运算符包括:与运算(&&)、或运算(||)和非运算(!)。与运算符和或运算符是双目运算符,具有左结合性,非运算符是单目运算符,具有右结合性。逻辑运算符的求值规则是:
与运算符:左右两个量都为真时,结果为真。
或运算符:左右两个量,只要有一个为真,则结果为真。
非运算符:操作数为真时结果为假,操作数为假时结果为真。
下面咱们举个即将成为历史的例子,怎么使用关系运算符和逻辑运算符做核酸时长的判断?
定义一个变量a(变量的定义)表示核酸检测时间,b表示当前时间。使用运算符表示就是:
(b - a) > 0 && (b - a) <= 24h 表示24小时核酸
(b - a) > 24h && (b - a) <= 48h 表示48小时核酸
(b - a) > 48h && (b - a) <= 72h 表示72小时核酸
如果 (b -a) > 72h,你赶紧核酸去。
虽然例子很简单,但实际的程序与此应该相差不多。
再举一个同学们常见的例子,成绩的等级划分。
定义一个变量 score 表示你的成绩。
如果 score >= 90 为真,则成绩等级为 A
如果 score >= 75 && score < 90 为真,则成绩等级为 B
如果 score >= 60 && score < 75 为真,则成绩等级为 C
如果 score < 60 为真,则成绩为D
如果老师说,及格(D以上)的同学可以先下课了,不及格的留下来补课。那这个及格的同学该怎么表示?
常见的思维模式: 等级是 A || B || C 的同学下课,等级是 D 的同学留下。
计算机思维模式:!D 留下,其余下课。
看出来两种思维模式的区别了吗?合理使用关系运算符和逻辑运算符能有效简化程序,增加效率。
今天讲到这里,后续持续更新,对信息学奥赛有兴趣的同学和家长可以关注催更。
有疑问的同学可以私信,下一篇重点讲解。
页面更新:2024-03-13
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号