2.3运算符和表达式学习培训模板课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《2.3运算符和表达式学习培训模板课件.ppt》由用户(林田)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2.3 运算 表达式 学习 培训 模板 课件
- 资源描述:
-
1、l2.3.1 2.3.1 l2.3.2 2.3.2 算术运算符算术运算符l2.3.3 2.3.3 赋值运算符赋值运算符l2.3.4 2.3.4 不同数据类型数据间的混合运算不同数据类型数据间的混合运算l2.3.5 2.3.5 关系运算符关系运算符l2.3.6 2.3.6 逻辑运算符逻辑运算符l2.3.7 2.3.7 增增1/1/减减1 1运算符运算符l2.3.8 2.3.8 位逻辑运算符位逻辑运算符l2.3.9 2.3.9 其它运算符其它运算符l表达式的概念表达式的概念 表达式是用运算符与圆括号将操作数连接起来所表达式是用运算符与圆括号将操作数连接起来所构成的式子。构成的式子。C语言的操作数包
2、括常量、变量、函数值语言的操作数包括常量、变量、函数值等。等。根据表达式进行运算,得到的数值即为表达式的解。根据表达式进行运算,得到的数值即为表达式的解。l表达式与简单语句表达式与简单语句 在在C语言中,在一个表达式的后面加上分号语言中,在一个表达式的后面加上分号“;”就构成了简单语句。就构成了简单语句。有意义的简单语句有意义的简单语句 无无意义的简单语句意义的简单语句 l种类及运算种类及运算 +-*/%注意注意:v 两个整数相除,结果仍为整数,商向下取整。两个整数相除,结果仍为整数,商向下取整。v 取模运算符取模运算符%实际上是数学运算的求余数运算,实际上是数学运算的求余数运算,其两个操作对
3、象都必须是整数其两个操作对象都必须是整数。v 减法运算符还可以用做单目运算符,是取负减法运算符还可以用做单目运算符,是取负v运算。其余操作符均为双目运算符。运算。其余操作符均为双目运算符。l算术表达式及算术运算符的优先级算术表达式及算术运算符的优先级 算术表达式就是用算术运算符和圆括号将算术表达式就是用算术运算符和圆括号将操作数连接起来的式子。算术表达式的解就是操作数连接起来的式子。算术表达式的解就是经过算术运算得到的表达式的值。经过算术运算得到的表达式的值。算术运算符的优先级与数学基本相同,即算术运算符的优先级与数学基本相同,即先乘除,后加减。取模运算的优先级与乘除相先乘除,后加减。取模运算
4、的优先级与乘除相同。函数和圆括号的优先级最高。同。函数和圆括号的优先级最高。注意:注意:v 算术表达式应能正确的表达数学公式。算术表达式应能正确的表达数学公式。例如:数学表达式是例如:数学表达式是 3+x3+x 2a 2a 相应的相应的C C语言表达式应该是什么呢?语言表达式应该是什么呢?v 算术表达式的结果应该不超过其所能表示的算术表达式的结果应该不超过其所能表示的 数的范围。例如,最大的整型数是数的范围。例如,最大的整型数是3276732767,那么,那么,32767+332767+3就不会是正确的结果。而就不会是正确的结果。而 32767L+332767L+3的结果是正确的,因为的结果是
5、正确的,因为32767L32767L是长是长 整型数。整型数。l算术运算符的结合性算术运算符的结合性 运算符的结合性是指如果一个操作数左边和运算符的结合性是指如果一个操作数左边和右边的两个运算符的优先级相同,应该优先计算右边的两个运算符的优先级相同,应该优先计算的操作符。的操作符。例如:例如:a+b-c 操作数操作数b左右的运算符左右的运算符+和和-的优先级相同,的优先级相同,那么,是先计算那么,是先计算b-c,还是先计算,还是先计算a+b呢?呢?C语言语言规定双目算术运算符的结合性是自左至右,也就规定双目算术运算符的结合性是自左至右,也就是是b先与左边先与左边a结合,再与右边结合,再与右边c
6、结合。所以是先结合。所以是先计算计算a+b,然后用,然后用a+b的结果减的结果减c。双目运算符的结合性与数学运算并无不同。双目运算符的结合性与数学运算并无不同。l普通赋值运算符普通赋值运算符 赋值表达式的一般形式是:赋值表达式的一般形式是:变量名变量名=表达式表达式 赋值语句的一般形式是:赋值语句的一般形式是:变量名变量名=表达式;表达式;赋值运算符的优先级小于算术运算符。赋值运算符的优先级小于算术运算符。赋值运算符的结合性是自右至左,赋值运算符的结合性是自右至左,以以a=b=2为例为例 l复合赋值运算符复合赋值运算符 把赋值运算符与算术、位逻辑、移位运算把赋值运算符与算术、位逻辑、移位运算符
7、放在一起,就构成复合赋值运算符。符放在一起,就构成复合赋值运算符。复合算术赋值运算符有复合算术赋值运算符有5个个+=、-=、*=、/=、%=。还有与移位和位逻辑结合的复合赋值运算符还有与移位和位逻辑结合的复合赋值运算符5个(个(=、&=、=、|=)。)。复合赋值运算符的使用规则是:复合赋值运算符的使用规则是:Xop=YXop=Y与与X=XopYX=XopY等价。等价。l 自动转换自动转换 l 强制转换强制转换 l 赋值表达式的类型转换赋值表达式的类型转换 自动转换自动转换 所谓所谓“自动转换自动转换”就是系统根据规则自动就是系统根据规则自动将将两个不同数据类型的运算对象转换成同一种数两个不同数
8、据类型的运算对象转换成同一种数据类型的过程。而且,对某些数据类型,即使据类型的过程。而且,对某些数据类型,即使是两个运算对象的数据类型完全相同,也要做是两个运算对象的数据类型完全相同,也要做转换,例如转换,例如float。float double 高 long unsigned char、short int 低 强制转换强制转换 在在C语言中,允许程序员根据自己的意愿将语言中,允许程序员根据自己的意愿将一种数据类型强制转换成另一种数据类型。一种数据类型强制转换成另一种数据类型。强制转换的格式为:强制转换的格式为:(数据类型名数据类型名)操作对象操作对象注意注意,强制转换并不改变操作对象的数据类
9、型,强制转换并不改变操作对象的数据类型和数值。例如,和数值。例如,(int)f的确切含义是将的确切含义是将f转换成转换成为整型值参与运算,而为整型值参与运算,而f本身的数据类型和数本身的数据类型和数值都没有任何改变。值都没有任何改变。赋值表达式的类型转换赋值表达式的类型转换 当赋值运算符左边的变量与赋值运算符右当赋值运算符左边的变量与赋值运算符右边的表达式的数据类型相同时,不需要进行数边的表达式的数据类型相同时,不需要进行数据类型的转换。据类型的转换。当赋值运算符左边的变量与赋值运算符右当赋值运算符左边的变量与赋值运算符右边的表达式的数据类型不相同时,系统负责将边的表达式的数据类型不相同时,系
10、统负责将右边的数据类型转换成左边的数据类型。此时,右边的数据类型转换成左边的数据类型。此时,会有两种情况产生,一种是转换以后会丢失数会有两种情况产生,一种是转换以后会丢失数据,另一种是转换以后不会丢失数据。这与赋据,另一种是转换以后不会丢失数据。这与赋值号两边的表达式的数据类型所占的字节数及值号两边的表达式的数据类型所占的字节数及存储表示方式有关。存储表示方式有关。(详细内容自学)详细内容自学)例例3.1#include stdio.hvoid main()int c;/*char c;*/c=B;printf(c=%c,c+a-A);运行结果:运行结果:c=b例例3.2#include st
11、dio.hvoid main()char c;int i=0 x3241;printf(i=%cn,i);c=i;printf(c=%dn,c);printf(i=%dn,i);运行结果运行结果i=Ac=65i=12865l 所谓关系运算,实际上就是比较两个数值所谓关系运算,实际上就是比较两个数值的大小。那么,比较两个数值的大小的运算符的大小。那么,比较两个数值的大小的运算符就是关系运算符。就是关系运算符。关系运算符有六个关系运算符有六个、=、z;j=xyz;printf(%2d,%2d,i,j);printf(%2d,zy=3);printf(%2d,y+z=z+1);运行结果为:运行结果为
12、:1,0,0,0,1 如果将如果将“与、或、非与、或、非”运算应用于逻辑值运算应用于逻辑值(逻辑真和逻辑假)则称为逻辑运算。(逻辑真和逻辑假)则称为逻辑运算。C语言中的逻辑运算符有三个:语言中的逻辑运算符有三个:逻辑与逻辑与&、逻辑或、逻辑或|和逻辑非和逻辑非!其中逻辑与和逻辑或是双目运算符,而逻辑其中逻辑与和逻辑或是双目运算符,而逻辑非是单目运算符。非是单目运算符。A B!A!B A&B A|B 逻辑真 逻辑真 逻辑假 逻辑假 逻辑真 逻辑真 逻辑真 逻辑假 逻辑假 逻辑真 逻辑假 逻辑真 逻辑假 逻辑真 逻辑真 逻辑假 逻辑假 逻辑真 逻辑假 逻辑假 逻辑真 逻辑真 逻辑假 逻辑假 逻辑运
展开阅读全文