Administrator
发布于 2026-06-22 / 0 阅读
0
0

C++ 运算符全集:算术、赋值、比较、逻辑运算符详解

一、前言

掌握变量与数据类型后,本篇学习所有 C++ 常用运算符,实现数字计算、条件判断逻辑,为 if 分支语句打下基础,全部配套可运行测试代码。

二、算术运算符(加减乘除取余)

表格

运算符

作用

示例

结果

+

加法

5 + 2

7

-

减法 / 负号

5 - 2

3

*

乘法

5 * 2

10

/

除法(整数相除舍去小数)

5 / 2

2

%

取余数(仅整数可用)

5 % 2

1

++

自增 1

a++ / ++a

a=a+1

--

自减 1

a-- / --a

a=a-1

重点细节:整数除法与浮点数除法区分

cpp

运行

#include <iostream>
using namespace std;
int main()
{
    int a = 5, b = 2;
    double x = 5.0, y = 2.0;
    cout << "整数相除:" << a / b << endl;    // 输出2,舍弃小数
    cout << "浮点数相除:" << x / y << endl;  // 输出2.5,保留小数
    return 0;
}

前置自增 vs 后置自增

  1. a++:先使用原值,运算结束后自增

  2. ++a:先自增,再使用新值

cpp

运行

int a = 1;
int b = a++; // b=1,a变为2
int c = ++a; // a先变成3,c=3

三、赋值运算符

快速给变量更新数值,简化重复写法

cpp

运行

int num = 10;
num += 5;  // 等价 num = num +5 → 15
num -= 3;  // num = num -3 → 12
num *= 2;  // num = num *2 →24
num /= 4;  // num = num /4 →6
num %= 4;  // num = num %4 →2

四、比较运算符(返回 bool true/false)

用于判断大小、相等,配合 if 语句使用

表格

运算符

含义

示例

>

大于

score > 60

<

小于

age < 18

>=

大于等于

num >= 0

<=

小于等于

height <= 200

==

判断相等(双等号)

a == b

!=

不等于

name != "admin"

⚠️ 致命易错:赋值单等号=,判断相等双等号==,写反会逻辑错误。

五、逻辑运算符(多条件组合判断)

表格

运算符

名称

规则

&&

逻辑与(并且)

两边同时 true 才为 true

`

`

逻辑或(或者)

任意一边 true 即为 true

!

逻辑非(取反)

true 变 false,false 变 true

案例:判断青少年(年龄 13~18)

cpp

运行

int age = 16;
bool teen = (age >=13) && (age <=18);
cout << teen << endl; // 输出1(true)

六、三目运算符 简易 if 替代

格式:条件 ? 成立执行 : 不成立执行

cpp

运行

int score = 70;
// 分数≥60输出及格,否则不及格
string res = score >=60 ? "及格" : "不及格";
cout << res;

七、运算符优先级(从高到低)

  1. 括号() > 自增自减 > 乘除取余 > 加减 > 比较运算符 > 逻辑运算符 > 赋值运算符

    复杂表达式建议手动加括号区分优先级,避免逻辑错误。

八、综合实战:简易计算器(加减乘除)

cpp

运行

#include <iostream>
using namespace std;

int main()
{
    double a, b;
    char op;
    cout << "输入计算式(例:10+5):";
    cin >> a >> op >> b;
    double res;
    switch(op)
    {
        case '+': res = a + b; break;
        case '-': res = a - b; break;
        case '*': res = a * b; break;
        case '/': 
            if(b == 0)
            {
                cout << "除数不能为0!" << endl;
                return 1;
            }
            res = a / b; 
            break;
        default:
            cout << "非法运算符" << endl;
            return 1;
    }
    cout << "计算结果:" << res << endl;
    return 0;
}

九、下期预告

下一篇:C++ 分支流程控制:if-else、switch 多条件判断完整教程


评论