doc/docs/CPlusPlus-main/11_C++的运算符.md
sairate fa9377e4ae docs(book): 添加现代 C++教程及相关代码
- 新增现代 C++ 教程的 Preface 章节,包括英文和中文版本
- 添加 C++ Primer 练习代码
- 新增 Learn C++ 教程的 C++ 开发简介章节
- 添加头文件解析文档
- 更新 mkdocs.yml,包含新教程的目录结构
- 修改项目设置,使用 Python 3.10环境
2025-07-08 09:52:45 +08:00

4.9 KiB
Raw Blame History

C++的运算符

1. 运算符

① 运算符作用:用于执行代码的运算。

② 运算符类型主要有四种:

  1. 算术运算符:用于处理四则运算。
  2. 赋值运算符:用于将表达式的值赋给变量
  3. 比较运算符:用于表达式的比较,并返回一个真值或假值。
  4. 逻辑运算法:用于表达式的值返回真值或假值。

2. 算术运算符

2.1 加减乘除运算

#include <iostream>
using namespace std;

int main()
{

    int a1 = 10;
    int b1 = 3;

    cout << a1 + b1 << endl;
    cout << a1 - b1 << endl;
    cout << a1 * b1 << endl;
    cout << a1 / b1 << endl;  //两个整数相除结果依然是整数将小数部分去除

    int a2 = 10;
    int b2 = 20;

    cout << a2 / b2 << endl;

    int a3 = 10;
    int b3 = 0;

    //cout << a3 / b3 << endl;  //两个数相除除数不可以为0

    //两个小数可以相除
    double d1 = 0.51;        //如果d1为0.5运算结果为整数2
    double d2 = 0.25;
    
    cout << d1 / d2 << endl; //运算结果也可以是小数

    system("pause");

    return 0;

}

运行结果:

  • 13
  • 7
  • 30
  • 3
  • 0
  • 2.04
  • 请按任意键继续. . .

2.2 取模运算

#include <iostream>
using namespace std;

int main()
{
    //取摸运算本质  就是求余数
    int a1 = 10;
    int b1 = 3;

    cout << a1 % b1 << endl;

    /*两个数相除除数不可以为0所以也做不了取模运算
    int a2 = 10;
    int b2 = 0;

    cout << a2 % b2 << endl;  //
    */

    /*两个小数是不可以做取模运算的
    double d1 = 3.14;
    double d2 = 1.1;

    cout << d1 % d2 << endl;
    */

    system("pause");

    return 0;

}

运行结果:

  • 1
  • 请按任意键继续. . .

2.3 递增递减运算

#include <iostream>
using namespace std;

int main()
{
    //1前置递增

    int a = 10;
    ++a;
    cout << "a=" << a << endl;

    //2后置递增

    int b = 15;
    b++;
    cout << "b=" << b << endl;

    //3前置和后置的区别
    //前置递增先让变量+1 然后进行表达式运算
    int a2 = 10;
    int b2 = ++a2 * 10;
    cout << "a2= " << a2 << endl;
    cout << "b2= " << b2 << endl;

    //后置递增先进行表达式运算后让变量+1
    int a3 = 10;
    int b3 = a3++ * 10;
    cout << "a3= " << a3 << endl;
    cout << "b3= " << b3 << endl;

    system("pause");

    return 0;

}

运行结果:

  • a=11
  • b=16
  • a2= 11
  • b2= 110
  • a3= 11
  • b3= 100
  • 请按任意键继续. . .

3. 赋值运算符

#include <iostream>
using namespace std;

int main()
{

    // = 赋值
    int a = 10;
    a = 100;
    cout << "a= " << a << endl;

    // += 加等于
    int b = 10;
    b = 10;
    b += 2;
    cout << "b= " << b << endl;

    // -= 减等于
    int c = 10;
    c = 10;
    c -= 2;
    cout << "c= " << c << endl;

    // *= 乘等于
    int d = 10;
    d = 10;
    d *= 2;
    cout << "d= " << d << endl;

    // /= 除等于
    int e = 10;
    e = 10;
    e /= 2;
    cout << "e= " << e << endl;
    
    // %= 模等于
    int f = 10;
    f = 10;
    f %= 2;
    cout << "f= " << f << endl;

    system("pause");

    return 0;

}

运行结果:

  • a= 100
  • b= 12
  • c= 8
  • d= 20
  • e= 5
  • f= 0
  • 请按任意键继续. . .

4. 比较运算符

① 作用:用于表达式的比较,并返回一个真值或假值。

#include <iostream>
using namespace std;

int main()
{
    //比较运算符
    
    // ==
    int a = 10;
    int b = 20;
    cout << (a == b) << endl;

    // !=
    cout << (a != b) << endl;

    // >
    cout << (a > b) << endl;

    // <
    cout << (a < b) << endl;

    // >=
    cout << (a >= b) << endl;
    
    // <=
    cout << (a <= b) << endl;

    system("pause");

    return 0;

}

运行结果:

  • 0
  • 1
  • 0
  • 1
  • 0
  • 1
  • 请按任意键继续. . .

5. 逻辑运算符

① 作用:用于根据表达式的值返回真值或假值。

  1. !a 表示非如果a为假则!a为真如果a为真则!a为假。
  2. a&&b 表示与如果a和b都为真则结果为真否则为假。
  3. a||b 表示或如果a和b有一个为真则结果为真二者都为假时结果为假。
#include <iostream>
using namespace std;

int main()
{
    //逻辑运算符

    // !=
    int a = 10;
    int b = 30;

    cout << (!a) << endl;  //在C++中除了0都为真
    cout << (!!a) << endl;

    // &&
    a = 10;
    b = 30;

    cout << (a && b) << endl;

    a = 0;
    b = 10;
    cout << (a && b) << endl;

    // ||
    a = 10;
    b = 30;
    cout << (a || b) << endl;

    a = 0;
    b = 10;
    cout << (a || b) << endl;

    a = 0;
    b = 0;
    cout << (a || b) << endl;

    system("pause");

    return 0;

}

运行结果:

  • 0
  • 1
  • 1
  • 0
  • 1
  • 1
  • 0
  • 请按任意键继续. . .