文档介绍:该【运算符和表达式 】是由【kuailonggua】上传分享,文档一共【65】页,该文档可以免费在线阅读,需要了解更多关于【运算符和表达式 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。与其他高级语言相比,C语言的运算符非常的丰富,这是C语言的特征之一。
运算符是一种向编译程序说明一个特定的数学或逻辑运算的符号,运算符有优先级、结合性等特性。在C语言中,有些不同性质的运算采用了相同的运算符,这为我们正确掌握运算符的运算规律带来了一定难度。
要掌握表达式中每种运算符的功能、优先级、结合性及在使用中的注意事项。
运算符与运算符的分类
C语言运算符按其功能分为:算术运算符、关系运算符、逻辑运算符、位运算符、条件运算符、逗号运算符、赋值运算符、指针运算符等;
按其所在表达式中参与运算的操作数的数目来分,可分为:单目运算符、双目运算符和三目运算符。
算术运算符
,其中+、-、*、/的含义与其他高级语言含义相同。算术运算符几乎可以用于全部的C语言数据类型。
+加法 -减法或单目取负 *乘法 /除法
%取余(模)--减1 + +加1 运算符“/”① 两个整数相除,结果为整数,其值是商的整数部分,不允许四舍五入。② “0”不能做除数。
#include <>void main( ){ int x,y,z; x=5/2; y=-5/2; z=6/(-4); printf(″x=%d,y=%d,z=%d″,x,y,z);}程序运行结果为:x=2,y=-2,z=-1
(2) 运算符“%”① 只适用于整型数据。② %表示求两数相除后得到的余数。③ 余数的符号与被除数的符号相同。如:10%5=0; 4%6=4; -10%3=-1; 6%(-4)=2本例中-10%3结果的符号应与被除数的符号相同,为负号。而6%(-4) 结果的符号也应遵循上述约定,为正号。
(3) 运算符“++”和“--”运算符“++”和“--”是C语言中经常要用到的运算符,表示给它的操作数加1或减1,例如: a=a+1相当于a++或++a; a=a-1相当于a--或--a;
可见,“++”和“--”这两个运算符既可放在操作数之前,又可放在操作数之后,这两种表达形式在这里没有区别,但是当增1和减1运算符在表达式中出现时,这两种写法是有差别的。如果运算符在操作数前面,即++a/--a这种形式,则表达式在引用该操作数之前,先要对该操作数加1或减1运算,如果运算符在操作数之后,即a++/a--这种形式,则先引用该操作数,再对它加1或减1运算。
例如:a=10;b=++a;此时,在第二个表达式中,先计算a自增运算,结果为11,再赋值给b,所以b=11,但换成下面的写法:a=10;b=a++;对于第二个表达式,是先把a的值赋给b,所以有b=10,再对a进行自增运算,此时 a=11。
(4) 运算符的执行优先次序
,对优先级别相同的运算符,程序按从左至右的顺序进行,除非用圆括号改变运算符的执行次序。
2. 关系运算符
关系运算符中的“关系”一词,是指数值与数值之间的关系,即“比较”关系。既然是比较的关系,因此我们可以得知,比较的结果要么为真,要么为假,所以关系运算与逻辑运算具有相同的结果,“1”表示真,“0”表示假。