收藏 分销(赏)

C语言PPT第三章.ppt

上传人:pc****0 文档编号:13176938 上传时间:2026-01-30 格式:PPT 页数:23 大小:248KB 下载积分:10 金币
下载 相关 举报
C语言PPT第三章.ppt_第1页
第1页 / 共23页
C语言PPT第三章.ppt_第2页
第2页 / 共23页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,成都信息工程学院软件工程系,前一页,课间休息,第,3,章 运算符和表达式,教学要求:,1.,掌握各种,运算符的优先级、结合方向。,2.,掌握各种,数据运算的运算符的运算,。,3.,掌握混合运算时的类型转换,规则。,3.1,概述,由运算符和运算数组成的式子是表达式。,不同类型的表达式按不同运算规则进行计算。,计算结果是不同类型的值。,1,表达式,2,运算符的分类,按运算符要求运算对象的个数分类:,单目运算符、双目运算符、三目运算符。,按其数据操作功能分类:,算术运算符、关系运算符、逻辑运算符、位运算符、,C,的特殊运算符。,3.2,算术运算符和算术表达式,算术运算符:,+-*/%,加 减 乘 除 整除取余,算术表达式:,由算术运算符组成的表达式。,运算对象:数值变量、常数、函数、表达式等,计算结果:数值,优先级:先乘、除、取余,后加、减,结合性:从左至右,注意事项:,(,1,),/,:,float,无特殊性,若两侧为整形,则其结果为整形。,算术表达式举例,5/2=2 5/-2=-2 -5/2=-2,(,2,),%,:条件:两侧均为整形;求余所得结果的正负随被除数。,5%2=1 5%-2=1 -5%2=-1,例,:,设,a=5,,,b=3,,,c=1,,,d=2,,,e=6,,,求:,a+b-c*d+e%d,=5+3 -2+0,=6,3.3,赋值运算符和赋值表达式,赋值运算符,“,=,”,:,格式,:,变量,=,表达式;过程:,1,、,2,、,3,。,复合赋值运算符:,+=,、,-=,、*,=,、,/=,、,%=,等,10,个。,格式:,V op=e,等价于:,V=V op e,例如:,a+=5,,,等价于,a=a+5,x*=y+8,等价于,x=x*(y+8),例,3-1,:,(1)x=(y=12)/4,y,值为,12,,,x,值为,3,,表达式的值为,3,(,2,),x=y=12/4,y,值为,3,,,x,值为,3,,表达式的值为,3,(,3,),x=(y=12/4),(y,值为,3,,,x,值为,3,,表达式的值为,3,(,4,),(x=y)=12/4,该赋值,运算符左边不是变量,而是一个表达式,3.4,自增与自减运算符,(,重点和难点,),+i,-i,先增(减),1,,再使用,i,i+,i-,先使用,i,,,再增(减),1,(1),单独使用时,+i;,等 价,i+;,等 价,i=i+1;,(3)j=i+;,i=4;,j=4;,i=4;,j=3;,若,i,的初始值为,3,(2)j=+i;,结合性:,自右向左,例:,i=2;j=-i+;,分析:,(,1,),+,、,-,、,+,(正号)、,-,(取负)是同级运算符,结合方向:,自右向左,。,(,2,),-i+,等价于,-,(,i+,),(,3,)对于括号内的自增运算,又要先使用,i,,再使,i,增加,1,。,运算结果:,i,的值为,3,,,j,的值为,-2,。,3.5,强制类型转换运算符,一般形式:(类型名)(表达式);,表达式要用括号括起来,.,如,1,:(,double)a;(,int)(x+y,);,如,2:,int,i1=1,,,i2=2,;,float f1,;,f1=,(,float,),i1/i2,;,结果,f1,为,0.5,注意:强制类型转换只是临时转换,原来变量的类型没有发生变化。,3.6,逗号运算符与逗号表达式,形式,:,逗号表达式,1,,逗号表达式,2,,,,逗号表达式,n,求值规则,:,从左至右依次计算各表达式的值,优先级,最低,结合性:,自左至右,表达式的值,最后一个表达式的值,。,例,3-2:,a b y,逗号表达式,y=a=4,b=5,a+b;4 5 4 9,y=(a=4,b=5,a+b);4 5 9 9,y=(a=4,b=5),a+b;4 5 5 9,y=a=(4,b=5),a+b;5 5 5 10,注意,:,C,语言常用逗号作为分隔符,例如,:,int,a=3,b=4,c=5;,printf(,%d,%d,%d,(a,b,c,);,printf(%d,%d,%d,a,(a,b,c),c,);,例,3-3,:,a =15,,,a*10,,,a+8,15*10,a=15,15+8,用法,:,用于给变量赋值。,例:,z=(x=15,y=x+25,y*x+30),z=?,z=630,表达式的值,=15+8,3.7,求字节数运算符,sizeof,sizeof,求其操作数所占用的字节个数。有两种形式,:,sizeof,(,类型标识,),sizeof,(,表达式,),例,3-4:char word1;,int,i,j,k;,i=,sizeof,(char);,j=,sizeof,(word1=A);,k=,sizeof,(“Hello World!”);,printf,(“size:char=%d,word1=%d,string=%d”,i,j,k);,3.8,取地址运算符:,&,作用,:,求某个变量的内存地址。,运算符“,&”,主要有三个方面的应用,:,一是标准输入函数,scanf,中获得要输入数据的变量的地址;,二是取变量的地址赋给指针变量;,三是函数调用时使用变量的地址作为实际参数。,3.9,运算符的优先级,当一个表达式中出现多个运算符时,表达式的求值运算按运算符的优先级别从高到低的顺序执行。在,C,语言中,将,44,种运算符的优先级从高到低共分为,15,个等级。如表,3.1,所示。,初等运算符,(),、,、,单目运算符,!、,+,、,、,+,、,、,(,类型,),、,&,算术运算符,、,/,、,%,+,、,关系运算符,、,=,=,、,!=,逻辑运算符,&,条件运算符,?:,赋值运算符,=,、,+=,、,=,、,=,、,/=,、,%=,逗号运算符,表,3-1,:,各类运算符的优先级,高,低,3.10,不同类型数据之间的混合运算,C,语言允许不同类型的数据进行运算,但在运算前要进行类型转换(自动)。,C,语言数据类型转换方式,算术表达式中的运算转换,赋值转换,输出转换,函数调用转换,表达式中的类型转换,(,隐式转换、自动转换),强制转换,(,要转换成的数据类型,)(,被转换的表达式,),1,算术表达式中的运算转换,int,unsigned,int,long,int,double,float,char,short,转换规则,:,存储长度较短,存储长度较长,总,趋势:,1.6(double),c+x*y=?,65(int),2(int),3.2(double),68.2(double),例,3-5,:,int,x=2;float y=1.6;char c=A,;,2,赋值转换,在,赋值时,将赋值符右边值的类型转换成与其左边变量类型一致的类型。,几种情况:,(1),实型,整型(字符型),取整数部分,去掉小数部分,(2),整型、字符型,实型,补足有效位,有符号变量,符号扩展,赋值符右边数据(,a,位),赋值符左边变量(,b,位),a=b,原样照赋,ab,截断高,a-b,位,送低,b,位,ab,无符号数据或正数,有符号数据,高,a-b,位全补,0,符号扩展,符号位为,0,,剩余的高位补,0,符号位为,1,,剩余的高位补,1,(3),对,char,、,int,、,short,、,long,、,unsigned,型数据,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服