已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章关系运算符和位运算符,本节主要内容介绍,3.5.5关系运算符和关系表达式3.5.6逻辑运算符和逻辑表达式3.5.7条件运算符和条件表达式3.5.9位运算符3.5.10求字节运算符,3.5.5关系运算符和关系表达式,1.关系运算符及其优先次序(大于)=(大于或等于)=(等于)!=(不等于),说明:关系运算符的优先级低于算术运算符关系运算符的优先级高于赋值运算符,关系运算符和关系表达式,如:ca+bab!=ca=bc,建议:使用()能使关系更清晰!,c(a+b),(ab)!=c,a=(bc),2.关系表达式用关系运算符将两个表达式(可以是算术表达式或关系表达式,逻辑表达式,赋值表达式,字符表达式)接起来的式子,称关系表达式例:ab,a+bb+c,(a=3)(b=5),ab)(bb”的值为“真”,表达式的值为1。a=3,b=2,c=1则关系表达式“(ab)=c”的值为1,C语言中没有专用的逻辑值,1代表真,0代表假,关系运算符和关系表达式,关系运算符和关系表达式,例inti=1,j=7,a;a=i+(j%4!=0);则a的值为,例inta=3,b=2,c=1,d,f;ab(ab)=cb+cbf=abc(a=5)b)(b0结果为A100结果为,例若a=0;b=0.5;x=0.3;则a=90|grade0能被400整除(year%4=0执行表达式(m=59)后,n的值是()A)1B)2C)3D)44、已有定义语句:intm=0,n=3;执行表达式(m=53)|(n=7=100)则表达式!a|b的值为()。(A)0(B)1(C)2(D)37设整型变量x为7,使整型变量y不为2的表达式是()。(A)y=x%3(B)y=x/3(C)y=(+x)/3(D)y=8-(-x),3.5.7条件运算符和条件表达式,C语言提供了一个简单的条件赋值语句或条件表达式。一般形式表达式1?表达式2:表达式3功能:先判表达式1,若非0,则值为表达式2的值,否则为表达式3的值。条件运算符的优先级高于赋值运算符,但低于关系运算符和逻辑运算符。例如:a=1;b=2;c=ab?printf(%d,a):printf(%d,b)表达式2、表达式3的类型可以不同,此时条件表达式值取二者中较高的类型。如:xy?1:1.5/若xy,则值为1.0;若x右移,(1)位运算符中除以外,均为二目(元)运算符,即要求两侧各有一个运算量。(2)运算量只能是整型或字符型的数据,不能为实型数据。,说明:,1、“按位与”运算符(),按位与是指:参加运算的两个数据,按二进制位进行“与”运算。如果两个相应的二进制位都为,则该位的结果值为;否则为。即:,例:并不等于,应该是按位与运算:,注意:如果参加和二进制位数相与则该位保留原值不变。利用这两个特点,可以指定一个数的某一位(或某几位)置0,也可以检验一个数的某一位(或某几位)是否是。例如:a=a只保留a的右端两位二进制位数。又如:若a把a的低字节全置1,高字节保持原样。a=a0 xff00;把a的高字节全置1,低字节保持原样。,3、“异或”运算符(),异或运算符也称XOR运算符。它的规则是:若参加运算的两个二进制位同号则结果为(假)异号则结果为(真)即:00=0,01=1,10=1,11=0,例:,即:071052=023(八进制数),“异或”运算符,例如:inta=41165;则a的值为140,运算过程用二进制表示如下:0000000000101001(十进制数41)0000000010100101(十进制数165)0000000010001100(十进制数140)按位异或运算可以把一个数的二进制位的某一位(或某几位)求反(0变1,1变0)。例如:a=a3;将变量a的最右端的二位求反。,4、“取反”运算符(),是一个单目(元)运算符,用来对一个二进制数按位取反,即将变,将变。例如,是对八进制数(即二进制数)按位求反。,“取反”运算符,例如:inti=199;则:i值为-200,这是因为:十进199写成二进制:0000000011000111把它按位取反1111111100111000,这个数是整型十进制数-200在内存的补码表示。111111100110111000000011001000,5、左移运算符(),左移运算符是用来将一个数的各二进制位全部左移若干位。例如:a=2将的二进制数左移位,右补。若,即二进制数,左移位得,(十进制数),高位左移后溢出,舍弃。,chara=5,b;b=a3;a的二进制值为00000101,执行语句b=a),右移运算符是a2表示将a的各二进制位右移2位,移到右端的低位被舍弃,右移时,对于正整数和无符号整数,高位(左端)补0;对于负数,高位(左端)补1(补码表示法最高位1表示负数)。例如:chara=41,b;b=a3;用二进制来表示,a的值为00101001(十进制数41)执行语句b=a3;之后b的值为00000101(十进制数5=41/2/2/2,注意是整数除),运算后a的值并没有改变仍为41)。右移时,每右移1位,相当于除以2(整数除)。,7.位运算赋值运算符它们是:=,=2相当于a=a2,b|=c相当于b=b|c8.位运算优先关系例如:语句a=10执行后a的值为8。“=b|bc的值为()。4inta,b;则表达式(a=2,b=5,a*2,+b,a+b)的值是_。5intm=5,n=3;则表达式(m+1,n+1,(-m)+(n-)的值是_。,课堂练习,6若有定义:inta,b;doublex,则以下不符合C语言语法的表达式是()。(A)x%(-3)(B)a+=-2(C)a=b=2(D)x=a+b7若有定义:intb=7;floata=2.5,c=4.7;则表达式a+(b/2*(int)(a+c)/2)%4的值是()。(A)2.5(B)3.5(C)4.5(D)5.588已定义charc=A;则正确的赋值表达式是()。(A)c=028(B)c=(c+)%4(C)c+1=66(D)c+=127-,课堂练习,9定义:intx=4,y=2,z=0;则表达式(x-y=y)|(y=z)的值是()。(A)1(B)0(C)2(D)410下面叙述正确的是()。(A)强制类型转换运算的优先级高于算术运算(B)若a和b是整型变量,(a+b)+是合法的(C)A*B是不合法的(D)A+B是合法的11若a为奇数时,表达式为真,a为偶数时,表达式假。则不能满足要求的表达式是()。(A)a%2=1(B)!(a%2=0)(C)!(a%2)(D)a%2,课堂练习,12判定逻辑值为“真的最准确叙述是()。(A)1(B)大于0的数(C)非0的整数(D)非0的数13下面叙述中,错误的是()。(A)算术运算对象不包含函数(B)%(模运算符)的运算对象只能为整型量(C)算术运算符的结合方向是自左至右,课堂练习,14已定义doublek=3.6;则正确的赋
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年企业间技术秘密转让与保密合同
- 2024《教育基金赠与合同》
- 2024年度二手挖掘机质量保证合同
- 2024年奶牛养殖收购合同
- 2024年度融资合同融资项目及融资金额
- 2024年建筑工程屋面分包协议
- 2024年度★店铺转让及培训协议
- 2024年度生物医药实验室安装内部承包合同
- 2024年企业间关于物联网技术研发与应用合作协议
- 2024供应链金融借款合同
- 中考语文复习专题7-口语交际
- MOOC 孙子兵法-湖南大学 中国大学慕课答案
- 八段锦比赛活动方案(一)
- 人力资源管理HR人力资源管理解决方案
- 第二单元大单元教学设计 2023-2024学年统编版高中语文必修上册
- 事业单位竞争上岗实施方案
- 生涯发展报告
- 管理评审输入材料
- VR游戏设计与制作智慧树知到期末考试答案2024年
- 2024年卫生系统招聘考试-卫生系统招聘考试(公共卫生管理)笔试历年真题荟萃含答案
- 工业机器人大学生职业生涯规划
评论
0/150
提交评论