
一起动脑筋 · 先看一个小故事
游乐项目要求身高至少 120 厘米。女孩正好 120,机器人该让她通过吗?
把过程摊开来看
- 读条件至少 120
- 比较120 大于或等于 120
- 结果true
- 行动满足这项条件
比较表达式产生真或假。> 与 >= 的差别,就在边界是否包含。
“至少”“超过”“不超过”这些日常词,决定了应该选择哪个比较符号。
01比较运算符有哪些?
==
是否相等
!=
是否不相等
< >
大小关系
<=
小于等于
>=
大于等于
结果
都是 bool
02比较结果是什么?
5 > 3 // true
5 == 3 // false
7 != 2 // true
比较表达式的结果是 true 或 false。
03== 和 = 千万别混淆
=
赋值:把右边的值写到左边。
==
比较:判断两边是否相等。
x = 5; // 赋值
x == 5; // 比较04比较结果怎样控制程序?
最常见的用途就是配合 if:
if (score >= 60) {
std::cout << "及格";
}
比较先得到一个 bool,if 再根据真假决定是否执行代码块。
05字符也能比较吗?
可以。字符类型最终也有整数编码值,因此可以比较。
'A' < 'B'
在常见字符编码中结果为 true。
但字符串、Unicode 文本和自然语言排序要复杂得多,不能简单把字符比较当成“字典顺序的全部规则”。
06为什么小数比较要小心?
浮点数很多时候只能近似表示十进制小数。
0.1 + 0.2 == 0.3
这个表达式在常见二进制浮点环境中通常是 false。
你已经知道了什么
- 比较运算符包括
== != < > <= >=。 - 比较结果是
bool。 =是赋值,==才是相等比较。- 比较结果常用于
if条件。 - 浮点数比较需要考虑表示误差。
下一篇:&&、||、!:组合多个条件
轮到你来试一试
身高 120,height > 120 与 height >= 120 分别是什么结果?
想好了吗?点开看解释
前者是假,后者是真。把恰好等于边界的值拿来试,最容易看出差别。