跳转至

关系运算符

关系运算符,用来比较两个值。

常用符号

符号 含义 例子
> 大于 a > b
< 小于 a < b
>= 大于等于 a >= b
<= 小于等于 a <= b
== 等于 a == b
!= 不等于 a != b

比较的结果,是布尔值:成立是 true,不成立是 false。

cout << (3 > 2);  // 输出1,成立
cout << (3 == 2); // 输出0,不成立

默认输出布尔值时,true 显示为 1,false 显示为 0。

在 if 中使用

int a, b;
cin >> a >> b;

if (a >= b) {
    cout << "a不小于b";
}

>= 包含相等的情况,> 不包含。读题时,注意“大于”和“不小于”的区别。

常见错误

判断相等,写两个等号

== 最容易写错,很多同学只写一个 =,就变成了赋值。

if (a == b) { // 判断a和b是否相等
    // ...
}
if (a = b) { // 错误:想判断相等,却写成了赋值
    // ...
}

后面这种写法,可能编译通过,所以不能只看程序有没有报错。

符号不要写反,也不要拆开

>=  正确,不能写成 => 或 > =
<=  正确,不能写成 =< 或 < =
!=  正确,不能写成 <> 或 ! =

不能照搬数学里的连续比较

数学里写 1 < x < 10,C++ 里不能这样判断范围。

if (1 < x && x < 10) {
    // x大于1,并且小于10
}

要拆成两个条件,用 && 连接,表示“并且”。下一篇会讲。