资源描述:
《运算符与表达式2》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三章运算符和表达式3.1c语言运算符和表达式简介3.2赋值运算符和赋值表达式3.3算术运算符和算术表达式3.4关系运算符和关系表达式3.5逻辑运算符和逻辑表达式3.6逗号运算符和逗号表达式3.7条件运算符和条件表达式3.8位运算符和位运算表达式3.9sizeof运算符3.10运算符的优先级和结合性3.1c语言运算符和表达式简介运算符是告诉编译程序执行特定操作的符号。根据运算符所操作的操作数的数目,可把运算符分为单目运算符、双目运算符和三目运算符,另外还可以根据运算符的作用进行分类,运算符按作用分类如表3-1所示:运算
2、符名称运算符算术运算符+,-,*,/,%,++,--关系运算符>, <, >= ,<= , == , !=逻辑运算符&&,
3、
4、 ,!位运算符&,
5、,~,^,<<,>>赋值运算符简单赋值运算符=复合算术赋值运算符+=,-=,*=,/=,%=复合位运算赋值运算符&=,
6、=,^=,>>=,<<=条件运算符?:逗号运算符,指针运算符*,&求字节数运算符Sizeof强制类型转换(类型)成员运算符->,.下标运算符[]括号运算符()表3-1c语言运算符在使用运算符的时候要注意以下几点:掌握运算符的功能。理解运算符和操作数之间的关
7、系。这里分为两个方面:一方面是操作数的个数,另一方面是操作数的类型。区分运算符的优先级别。掌握结合性。注意运算结果的类型,尤其要注意当操作数的类型不同时结果值的类型。表达式的定义:常量、变量和函数是一个表达式。运算符与上述各项的组合是一个表达式。运算符与表达式的组合是一个表达式。表达式可以看作是一种复合数据,它也具有数据的一般属性:值和类型。它们等于计算表达式结果的值类型。3.2赋值运算符和赋值表达式C语言的赋值运算符用“=”表示,由赋值运算符组成的表达式称为赋值表达式,它的一般形式如下:变量=表达式它的作用是把右侧表
8、达式的值赋给左侧变量。在使用赋值表达式的时候应注意以下几点:赋值表达式是右结合性运算符,其运算次序应从右至左,例如a=b=3,相当于a=(b=3),即先进行b=3的赋值运算,此时产生的新的表达式根据赋值运算的定义,可以赋给另一个变量,因此再进行a=b的赋值运算,最终a和b的值都为3,且都为整型。这也非常适用于变量的初始化。赋值表达式不是赋值语句,但根据c语言的规定,任何表达式的末尾加上分号后就构成语句,因此a=b=3;是一个语句。“=”跟数学上的表达不同,赋值符号没有等于的含义,在c语言中“==”表示等于。3.3算术运
9、算符和算术表达式算术运算符说明举例+加法或正值2+3,+3-减法或负值5-3,-5*乘法2*4/除法10.5/3,5/3%模运算3%2,25%(-2)++变量自增1i++,++i--变量自减1j--,--j表3-4算术运算符由算术运算符和括号将操作数连接起来的式子称为算术表达式。操作数可以包括常量、变量、函数等。高()++、--*、/、%+、-低图3-1算术运算符的优先级自增(++)和自减(--)运算是c语言的一个特色。它们是单目运算符,具有右结合性。对于赋值表达式i=i+1可以写成i++或者++i,习惯上称为“后加加
10、、先加加”。对于赋值表达式i=i-1可以写成i--或者--i,习惯上称为“后减减、先减减”。i++和++i本身都是一个表达式,其作用都相当于i=i+1,但两者在执行次序上是有差别的,“++”放在变量前面,那么在运算之前,变量先完成自增运算;如果“++”放在变量后面,那么自增运算是在变量参加表达式的运算后再运算。C语言中,整型、实型、字符型的数据之间可以混合运算,在进行运算时,不同类型的数据要先转换成同一类型的数据然后再进行计算。自动转换发生在不同数据类型的量混合运算时,由编译系统自动完成。自动转换遵循以下规则。(1)若
11、参与运算量的类型不同,则先转换成同一类型,然后进行运算。(2)转换按数据长度增加的方向进行,以保证精度不降低。如int型和long型运算时,先把int型转成long型后再进行运算。(3)所有的浮点运算都是以双精度进行的,即使仅含float型单精度量运算的表达式,也要先转换成double型,再作运算。(4)char型和short型参与运算时,必须先转换成int型。3.4关系运算符和关系表达式关系运算符用于比较运算。包括大于(>)、小于(<)、等于(==)、大于等于(>=)、小于等于(<=)和不等于(!=)六种。它们都是双
12、目运算符,具有左结合性.由关系运算符和其他表达式连接起来的式子称为关系表达式。关系运算是对两个运算量进行比较的一种运算,比较的结果分为“真”、“假”两种。如果式子成立则结果为“真”,在c语言中用“1”表示;如果式子不成立则结果为“假”,在c语言中用“0”表示。因此,关系表达式的类型为整型。3.5逻辑运算符和逻辑表达式运算符名称基本