i编程——励志成为最大的编程论坛!

 找回密码
 立即注册
查看: 478|回复: 0

C++初识——运算符

[复制链接]

2068

主题

14

回帖

8800万

积分

管理员

积分
88006920
发表于 2023-6-19 09:58:50 | 显示全部楼层 |阅读模式

**作用:**用于执行代码的运算

本章我们主要讲解以下几类运算符:


运算符类型作用
算术运符用于处理四则运算
赋值运算符用于将表达式的值赋给变量
比较运算符用于表达式的比较,并返回一个真值或假值
逻辑运算符用于根据表达式的值返回真值或假值

算术运算符

作用:用于处理四则运算

算术运算符包括以下符号:


运算符术语示例结果
+正号+33
-负号-3-3
+10 + 515
-10 - 55
*10 * 550
/10 / 52
%取模(取余)10 % 31
++前置递增a=2; b=++a;a=3; b=3;
++后置递增a=2; b=a++;a=3; b=2;
前置递减a=2; b=–a;a=1; b=1;
后置递减a=2; b=a–;a=1; b=2;

示例1:

  1. //加减乘除
  2. int main() {

  3.         int a1 = 10;
  4.         int b1 = 3;

  5.         cout << a1 + b1 << endl;
  6.         cout << a1 - b1 << endl;
  7.         cout << a1 * b1 << endl;
  8.         cout << a1 / b1 << endl;  //两个整数相除结果依然是整数

  9.         int a2 = 10;
  10.         int b2 = 20;
  11.         cout << a2 / b2 << endl;

  12.         int a3 = 10;
  13.         int b3 = 0;
  14.         //cout << a3 / b3 << endl; //报错,除数不可以为0


  15.         //两个小数可以相除
  16.         double d1 = 0.5;
  17.         double d2 = 0.25;
  18.         cout << d1 / d2 << endl;

  19.         system("pause");

  20.         return 0;
  21. }
复制代码

[/table]

总结:在除法运算中,除数不能为0

示例2:

  1. //取模
  2. int main() {

  3.         int a1 = 10;
  4.         int b1 = 3;

  5.         cout << 10 % 3 << endl;

  6.         int a2 = 10;
  7.         int b2 = 20;

  8.         cout << a2 % b2 << endl;

  9.         int a3 = 10;
  10.         int b3 = 0;

  11.         //cout << a3 % b3 << endl; //取模运算时,除数也不能为0

  12.         //两个小数不可以取模
  13.         double d1 = 3.14;
  14.         double d2 = 1.1;

  15.         //cout << d1 % d2 << endl;

  16.         system("pause");

  17.         return 0;
  18. }
复制代码

[table]

总结:只有整型变量可以进行取模运算

示例3:

[color=var(--hltools-color)][size=1.15em]C++


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
//递增
int main() {

        //后置递增
        int a = 10;
        a++; //等价于a = a + 1
        cout << a << endl; // 11

        //前置递增
        int b = 10;
        ++b;
        cout << b << endl; // 11

        //区别
        //前置递增先对变量进行++,再计算表达式
        int a2 = 10;
        int b2 = ++a2 * 10;
        cout << b2 << endl;

        //后置递增先计算表达式,后对变量进行++
        int a3 = 10;
        int b3 = a3++ * 10;
        cout << b3 << endl;

        system("pause");

        return 0;
}

总结:前置递增先对变量进行++,再计算表达式,后置递增相反

赋值运算符

**作用:**用于将表达式的值赋给变量

赋值运算符包括以下几个符号:

[td]
运算符术语示例结果
=赋值a=2; b=3;a=2; b=3;
+=加等于a=0; a+=2;a=2;
-=减等于a=5; a-=3;a=2;
*=乘等于a=2; a*=2;a=4;
/=除等于a=4; a/=2;a=2;
%=模等于a=3; a%2;a=1;

示例:

[color=var(--hltools-color)][size=1.15em]C++


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
int main() {

        //赋值运算符

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

        // +=
        a = 10;
        a += 2; // a = a + 2;
        cout << "a = " << a << endl;

        // -=
        a = 10;
        a -= 2; // a = a - 2
        cout << "a = " << a << endl;

        // *=
        a = 10;
        a *= 2; // a = a * 2
        cout << "a = " << a << endl;

        // /=
        a = 10;
        a /= 2;  // a = a / 2;
        cout << "a = " << a << endl;

        // %=
        a = 10;
        a %= 2;  // a = a % 2;
        cout << "a = " << a << endl;

        system("pause");

        return 0;
}
比较运算符

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

比较运算符有以下符号:


运算符术语示例结果
==相等于4 == 30
!=不等于4 != 31
<小于4 < 30
>大于4 > 31
<=小于等于4 <= 30
>=大于等于4 >= 11

示例:

[color=var(--hltools-color)][size=1.15em]C++


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int main() {

        int a = 10;
        int b = 20;

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

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

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

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

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

        cout << (a <= b) << endl; // 1
        
        system("pause");

        return 0;
}

注意:C和C++ 语言的比较运算中, “真”用数字“1”来表示, “假”用数字“0”来表示。

逻辑运算符

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

逻辑运算符有以下符号:


运算符术语示例结果
!!a如果a为假,则!a为真; 如果a为真,则!a为假。
&&a && b如果a和b都为真,则结果为真,否则为假。
||a || b如果a和b有一个为真,则结果为真,二者都为假时,结果为假。

**示例1:**逻辑非




1
2
3
4
5
6
7
8
9
10
11
12
13
//逻辑运算符  --- 非
int main() {

        int a = 10;

        cout << !a << endl; // 0

        cout << !!a << endl; // 1

        system("pause");

        return 0;
}

总结: 真变假,假变真

**示例2:**逻辑与




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
//逻辑运算符  --- 与
int main() {

        int a = 10;
        int b = 10;

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

        a = 10;
        b = 0;

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

        a = 0;
        b = 0;

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

        system("pause");

        return 0;
}

总结:逻辑与运算符总结: 同真为真,其余为假

**示例3:**逻辑或




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//逻辑运算符  --- 或
int main() {

        int a = 10;
        int b = 10;

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

        a = 10;
        b = 0;

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

        a = 0;
        b = 0;

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

        system("pause");

        return 0;
}

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|i编程 ( 陕ICP备2025058491号-1 )

GMT+8, 2025-5-5 06:31 , Processed in 0.142669 second(s), 23 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表