目录
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:
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;
//两个小数可以相除
double d1 = 0.5;
double d2 =0.22;
cout << d1 / d2 << endl;
system("pause");
return 0;
}
示例2:
int main()
{
//取模运算
int a1 = 10;
int b1 = 3;
cout << a1 % b1 << endl;
int a2 = 10;
int b2 = 20;
cout << a2 % b2 << endl;
int a3 = 10;
int b3 = 0;
//两个相除除数不可以为零,所以也做不了取模运算
//cout << a3 % b3 << endl;
//两个小数也不可以做取模运算
double d1 = 3.1;
double d2 = 1.2;
//cout << d1 % d2 << endl;
system("pause");
return 0;
}
示例3:
int main()
{
//1、前置递增
int a = 10;
++a; //让变量+1;
cout << "a = " << a << endl;
//2、后置递增
int b = 10;
b++; //让变量+1;
cout << "b = " << b << endl;
//3、前置和后置的区别
//前置递增 先让变量+1 然后进行表达式运算
int a2 = 10;
int b2 = ++a2 * 10;
cout << "a2 = " << a2 << endl;
cout << "b2 = " << b2 << endl;
//后置递增 先进性表达式运算,后让变量+1
int a3 = 10;
int b3 = a3++ * 10;
cout << "a3 = " << a3 << endl;
cout << "b3 = " << 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; |
示例:
int main()
{
//赋值运算符
// =
int a =10;
a = 100;
cout << "a = " << a << endl;
// +=
a = 10;
a += 2;
cout << "a = " << a << endl;// a = 12;
// -=
a = 10;
a -= 2;
cout << "a = " << a << endl;// a = 8;
// *=
a = 10;
a *= 2;
cout << "a = " << a << endl;// a = 20;
// /=
a =10;
a /= 2;
cout << "a = " << a << endl;// a = 5;
// %=
a =10;
a %= 3;
cout << "a = " << a << endl;// a = 1;
system("pause");
return 0;
}
3.3 比较运算符
作用:用于表达式的比较,并返回一个真值或假值
比较运算符有以下符号:
运算符 | 术语 | 示例 | 结果 |
---|---|---|---|
== | 相等于 | 4 == 3 | 0 |
!= | 不等于 | 4 != 3 | 1 |
< | 小于 | 4 < 3 | 0 |
> | 大于 | 4 > 3 | 1 |
<= | 小于等于 | 4 <= 3 | 0 |
>= | 大于等于 | 4 >= 1 | 1 |
示例:
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;
}
3.4 逻辑运算符
作用:用于根据表达式的值返回真值或假值
逻辑运算符有以下符号:
运算符 | 术语 | 示例 | 结果 |
---|---|---|---|
! | 非 | !a | 如果a为假,则a为真;如果a为真,则a为假; |
&& | 与 | a && b | 如果a和b都为真,则结果为真,否则为假; |
|| | 或 | a || b | 如果a和b都有一个为真,则结果为真,二者都为假时,结果为假。 |
示例:逻辑非
int main()
{
//逻辑运算符 非!
int a = 10;
//在C++中,除了0 都为真
cout << !a << endl;
cout << !!a << endl;
system("pause");
return 0;
}
示例:逻辑与
int main()
{
//逻辑运算符 与 &&
int a = 10;
int b = 10;
cout << ( a && b ) << endl;
int c = 1;
int d = 0;
cout << ( c && d ) << endl;
//同真为真,其余为假
system("pause");
return 0;
}
示例:逻辑或
int main()
{
// 逻辑运算符 或 ||
int a1 = 1;
int b1 = 1;
cout << ( a1 || b1 ) << endl;
int a2 = 1;
int b2 = 0;
cout << ( a2 || b2 ) << endl;
int a3 = 0;
int b3 = 0;
cout << ( a3 || b3 ) << endl;
//逻辑或 同假为假 其余为真
system("pause");
return 0;
}