栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【C++系列】NO.7 C++运算符

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【C++系列】NO.7 C++运算符

C++语言中运算符和表达式数量之多,在高级语言中是少见的。正是丰富的运算符和表达式使C++语言功能十分完善。这也是C++语言的主要特点之一。

2.1 算术运算符

下表显示了 C++ 支持的算术运算符。

假设变量 A 的值为 10,变量 B 的值为 20,则:

运算符描述实例
+把两个操作数相加A + B 将得到 30
-从第一个操作数中减去第二个操作数A - B 将得到 -10
*把两个操作数相乘A * B 将得到 200
/分子除以分母B / A 将得到 2
%取模运算符,整除后的余数B % A 将得到 0
++自增运算符,整数值增加 1A++ 将得到 11
--自减运算符,整数值减少 1A-- 将得到 9
int a=10,b=5;
cout<<"a+b:"<
2.1.1 模运算符
cout<<5%2;
//运行结果:1
//操作对象只能是int
2.1.2 除法运算符

C++语言的除法运算符有一些特殊之处,即如果a、b是两个整数类型的变量或常量,那么a/b的值是a除以b的商。例如, 5/2的值是2,而不是2.5,而5.0/2或5/2.0的值是2.5。

2.1.3 自增自减运算符

1.自增运算符。例如,x++表示在使用x之后,使x的值加1,即x=x+1;++x表示使用x之前,先使x的值加1,即x=x+1。

2.自减运算符。例如,x--表示在使用x之后,使x的值减1,即x=x-1;--x表示使用x之前,先使x的值减1,即x=x-1。

#include
using namespace std;
int main()
{  
   int x,y,z1,z2;
   x=7;y=8;
   z1=y-(x++);	
   //计算z1=1,计算后x=8
   z2=y-(++x);	
   //计算前x的值自加1,x的值为9,再与y求差
   cout<<"z1="< 

 2.1.4 复合算术赋值
//程序1
int a=0;
a+=1;    //输出1
cout<
2.2 关系运算符

下表显示了 C++ 支持的关系运算符。

假设变量 A 的值为 10,变量 B 的值为 20,则:

运算符描述实例
==检查两个操作数的值是否相等,如果相等则条件为真。(A == B) 不为真。
!=检查两个操作数的值是否相等,如果不相等则条件为真。(A != B) 为真。
>检查左操作数的值是否大于右操作数的值,如果是则条件为真。(A > B) 不为真。
<检查左操作数的值是否小于右操作数的值,如果是则条件为真。(A < B) 为真。
>=检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。(A >= B) 不为真。
<=检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。(A <= B) 为真。
int main()
{     
      int n1=4,n2=5,n3;
      n3=n1>n2;    //n3的值为0
      n3=n1 
2.3 逻辑运算符 

下表显示了 C++ 支持的关系逻辑运算符。

假设变量 A 的值为 1,变量 B 的值为 0,则:

运算符描述实例
&&称为逻辑与运算符。如果两个操作数都 true,则条件为 true。(A && B) 为 false。
||称为逻辑或运算符。如果两个操作数中有任意一个 true,则条件为 true。(A || B) 为 true。
!称为逻辑非运算符。用来逆转操作数的逻辑状态,如果条件为 true 则逻辑非运算符将使其为 false。!(A && B) 为 true。
int main()
{
	int a=1,b=0;
	cout<<(a&&b)< 

输出结果为0,1,1 

2.4 位运算符(初学者暂不教)

运算符

含 义

说明

例子

&

按位与

把参与运算的两个数对应的二进制位相与,只有对应的二进制均为1时,结果的对应位才为1,否则为0。

9&5中9可以写成(00001001),5可以写成(00000101),那么9&5的运算结果为0000 0001,输出结果是1。

|

按位或

把参与运算的两个数对应的二进制位相或,也就是只要对应的两个二进制位有一个为1时,其结果就为1。

9|5相当于00001001|00000101,运算结果是00001101,输出结果是13。

^

按位异或

把参与运算的两个数对应的二进制位相异或,当对应的二进制位上的数据字不相同时,结果对应为1时,否则为0。

1^1=0,1^0=1,0^0=0,0^1=1

9^5相当于00001001^00000101,运算结果是00001100,输出结果是12。 

取反

把运算数的各个二进制位按位求反。

~9相当于~(0000 1001),运算结果为1111 0110。

<<

左移

把“<<”左边的运算数的各二进制位向左移若干位,“<<”右边的数是指定移动的位数,高位丢弃,低位补0。

a<<4指把a的各二进位向左移动4位,如a=00000011(十进制为3),左移4位后为00110000(十进制48)。

>>

右移

把“>>”左边的运算数的各二进制位全部右移若干位,“>>”右边的数是指定移动的位数。

设a=15,a>>2表示把00001111右移为0000 0011(十进制为3)。 

需要说明的是,对于有符号数,在右移时,符号位将随同移动。当操作数为正数时,最高位为0,而为负数时,最高位为1。最高位是补0或补1取决于编译系统的规定。

2.5 运算的简写

在C++语言中,有一些运算可以简写,如下表所示。

简 写

含 义

简 写

含 义

a+=b

a=a+b

a&=b

a=a&b

a-=b

a=a-b

a|=b

a=a|b

a*=b

a=a*b

a^=b

a=a^b

a/=b

a=a/b

a<<=b

a=a<

a%=b

a=a%b

a>>=b

a=a>>b

2.6 常用库函数  加上头文件#include

函数名

格式

功能说明

例子

绝对值函数

abs(x)

求一个数x的绝对值

abs(-5)=5

自然数指数函数

exp(x)

求实数x的自然指数ex

exp(1)=2.718282

向下取整

floor(x)

求不大于实数x的最大整数

floor(3.14)=3

向上取整

ceil(x)

求不小于实数x的最小整数

ceil(3.14)=4

自然对数函数

log(x)

求实数x的自然数对数

log(1)=0

指数函数

pow(x,y)

计算xy,结果为双精度实数

pow(2,3)=8

随机函数

rand()

产生0到RAND-MAX之间的随机整数

平方根值函数

sqrt(x)

求实数x的平方根

sqrt(25)=5

下面为大家准备了一个表:

在下面各世界顶级的奖项中,为计算机科学与技术领 域作出杰出贡献的科学家设立的奖项是( )。

A. 沃尔夫奖 B. 诺贝尔奖 C. 菲尔兹奖
D. 图灵奖 E. 南丁格尔奖

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/353137.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号