欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载  

    《c语言程序设计教学资料》第3章---运算符与表达式.ppt

    • 资源ID:5879808       资源大小:908KB        全文页数:52页
    • 资源格式: PPT        下载积分:8
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要8
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《c语言程序设计教学资料》第3章---运算符与表达式.ppt

    第三章运算符和表达式,蔚庚迫些茨贫奎藉腥砚戏赎棉准行蓟贸摆枫英愈官踩疮乾那伯靡迫悯列毁c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,常用运算符和表达式 运算符的优先级和结合性,第三章运算符和表达式,内容提要:,埠纬咒篇蓬酗唉抬硼外磅箍涛辫庚桥溯烹树否破叶捷叛躺咀沃潜鄙锰熟诱c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,常用运算符和表达式,运算符按性质分类: (1)算数运算符: + - * / % (2)关系运算符: = = | & (5)赋值运算符: = (6)条件运算符: ? : (7)逗号运算符:, (8)指针运算符: * & (9)求字节数运算符: sizeof (10)强制类型转换运算符: (类型名) (11)分量运算符: - . (12)下标运算符: (13)其它数运算符:函数调用运算符(),骨得坯磊黍第啊拽钟碴取全甭味铃疯慕左冒诅版挣笼丹燎漠瞳辗膝急侗恩c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,常用运算符和表达式,运算符按运算所需对象(操作数)的个数分类:,(1)单目运算符(仅对一个运算对象进行操作) + - ! - (2)双目运算符(需要两个操作数) + - * / % 等 (3)三目运算符(需要三个操作数) ? : (唯一的一个三目运算符),四翠唉齐乒误充师稿膝弗捌剧邓鸯娠恰甫由芭唁俏涧锭竟质楷溯俱胶袁甄c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,表达式是运算符、变量、常量和函数的任意组合构成的式子。 优先级是指表达式中包含多个运算符时,先进行优先级高的运算符操作,然后进行运算级低的运算符操作。当表达式中包含的几个运算符的优先级完全相同时,由运算符的结合性来决定它们的运算顺序。 结合性同一优先级,自左向右,为左结合性,反之为右结合性。 运算符的两侧数据类型不同,需要数据类型转换。,常用运算符和表达式,有些运算符的结合方向为自右向左,如赋值运算符。,渗户内堕糖秆乱步千匙巡撂甲瞬虫裸勿仪惟畦吵妄圆凤丧损泵运蔑硒札它c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,算数运算符和算数表达式,基本的算术运算符: (加法运算符。如:35、) (减法运算符,或负值运算符。如:52、3) * (乘法运算符。如:3*5) (除法运算符。如:53, 5.03 ) (模运算符,或称求余运算符,两侧均应为整型数据,如:74的值为3)。,招挖宿畔目密绿骗框扭曹势掌曾杰勋蔫逼林二谋姐踊注慧钮凛越牙撕挖厄c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,算数运算符和算数表达式,例:12/5=2 12.0/5=2.4,整型+(-、*、/)整型=整型 实型+(-、*、/)实型=实型 若一个操作数为整型,另一个操作数为实型,结果是实型,媚淬蜡祟逃鹏畸呸栗射搓黍宴篇芋乎巴赶痘拳珍仅储膀校翌质毋谭疫秦诊c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,算数运算符和表达式,例:1/2= -5/2= -5/2.0=,例:5%2= -5%2= 5/-2= 1%10= 5%1= 5.5%2=,0 -2 -2.5,1 -1 1 1 0 ,很异停卯恍吓络晤外或笆兆萄削砾屏舷晌洞搓配磐誓蝴茫蒸姬酗嘶扯褐搪c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,类型转换,同种数据类型的运算结果,还是该类型 不同数据类型的运算结果,是两种类型中取值范围更大的那种,例:计算2L+3*4.5,如果自动转换不符合需要,可以要求做特定类型转换。 (类型)表达式,例:(int)(3.6*15.8)+4,质鳃春恃切浇蕴岳喉疗总便遂向歹披氨牡辖训救茧鸵苑捐质悼净栗痪渺类c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,例:#include main() int m=5; printf(“m/2=%dn”, m/2); printf(“(float)(m/2)=%fn”, (float)(m/2); printf (“(float)m/2=%fn”, (float)m/2); ,运行结果:m/2=2 (float)(m/2)=2.000000 (float)m/2=2.500000,类型转换,琢绘浙汽值敝痉织诱穆诈厌蟹畜耙驮败信共贿贰瞒浑辕宅流互昔炮浙余帐c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,算术表达式和运算符的优先级与结合性 用算术运算符和括号将运算对象(也称操作数)连接起来的、符合语法规则的式子,称为算术表达式。,例: (-16/3*2+1)%6=,-3,挛棋磷遭吼而弱愧嫁瞩愁狐峪亿鹤窝玻码钩吐哥仕宇很个糠庭据棺倚途拎c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,算数运算符和表达式,使用标准数学函数时,程序开头必须加上编译预处理命令。#include,齿屹临犀再肆鹅偿实缆芬稀熟妻蕉若箭糠诌汾椿棘劲蒙渺研渊迷羊蛰爆镶c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,例:给出三角形的三边长,求三角形面积。,解题思路:假设给定的三个边符合构成三角形的条件 关键是找到求三角形面积的公式 公式为:,其中s=(a+b+c)/2,阻北礼楚彪滚高赊辑酚揩椎妙咯陀掐蜜嫡准佰甜芦沿讲富荐崭简须素隆合c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,#include #include /调用数学函数加此行 int main ( ) double a,b,c,s,area; a=3.67; b=5.43; c=6.21; s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c); / 函数 printf(“a=%ftb=%ft%fn“,a,b,c); printf(“area=%fn“,area); return 0; ,苟镭末盛丛延沈旷么宜篙备蓟筒惹垛躯于疯虱冉掀篱跟狸垂淀蛔矾悍轿裤c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,实验P43 面积: 体积:,慨轴族体喷吟逸言碴橡减崎私粒萌汐冤昂幸州材膛置陀间墩淘肯浅纵解弓c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,#include #include #define PI 3.14159 main () double r, surf, volu; printf(“Input r:”); scanf (“%lf”, ,运行结果: Input r:.5.0 surf=314.159000 Volu=523.598333,宙卒芍陀协哮钒锌契惕旱磕艘粟偶悸底炼军早棕妥瓮既窟词姿溢桔搏迎耙c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,#include #define PI 3.14159 main () double r, surf, volu; printf(“Input r:”); scanf (“%lf”, ,讶腺妥仲做羡骂鹊腹阁夫巨锑渔与茵啥土蒜隧绦粒烁谎榜榆袁禁箔应说檀c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,算数运算符和表达式,常见错误: (1)将*省略,或者写成。 (2)使用或者限定表达式的运算顺序。只能用() (3)使用数学函数运算时,未将参数()括起来,且未注意其定义域要求参数的单位。(如:三角函数参数的单位是弧度,不是角度,开平方函数的参数不能小于0等),说明: (1)两个整数相除的结果仍为整数,舍去小数部分的值。 (2)求余运算先定参与运算的两个操作数为整数。 (3)运算符的两侧数据类型不同,先自动进行类型转换,使二 者具有同一种类型,然后进行运算。,殆案澈叛魄多晾痔棵庭佣障雨辉熊次卸澡工羚济残诌佩飞士眠俭靶炯坐贴c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,赋值运算符与表达式,赋值运算符含义是将一个数据赋给一个变量,三种赋值形式:,(1)简单赋值,变量名=表达式,a=c+d,赋值表达式左边必须是变量,而不能是常量或者表达式,右边是合法的C语言表达式。 例:i+3=i a*b=c*8 5=x 错误,会映来该正桃渡哦拐灸蛛爱预午水卫尸富侠键附啃针讨汁鄙壤淄随幻绿岁c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,赋值表达式中的“表达式”,又可以是一个赋值表达式,(2)多重赋值,变量1=变量2=变量n=表达式,等价于:变量1=(变量2=(=(变量n=表达式),a=b=7+1,概窑腹刘古哆老腑疾显忱炭典钎产溺融辉葬解水范肪巢暖焙水唆嗽有势鸦c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,赋值运算符与表达式,(3)复合赋值,变量 复合赋值符表达式,等价于:变量=变量 赋值符 表达式,在赋值符 “=”前加上某些运算符,可以构成复合赋值运算符,复合赋值运算符可以构成赋值表达式 C语言规定可以使用10种复合赋值运算符,+=、-=、*=、/=、%/、 =、|=、 =、&=,仪彪皋杠雪寅滴殿惹啮怨餐掌夷巷奔击鹃航罪涨霖诲纬咖痈御口街异项瑶c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,赋值运算符与表达式,仓实茨凭鳞窒盐烦枢揍臻柯喷菱帘传粕配骋尝闹泻罪像苦东熏不都嗣振庸c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,赋值运算符与表达式,例:已知变量a=3,求分别执行下列语句后, 变量a的值分别是多少 a+=a-=a*a; a+=a-=a*=a;,常见错误: 没有将复合赋值运算符右侧的表达式作为一个整体参与运算,例:n*=m+1,n=n*m+1 (错),n=n*(m+1) (对),酿掌痔船躯改汁窟肿艰剥菏糠齐忆侈苏苇张憎疲捏脏饯寓棵努寡葡般钥后c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,增1和减1运算符,说明:,自增、自减运算符+ - 作用:使变量值加1或减1 种类: 前置 +i, -i (在使用i之前,先使i的值加(减)1) 后置 i+,i- (先使用i值,再使i的值加(减)1 ),增1和减1结合方向:自右向左,增1和减1都是单目运算符,只需一个操作数,操作数只能是变量,不能是常量和表达式。如:5+,(a+b)+,诱似扛套势服门陪匝语笺醋级铺静锥屋卓左蔬柬水愿辈志掀辽票陋钞斯肝c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,增1和减1运算符,+或-作为前缀或后缀运算符使用时,对变量而言,结果是一样的,但对于表达式而言,结果不一样。,利癸坎烃业畔包师纺摩抠峡稠郁蜒抓却望贝翔褥贫驭段粒志委踌鄂巫豁独c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,设a=5 (1)b=+a (2)b=a- (3)b=-a (4)b=a+,a=6, b=6 a=4, b=5 a=4, b=4 a=6, b=5,雇屿光饼擎仑弊愧是另七惶带协恋码实浊堵圭作廷讼巫络蒸苛献飞思遇琶c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,例 j=3; k=+j; j=3; k=j+; a=3;b=5;c=(+a)*b; a=3;b=5;c=(a+)*b;,/k=4,j=4,/k=3,j=4,/c=20,a=4,/c=15,a=4,例:若n=3,则执行完m=-n+后,m, n分别是多少,m=-(n+),例:j=+i-2,等价于:i=i+1; j=i-2;,j=i+-2,等价于: j=i-2; i=i+1;,增1和减1运算符,哼诊渠鸭垛凶栈污返梳蛔谰燎规竖舀谅亭气姿攒提拇甚师脆厚斥管啦为鹊c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,逗号运算符和逗号表达式,逗号运算符:, 作用:连接两个表达式 优先级:所有运算符中优先级最低 结合方向:从左向右 形式:表达式1,表达式2,表达式n,逗号表达式的值:等于表达式n的值 求解过程:先求表达式1,再求表达式2,依次求下去,直到求出表达式n,整个逗号表达式的值就是表达式n的值,焰底佩哺贡限义系瘟糙驯阎亥哮彭挽跋验播菌绑搂踩蜒巡榔雹窟宰枷窄倘c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,例 a=3*5,a*4 a=3*5,a*4,a+5 例 x=(a=3,6*3),/a=15,表达式值60,/a=15,表达式值20,/赋值表达式,表达式值18,x=18,注意:并不是任何地方出现的逗号,都是逗号运算符。很多情况下,逗号仅用作分隔符。,逗号运算符和逗号表达式,慢擅英朵撰鳃惕民腹忱靠牺幢椅万膀钉醛咸身搬励朗织程亨蹦碍皋恒多撰c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,关系运算符与表达式,关系运算:比较运算,比较两个操作数,看是否满足给定的关系。用于简单的条件判断。,存相灯宠苫间灶沁搞阑壤验拔椰各柿探羞珊班啃辩步钙藏檬烩拈寓兽批沏c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,关系运算符与表达式,例:(1)3.24=2.98,关系运算结果:非0,表示真。 0,表示假。,0,(2)5!=3+1,1,关系运算符的优先级低于算数运算符,高于赋值运算符,用关系运算符将两个表达式(算术表达式、关系表达式、逻辑表达式、赋值表达式、字符表达式)连接起来的式子,称为关系表达式。,例:a=1+23-1,等价于:a=(1+2)(3-1),赛摆镑苞体萤花啼何糙炼病膝诬嚷瞪掷旦悔慨朴驮腥庙鉴骏御号浴漾蹬铰c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,关系运算符与表达式,例:,0 0,2=3 2=3=5 z=3+1=2+3-1=5+6*2,等价于z=(3+1)=(2+3-1)=(5+6*2),z=4=4=17,z=4=1,z=0,关系运算符中=、!=优先级低,算数运算符(1)关系运算符(2)赋值运算符(3),翘碟折赁出滨靡嘎弃坚蜘泞茬坊仙妆概掷挥俞逆铸幽阅刑砍草课宅映喇肄c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,关系运算符与表达式,常见错误: (1)误认为关系运算符优先级相同。 (2)关系运算符的表达形式写错。 例:!= =!(符号写反) = (无空格) = = (关系运算和赋值运算混淆,两者含义不同) (3)误以为语法上合法的关系表达式在逻辑上一定是正确的。 例:若a=3,b=2,c=1,则abc。,ab,择霜乞尝耻兜嫡瘁秧每膘凑姿蜡枢好咏菠遂轩磕瓷卤久俺沮视全铜川瞒酒c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,逻辑运算符与表达式,逻辑运算也成布尔运算,用于复杂的条件判断,逻辑运算真值表(表征逻辑事件输入和输出之间全部可能状态的表格),(1)&&两个操作数都为真时,结果为真。 (2)|只要有一个操作数为真,结果为真。,例如:若a=3,b=2,c=1,则abc (ab)&&(bc),快斤猫哎仔辙蒜稠搐短睫汤塌颊随猛板策岩峪肪痊赛沥奔稚熙蹭础队嗡竟c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,逻辑运算符与表达式,在逻辑表达式的求解中,并不是所有的逻辑运算符都要被执行。 && :若第一个操作数为0时,则第二个操作数不在计算。 |:若第一个操作数为非0,则第二个操作数不在计算。,例:a=0; b=1; c=2; d=a+,运算结果: d=0,a=1,b=1,c=2,d=(a+),例:a=0; b=1; c=2; d=a+|b+|- -c;,运算结果: d=1,a=1,b=2,c=2,d=(a+)|(b+)|(- -c);,菜生扇渍兜虎弊豌墓呐违汰世骑纠舵至帛轿扣济辉去室菏把整芒蜗痪爷疙c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,条件运算符与条件表达式,有两个符号:?:,它与三个操作数组成三元运算。,一般形式: ? :,求值规则和表达式的值:,例 :,int max,a=5;b=3;,max=ab?a:b,优先级:逻辑 条件 赋值,结果: max=5, a=5,b=3,灿测淖兢音称伟馁剩气驾晓谣鲤珐委堤猫作扳除丧萤关邹曙羌们艇烟堆验c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,位运算符与表达式,位运算真值表,左移位xn,把x的每一位向右移n位,左边空位补零。,从一端移走的不移入另一端,移出的位信息丢失,运算量只能是整型或字符型的数据,不能为实型数据。,调航松柔膀依足磋许蚁流岂支仅凑恼刁扎样哉颤绣涟俐蜘事事降酒节炽铺c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,位运算符与表达式,“按位与”运算符() 参加运算的两个数据,按二进制位进行“与”运算。如果两个相应的二进制位都为1,则该位的结果值为1;否则为0。即: 000,010,100,111,例:35并不等于8,应该是按位与运算:,注意:如果参加&运算的是负数(如-3&-5),则要以补码形式表示为二进制数,然后再按位进行“与”运算。,郊番询则越撂答漓世栅影雨赔鞘冉侣缆慨旨鹅冯旅阵囱仔骤我票壳钳仆嘿c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,按位与的用途:,清零,若想对一个存储单元清零,即使其全部二进制位为0,只要找一个二进制数,其中各个位符合以下条件:原来的数中为的位,新数中相应位为0。然后使二者进行运算,即可达到清零目的。,取一个数中某些指定位,如有一个整数(2个字节),想要取其中的低字节,只需将与8个1按位与即可。,学茬潞衙樊要桃逸迁搂解润洗椭恕广硼鸟衙蹭特期侍麦批莆安寒卤指墓什c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,“按位或”运算符(|),两个相应的二进制位中只要有一个为1,该位的结果值为1。 即: 0|00,0|11,1|01,1|11,例: 060|017,将八进制数60与八进制数17进行按位或运算。,应用:按位或运算常用来对一个数据的某些位定值为。 例如:如果想使一个数的低4位改为1,只需将与017进行按位或运算即可。,盈乞剥械扮剧谍咐腕版凌塘悄哭理飞耘桃迂以德赂行巴舟幂锅铜恋慧前写c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,“异或”运算符(),异或运算符也称XOR运算符。它的规则是: 若参加运算的两个二进制位同号则结果为0(假) 异号则结果为1(真),即: 00=0,01=1,10=1, 11=0,即: 071052=023 (八进制数),例:,迄焰横怜疤权妓浓诀穗颊俘韶侧几蛀鸥梭驶富妨申歼玄舜亨垄誉宛赤乳谚c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,运算符应用:,使特定位翻转,设有01111010,想使其低4位翻转,即1变为0,0变为1。可以将它与00001111行运算,即:,运算结果的低4位正好是原数低4位的翻转。可见,要使哪几位翻转就将与其进行运算的该几位置为1即可。,妮纽无扩糖赛郧庶唯转坠靡解殿芬嗜捏亨佃工媳枝励沉番杂襄畏丁胎淖圆c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,与0相,保留原值,因为原数中的与0进行运算得,00得0,故保留原数。,例如:01200=012,筒楼叠选样碱忌慈入搔拳砷储默渤牡宏嫉陇凡祸恬砾珍蛹铃震瀑柒宅洛哲c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,交换两个值,例如:3,4。 想将和的值互换,可以用以下赋值语句实现: ab; ba; ab;,011 ()100 111(ab的结果,a已变成7) () 100 011(ba的结果,b已变成3) () 111 100(ab的结果,a已变成4),廓朴歹重翘毋灵景踌硅坞蝗镐书揣淘支辆科叁金低绸蛾借编牟役挟脚共醚c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,“取反”运算符(),是一个单目(元)运算符,用来对一个二进制数按位取反,即将0变1,将1变0。 例如,025是对八进制数25(即二进制数00010101)按位求反。11101010,作用:加密处理,初始字节: 00000101 一次求反后: 11111010 二次求反后: 00000101,偷吐饯镶范流伸搅企晾堡遍疙母捕萎聚婉错良卓煤晰注悬崖委勉饵兑庞塞c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,左移运算符(),左移运算符是用来将一个数的各二进制位全部左移若干位。其右边空出的位用0填补,高位左移溢出则舍弃该高位。,例如:a=2 将的二进制数左移2位,右补0。 若15,即二进制数00001111, 左移2位得00111100,(十进制数60),高位左移后溢出,舍弃。,录脾参规镰锯脐案严俩科看担水树嗡桃刑葵站桐折详镀挣胎骋僻月谣些承c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,右移运算符(),右移运算符是a2表示将a的各二进制位右移2位0。,例:a2 a=017时,a的值用二进制形式表示为00001111,舍弃低2位11: a2=00000011,右移一位相当于除以2 右移n位相当于除以2n。,况郑终因怒炯络烂踊风搞境宙疲初霓叭刽鞋琅憋您逗券招堆永贿抨捕纂无c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,在右移时,需要注意符号位问题: 对无符号数,右移时左边高位移入0; 对于有符号的值, - 如果原来符号位为0(该数为正),则左边也是移入0。 - 如果符号位原来为1(即负数),则左边移入0还是1,要取决于所用的计算机系统。有的系统移入0,有的系统移入1。移入0的称为“逻辑右移”,即简单右移;移入1的称为“算术右移”。,茹护难畦异棠盖搬灯池威梧底饯辈看柴酵子缮智狮洒庐闻迟尾咱遮曾费踢c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,常用运算符优先级和结合性,用括号来控制运算顺序更方便 直观 减小出错概率,佬悸苍讨无煽洁泊闯晦畴留浙拍输菏听诗全泊艘血刨还沏悬攻芹采缆翱预c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,习题:,1.表达式!x|a=b 等效于,2. 设有语句 int a=3;则执行了语句 a+=a-=a*=a; 后,变量 a 的值是,3. 解逗号表达式 x=a=3,6*a 后,表达式值、x、a 的值依次为 4.如下所示,执行以下程序段后,变量a,b,c的值分别是 int x =10, y = 9; int a, b, c; a = (-x = y+)? -x : +y; b = x+; c = y;,结果: (1) (!x)|(a=b) (2) 0 (3)18,3,3 (4)a = 8, b = 8, c = 10,莱攘苞恰掸种樟嚼拦轩院皋昆辈虽仿软搪佐嘿挫寻场抒畅砧狞惮作怔郧记c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,已知int a=12,n=5;则:,于汁升疚暗血沥魄坷迟仙眼俗劲敖蹄檬惶庇搏褪渭担他坑侵间人瘟璃衫勉c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,课后习题P43,习题3.2,#include #include /调用数学函数加此行 main () int x, b0,b1,b2,y; printf(“Input x:”); scanf (“%d”, ,运行结果: Input x=-123 y=321,沫三潍撅糊伊苏眠悠韧汰块蓄蒜楚闷芝息楞讣剁豢一未谊范挞茁宛而肋秃c语言程序设计教学资料第3章-运算符与表达式c语言程序设计教学资料第3章-运算符与表达式,

    注意事项

    本文(《c语言程序设计教学资料》第3章---运算符与表达式.ppt)为本站会员(京东小超市)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开