首页 理论教育 C/C++程序设计-算术运算符和自加自减运算符

C/C++程序设计-算术运算符和自加自减运算符

时间:2023-12-04 理论教育 版权反馈
【摘要】:3.1.2自加自减运算符表3-2自加自减运算符如表3-2所示,自加运算符“++”和自减运算符“--”是C语言中使用方便且效率很高的两个运算符,它们是单目运算符,运算顺序从右至左,这一点不同于四则算术运算符的结合性。

C/C++程序设计-算术运算符和自加自减运算符

3.1 算术运算符

最常用的运算符就是算术运算符,其使用方法和作用跟数学中的算术运算符号一样。基本的算术运算符有:加法运算符、减法运算符、乘法运算符和除法运算符,另外还包括取模运算符(即求余运算符)和自加自减运算符,如表3-1所示。

表3-1 基本算术运算符

img36

3.1.1 四则算术运算符

四则算术运算符是双目运算符,例如加法运算符“+”左右两边需要结合两个操作数参与运算,这种类型的运算符称为双目运算符;如果运算符只结合一个操作数参与运算,这种类型的运算符称为单目运算符;如果一个运算符需要结合三个操作数参与运算,这种类型的运算符称为三目运算符。

下面通过一些例子的讲解,说明上述各种运算符的使用方法和使用时需要注意的问题。

(1)加、减和乘运算

例如:

int a,b,c;

a=10;

b=5;

c=a+b*3-1;

运行结果:

c的值是24。

分析:

因为“*”的优先级高于“+”和“-”,按照从左至右的结合性,所以先计算b*3为15,再计算a+15为25,最后计算25-1,得到结果c的值是24。

(2)取模运算

例如:

img37

取模运算“%”,要求运算符两边必须都是整数,如果任何一边不是整数,程序就会报错。浮点数取模运算可以调用数学库函数fmod()求解,具体参看附录。

(3)整除运算

例如:

img38

当“/”运算符用于两个整数相除时,如果商含有小数部分,将被截掉舍弃,不进行四舍五入运算,仅保留整数部分。

(4)浮点除运算

例如:

img39

要进行通常意义的浮点除运算,至少应保证除数或被除数中有一个是浮点数。对于整数常量可以在运算数后补上小数点,使其作为双精度常量参加运算;对于整型变量可以强制转换为浮点型变量后再参与运算。

3.1.2 自加自减运算符

表3-2 自加自减运算符(www.xing528.com)

img40

如表3-2所示,自加运算符“++”和自减运算符“--”是C语言中使用方便且效率很高的两个运算符,它们是单目运算符,运算顺序从右至左,这一点不同于四则算术运算符的结合性。

这两个运算符有前置和后置两种形式。所谓前置是指运算符在操作数的前面,后置是指运算符在操作数的后面。

(1)自加自减单独运算

例如:

img41

分析结果:

无论是前置还是后置,这两个运算符的作用都是使操作数的值加1或减1,但是对于由操作数和运算符组成的表达式的值的影响却完全不同,请看下例的说明。

(2)表达式中自加前置运算

例如:

img42

分析结果:

i的值是6,x的值是6,y的值是6。这是表达式中自加运算符的前置形式,变量i先加1后再参与运算。

(3)表达式中自加后置运算

例如:

img43

分析结果:

x的值是5,i的值是6,y的值是6。这是表达式中自加运算符的后置形式,变量i先以当前值参与运算后再加1。

提示:

由于自加运算符“++”和自减运算符“--”内含了赋值运算,所以运算对象只能是变量,不能作用于常量和表达式,例如5++、(x+y)++都是不合法的。

【例3.1】计算自加自减表达式的值。

程序如下:

img44

img45

运行结果如图3-1所示。

img46

图3-1

分析:

表达式中自加前置运算是先自加1,再使用加1后的值参与运算,表达式中后置运算是先使用当前值参与运算后再自加1。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈