<返回目录     Powered by claude/xia兄

第3课: 运算符与表达式

算术运算符

运算符 描述 示例
+ 加法 5 + 3 = 8
- 减法 5 - 3 = 2
* 乘法 5 * 3 = 15
/ 除法 5 / 3 = 1(整数除法)
% 取模(余数) 5 % 3 = 2
++ 自增 x++ 或 ++x
-- 自减 x-- 或 --x
#include <iostream>
using namespace std;

int main() {
    int a = 10, b = 3;

    cout << "a + b = " << (a + b) << endl;  // 13
    cout << "a - b = " << (a - b) << endl;  // 7
    cout << "a * b = " << (a * b) << endl;  // 30
    cout << "a / b = " << (a / b) << endl;  // 3
    cout << "a % b = " << (a % b) << endl;  // 1

    // 自增自减
    int x = 5;
    cout << "x++ = " << x++ << endl;  // 输出5,然后x变为6
    cout << "++x = " << ++x << endl;  // x先变为7,然后输出7

    return 0;
}

关系运算符

运算符 描述 示例
== 等于 5 == 3 为 false
!= 不等于 5 != 3 为 true
> 大于 5 > 3 为 true
< 小于 5 < 3 为 false
>= 大于等于 5 >= 5 为 true
<= 小于等于 5 <= 3 为 false

逻辑运算符

运算符 描述 示例
&& 逻辑与 true && false = false
|| 逻辑或 true || false = true
! 逻辑非 !true = false
#include <iostream>
using namespace std;

int main() {
    int age = 20;
    bool hasLicense = true;

    // 逻辑与:两个条件都为真
    if (age >= 18 && hasLicense) {
        cout << "可以开车" << endl;
    }

    // 逻辑或:至少一个条件为真
    if (age < 18 || !hasLicense) {
        cout << "不能开车" << endl;
    }

    // 逻辑非:取反
    if (!(age < 18)) {
        cout << "已成年" << endl;
    }

    return 0;
}

赋值运算符

#include <iostream>
using namespace std;

int main() {
    int x = 10;

    x += 5;   // 等同于 x = x + 5,结果为15
    x -= 3;   // 等同于 x = x - 3,结果为12
    x *= 2;   // 等同于 x = x * 2,结果为24
    x /= 4;   // 等同于 x = x / 4,结果为6
    x %= 4;   // 等同于 x = x % 4,结果为2

    cout << "最终结果:" << x << endl;

    return 0;
}

位运算符

运算符 描述 示例
& 按位与 5 & 3 = 1
| 按位或 5 | 3 = 7
^ 按位异或 5 ^ 3 = 6
~ 按位取反 ~5 = -6
<< 左移 5 << 1 = 10
>> 右移 5 >> 1 = 2

三元运算符

#include <iostream>
using namespace std;

int main() {
    int a = 10, b = 20;

    // 条件 ? 表达式1 : 表达式2
    int max = (a > b) ? a : b;
    cout << "最大值:" << max << endl;

    // 等同于
    int max2;
    if (a > b) {
        max2 = a;
    } else {
        max2 = b;
    }

    return 0;
}

运算符优先级

从高到低:

  1. 括号 ()
  2. 自增自减 ++ --
  3. 乘除取模 * / %
  4. 加减 + -
  5. 关系运算符 < <= > >=
  6. 相等运算符 == !=
  7. 逻辑与 &&
  8. 逻辑或 ||
  9. 赋值运算符 = += -= 等

练习题

  1. 编写程序计算两个数的四则运算结果
  2. 判断一个数是奇数还是偶数(使用%运算符)
  3. 使用三元运算符找出三个数中的最大值
  4. 编写程序判断一个年份是否为闰年