3 运算符
作用:用于执行代码的运算
本章我们主要讲解以下几类运算符:
运算符类型 | 作用 |
---|
算术运算符 | 用于处理四则运算 |
赋值运算符 | 用于将表达式的值赋给变量 |
比较运算符 | 用于表达式的比较,并返回一个真值或假值 |
逻辑运算符 | 用于根据表达式的值返回真值或假值 |
3.1 算术运算符
作用:用于处理四则运算
算术运算符包括以下符号:
运算符 | 术语 | 示例 | 结果 |
---|
+ | 正号 | +3 | 3 |
- | 负号 | -3 | -3 |
+ | 加 | 10 + 5 | 15 |
- | 减 | 10 - 5 | 5 |
* | 乘 | 10 * 5 | 50 |
/ | 除 | 10 / 5 | 2 |
% | 取模(取余) | 10 % 3 | 1 |
++ | 前置递增 | 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 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 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;
double d1 = 0.5; double d2 = 0.25; cout << d1 / d2 << endl;
system("pause");
return 0; }
|
总结:在除法运算中,除数不能为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 24 25 26 27 28 29
| int main() {
int a1 = 10; int b1 = 3;
cout << 10 % 3 << endl;
int a2 = 10; int b2 = 20;
cout << a2 % b2 << endl;
int a3 = 10; int b3 = 0;
double d1 = 3.14; double d2 = 1.1;
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 23 24 25 26 27 28 29
| int main() {
int a = 10; a++; cout << a << endl;
int b = 10; ++b; cout << b << endl;
int a2 = 10; int b2 = ++a2 * 10; cout << b2 << endl;
int a3 = 10; int b3 = a3++ * 10; cout << b3 << endl;
system("pause");
return 0; }
|
总结:前置递增先对变量进行++,再计算表达式,后置递增相反
3.2 赋值运算符
作用:用于将表达式的值赋给变量
赋值运算符包括以下几个符号:
运算符 | 术语 | 示例 | 结果 |
---|
= | 赋值 | 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; |
示例:
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; cout << "a = " << a << endl;
a = 10; a -= 2; cout << "a = " << a << endl;
a = 10; a *= 2; cout << "a = " << a << endl;
a = 10; a /= 2; cout << "a = " << a << endl;
a = 10; a %= 2; cout << "a = " << a << endl;
system("pause");
return 0; }
|
3.3 比较运算符
作用:用于表达式的比较,并返回一个真值或假值
比较运算符有以下符号:
运算符 | 术语 | 示例 | 结果 |
---|
== | 相等于 | 4 == 3 | 0 |
!= | 不等于 | 4 != 3 | 1 |
< | 小于 | 4 < 3 | 0 |
> | 大于 | 4 > 3 | 1 |
<= | 小于等于 | 4 <= 3 | 0 |
>= | 大于等于 | 4 >= 1 | 1 |
示例:
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;
cout << (a != b) << endl;
cout << (a > b) << endl;
cout << (a < b) << endl;
cout << (a >= b) << endl;
cout << (a <= b) << endl; system("pause");
return 0; }
|
注意:C和C++ 语言的比较运算中, ==“真”用数字“1”来表示, “假”用数字“0”来表示。==
3.4 逻辑运算符
作用:用于根据表达式的值返回真值或假值
逻辑运算符有以下符号:
运算符 | 术语 | 示例 | 结果 |
---|
! | 非 | !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;
cout << !!a << endl;
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;
a = 10; b = 0;
cout << (a && b) << endl;
a = 0; b = 0;
cout << (a && b) << endl;
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;
a = 10; b = 0;
cout << (a || b) << endl;
a = 0; b = 0;
cout << (a || b) << endl;
system("pause");
return 0; }
|
逻辑==或==运算符总结: ==同假为假,其余为真==