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; n=2; |
示例:
int main()
{int a = 10;int b = 3;cout << a + b << endl;cout << a - b << endl;cout << a * b << endl;//两个整数相除依然是整数,小数部分会被去除cout << a / b << endl; //输出3int a1 = 10;int b1 = 20;cout << a1 / b1 << endl; //依然只保留整数位,输出 0int a2 = 10;int b2 = 0;//0不能做除数//cout << a2 / b2 << endl;//两个小数可以相除double a3 = 0.5;double b3 = 0.25;//运算的结果也可以是小数cout << a3 / b3 << endl;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 |
代码示例
#include <iostream>
using namespace std;int main()
{// 赋值运算int a = 10;cout << "a = " << a << endl;a += 2; // a = a + 2;cout << "a = " << a << endl;a -= 2; // a = a + 2;cout << "a = " << a << endl;a *= 2; // a = a + 2;cout << "a = " << a << endl;a /= 2; // a = a + 2;cout << "a = " << a << endl;a %= 2; // a = a + 2;cout << "a = " << a << endl;return 0;
}
运行截图
3.3 比较运算符
运算符
运算符 | 术语 | 示例 | 结果 |
---|---|---|---|
== | 相等于 | 4 == 3 | 0 |
!= | 不等于 | 4 != 3 | 1 |
小于 | 4 < 3 | 0 | |
> | 大于 | 4 > 3 | 1 |
<= | 小于等于 | 4 <= 3 | 0 |
>= | 大于等于 | 4 >= 3 | 1 |
代码示例
#include <iostream>
using namespace std;// 比较运算符int main()
{int a = 4;int b = 3;// a == bcout << (a == b) << endl;// a != bcout << (a != b) << endl;// a < bcout << (a < b) << endl;// a > bcout << (a > b) << endl;// a >= bcout << (a >= b) << endl;// a <= bcout << (a <= b) << endl;return 0;
}
运行截图
3.4 逻辑运算符
作用:用于根据表达式的值返回真或假值
运算符
运算符 | 术语 | 示例 | 结果 |
---|---|---|---|
! | 非 | !a | 如果a为假,则!a为真;如果a为真,则!a为假。 |
&& | 与 | a && b | 如果a和b都为真,则结果为真,否则为假。 |
|| | 或 | a || b | 如果a和b有一个为真,则结果为真,二者都为假时,结果为假。 |
代码示例1:逻辑非
#include<iostream>using namespace std;int main()
{int a = 10;// 在c++中,除了0都为真cout << !a << endl;cout << !!a << endl;return 0;
}
代码示例2:逻辑与
#include<iostream>using namespace std;int main()
{int a = 10;int b = 7;// 两个为真才为真cout << ((a > 0) && (b > 0)) << endl;// 一个为假,则为假cout << ((a > 10) && (b > 0)) << endl;return 0;
}
同真为真,否则为假。
代码示例3:逻辑或
#include<iostream>using namespace std;int main()
{int a = 10;int b = 7;// 一个为真,则为真cout << ((a > 7) || (b > 7)) << endl;// 两个为假,才为假cout << ((a > 10) || (b > 10)) << endl;return 0;
}