Day 003
运算符
作用:用于执行代码的运算。
| 运算符类型 | 作用 |
|---|---|
| 算术运算符 | 用于处理四则运算 |
| 赋值运算符 | 用于将表达式的值给变量 |
| 比较运算符 | 用于表达式的比较,并排返回一个真值或假值 |
| 逻辑运算符 | 用于表达式的值返回真值 或假值 |
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,后进行表达式运算;后置递增是先进行表达式运算,后让变量+1。
3.2 赋值运算符
作用:用于将表达式的值赋给变量
#include <iostream>
using namespace std;
int main()
{
//赋值运算符:= += -= *= /= %=
// 1. =
int a = 10;
a = 2;
cout << "a=" << a << endl;//重新赋值,结果为2。
// 2. +=
a = 10;
a += 2;
cout << "a=" << a << endl;//a = a + 2,结果为12。
// 3. -=
a = 10;
a -= 2;
cout << "a=" << a << endl;//a = a - 2,结果为8。
// 4. /=
a = 10;
a /= 2;
cout << "a=" << a << endl;//a = a / 2,结果为5。
// 5. %=
a = 10;
a %= 2;
cout << "a=" << a << endl;//a = a % 2,余数为0,故结果为0。
// 6. *=
a = 10;
a *= 2;
cout << "a=" << a << endl;//a = a * 2,结果为20。
return 0;
}
3.3 比较运算符
作用:用于表达式的比较,并返回一个真值或假值
#include <iostream>
using namespace std;
int main()
{
//比较运算符:== != < > <= >=
// 1. == 相当于
int a = 10;
int b = 20;
cout << (a == b) << endl;//0
// 2. != 不等于
cout << (a != b) << endl;//1
// 3. < 小于
cout << (a < b) << endl;//1
// 4. > 大于
cout << (a > b) << endl;//0
// 5. <= 小于等于
cout << (a <= b) << endl;//1
// 6. >= 大于等于
cout << (a >= b) << endl;//0
return 0;
}
3.4 逻辑运算符
作用:用于根据表达式的值返回真值或假值。
| 运算符 | 术语 | 示例 | 结果 |
|---|---|---|---|
| ! | 非 | !a | 如果a为假,则!a为真;如果a为真,则!a为假。 |
| && | 与 | a&&b | 如果a和b都为真,则结果为真,否则为假。 |
| || | 或 | a||b | 如果a和b有一个为真,则结果为真,二者都为假时,结果为假。 |
| ---- |
#include <iostream>
using namespace std;
int main()
{
// 1. 逻辑运算符 非:!
int a = 10;
//在C++中,非零都为真,只有0为假。
cout << !a << endl;//0
cout << !!a << endl;//1
// 2. 逻辑运算符 与:&&
int a1 = 10;
int b1 = 10;
cout << (a1 && b1) << endl;//1
int a2 = 0;
int b2 = 10;
cout << (a2 && b2) << endl;//0
int a3 = 0;
int b3 = 0;
cout << (a3 && b3) << endl;//0
//同真为真,其余为假。
// 3.逻辑运算符 或:||
int a4 = 10;
int b4 = 0;
cout << (a4 || b4) << endl;//1
int a5 = 10;
int b5 = 10;
cout << (a5 || b5) << endl;//1
int a6 = 0;
int b6 = 0;
cout << (a6 || b6) << endl;//0
//有真为真,同假为假。
return 0;
}

浙公网安备 33010602011771号