跳转至

4. 基本运算

在编程中,运算符是用于执行运算的符号,C++ 提供了多种类型的运算符,涵盖从基本的加减乘除到位运算等功能。本节将系统讲解各种常见运算符。


【1】算术运算

概念说明

算术运算符用于执行基本的数学计算。

运算符 含义 示例表达式 结果
+ 加法 3 + 2 5
- 减法 3 - 2 1
* 乘法 3 * 2 6
/ 除法 5 / 2 2(整型)
// 整除 5 / 2 2(整型)
% 取余 5 % 2 1

示例代码(C++)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
#include <iostream>
using namespace std;

int main() {
    int a = 5, b = 2;
    cout << "a + b = " << a + b << endl;
    cout << "a - b = " << a - b << endl;
    cout << "a * b = " << a * b << endl;
    cout << "a / b = " << a / b << endl;
    cout << "a % b = " << a % b << endl;
    return 0;
}

【1】关系运算

概念说明

关系运算用于比较两个值的关系,结果为布尔值(true 或 false)。

运算符 含义 示例
> 大于 a > b
>= 大于等于 a >= b
< 小于 a < b
<= 小于等于 a <= b
== 等于 a == b
!= 不等于 a != b

示例代码

1
2
3
int a = 5, b = 3;
cout << (a > b) << endl;  // 输出 1(true)
cout << (a == b) << endl; // 输出 0(false)

【1】逻辑运算

概念说明

逻辑运算符用于多个条件的组合判断。

运算符 含义 示例 说明
&& a > 0 && b > 0 两个都为真才为真
|| a > 0 || b > 0 一个为真就为真
! !(a > 0) 条件取反

示例代码

1
2
3
4
bool a = true, b = false;
cout << (a && b) << endl;  // 输出 0
cout << (a || b) << endl;  // 输出 1
cout << (!a) << endl;      // 输出 0

【1】变量自增与自减运算

运算符

运算符 含义 示例
++ 自增 a++
-- 自减 b--

前缀和后缀的区别:

  • ++a:先加后用
  • a++:先用后加

示例代码

1
2
3
4
int a = 5;
cout << ++a << endl; // 输出 6
cout << a++ << endl; // 输出 6,再加变成 7
cout << a << endl;   // 输出 7

【1】三目运算符

概念说明

三目运算符是一种简洁的条件表达式写法。

语法格式:

1
condition ? value_if_true : value_if_false;

示例代码

1
2
3
int a = 5, b = 10;
int max = (a > b) ? a : b;
cout << "较大值是: " << max << endl;

【2】位运算

概念说明

位运算是直接对整数的二进制位进行操作的运算。

运算符 含义 示例 说明
& 按位与 a & b 都为1才为1
| 按位或 a | b 有一个为1就为1
~ 按位非 ~a 1变0,0变1(按位取反)
^ 按位异或 a ^ b 相同为0,不同为1
<< 左移 a << 1 相当于乘2
>> 右移 a >> 1 相当于除2

示例代码

1
2
3
4
5
6
7
int a = 5, b = 3;   // 二进制: a=0101, b=0011
cout << (a & b) << endl;  // 1
cout << (a | b) << endl;  // 7
cout << (a ^ b) << endl;  // 6
cout << (~a) << endl;     // -6(因为补码)
cout << (a << 1) << endl; // 10
cout << (a >> 1) << endl; // 2

总结

  • 熟练掌握算术、关系、逻辑、自增减、三目和位运算是编程的基础。
  • 编程时建议使用 括号 明确优先级,增强代码可读性。
  • 多做练习能更好地掌握各种运算符的特性。