C++基础入门(三)—— 运算符

C++系列内容的学习目录 → \rightarrow C++学习系列内容汇总

1. 运算符概述

  运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。

  运算符的作用: 用于执行代码的运算。

  C++ 内置了丰富的运算符,并提供了以下类型的运算符:算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、杂项运算符。

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

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

2. 算术运算符

  算术运算符的作用:用于处理四则运算 。

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

运算符术语示例结果
+正号+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;

  加减乘除运算的实例如下所示。

#include<iostream>
using namespace std;

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;
	//cout << a3 / b3 << endl;  // 错误,两个数相除,除数不能为0

	double d1 = 0.5;
	double d2 = 0.22;
	cout << d1 / d2 << endl;  //两个小数可以相除,运算的结果也可以是小数

	system("pause");

	return 0;

}

13
7
30
3
0
2.27273

  取模运算的实例如下所示。

#include<iostream>
using namespace std;

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;  //错误,两个数相除,除数不能为0,所以也不能进行取模运算

	//double d1 = 3.14;
	//double d2 = 1.1;
	//cout << d1 % d2 << endl;  //两个小数是不可以进行取模运算的

	system("pause");

	return 0;

}

1
10

  前置、后置递增运算的实例如下所示。

#include<iostream>
using namespace std;

int main()
{

	//1.前置递增
	int a1 = 10;
	++a1;  //让变量+1
	cout << "a1 = " << a1 << endl;

	//2.后置递增
	int b1 = 10;
	b1++;  //让变量+1
	cout << "b1 = " << b1 << 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;

}

a1 = 11
b1 = 11
a2 = 11
b2 = 110
a3 = 11
b3 = 100

前置和后置递增的区别:

  • 前置递增:先让变量+1,然后进行表达式运算;
  • 后置递增:先进行表达式运算,然后让变量+1。

  前置、后置递减运算的实例如下所示。

#include<iostream>
using namespace std;

int main()
{

	//1.前置递减
	int a1 = 10;
	--a1;  //让变量-1
	cout << "a1 = " << a1 << endl;

	//2.后置递减
	int b1 = 10;
	b1--;  //让变量-1
	cout << "b1 = " << b1 << 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;

}

a1 = 9
b1 = 9
a2 = 9
b2 = 90
a3 = 9
b3 = 100

3. 赋值运算符

  赋值运算符的作用: 用于将表达式的值赋给变量。

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

运算符术语示例结果
=赋值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;
	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;

}

a = 100
a = 12
a = 8
a = 20
a = 5
a = 0

4. 比较运算符

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

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

  比较运算符有以下符号:

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

  实例如下所示。

#include<iostream>
using namespace std;

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;

}

0
1
1
0
1
0

5. 逻辑运算符

  逻辑运算符的作用: 用于根据表达式的值返回真值或假值。

  逻辑运算符有以下符号:

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

  逻辑与的实例如下所示。

#include<iostream>
using namespace std;

int main()
{

	//逻辑运算符:与 &&
	int a = 10;  //在C++中,除了0都为真,所以a=10为真,即1
	int b = 10;
	cout << (a&&b) << endl;

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

	a = 0;
	b = 10;
	cout << (a&&b) << endl;

	system("pause");

	return 0;

}

1
0
0

  逻辑或的实例如下所示。

#include<iostream>
using namespace std;

int main()
{

	//逻辑运算符:或 || 
	int a = 10;  //在C++中,除了0都为真,所以a=10为真,即1
	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;

}

1
1
0

  逻辑非的实例如下所示。

#include<iostream>
using namespace std;

int main()
{

	//逻辑运算符:非 !
	int a1 = 10;  //在C++中,除了0都为真,所以a=10为真,即1
	cout << !a1 << endl;
	cout << !!a1 << endl;

	system("pause");

	return 0;

}

0
1

  逻辑运算符的总结

  • 对于逻辑与运算:同真为真,其余为假;
  • 对于逻辑或运算:同假为假,其余为真;
  • 对于逻辑非运算:真变假,假变真。

6. 总结

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值