- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言实训指导第2讲
课程实训指导
第2讲 运算符、表达式
2.1 知识要点
C语言的运算符主要包括:算术运算符、关系运算符、逻辑运算符及其他运算符。
1、算术运算符与算术表达式
运算符 功能 运算对象 运算结果 优先级 结合性 +、- 正、负 整型或实型 整型或实型 1 自右向左 * 乘 整型或实型 整型或实型 2 自左向右 / 除 % 求余 整型 整型 + 加 整型或实型 3 - 减 说明:
两个整数相除结果为一整数,1/2的结果为0
取余两边的数只能是整数,1%2的结果为1
2、关系运算符与关系表达式
运算符 功能 运算对象 运算结果 优先级 结合性 大于 整型、实型或字符型 若关系成立,结果为1
若关系不成立,结果为0 1 自左向右 小于 = 大于等于 = 小于等于 == 等于 2 != 不等于 说明:关系运算符的优先级低于算术运算符,6+554。
3、逻辑运算符与逻辑表达式
运算符 功能 运算对象 运算结果 优先级 结合性 ! 逻辑非 整型、实型或字符型 0或1 自右向左 逻辑与 自左向右 || 逻辑或 说明:C语言中用0表示假,非0表示真(通常用1)
短路:
表达式1 表达式2,如果表达式1为假时,表达式2不会计算
表达式1 || 表达式2,如果表达式1为真时,表达式2不会计算
4、其他运算符
自增、自减运算符
自增、自减运算符的作用是使变量的值增1或减1。结合性自右向左,分为前置和后置。优先级与逻辑非(!)同级,运算对象必须是变量,不能是常量或表达式。
说明:
++i, --i 表示在使用i之前,先使i的值加(减);
i++, i-- 表示在使用i之后,再使i的值加(减);
复合赋值运算符: += 、- =、 *= 、 /=
说明:
a*=b 等同于 a=a*ba*=b+8 等同于 a=a*(b+8) 因为算术运算符优先级高
逗号运算符和逗号表达式
“,”是C提供的一种特殊运算符,在所有的运算符中,它的优先级是最低的,结合性自左向右。
说明:
由逗号运算符组成的表达式称为逗号表达式,其值为最后1个表达式的值。表达式1,表达式2, …,表达式nx=y=6, x+y , y+1)
条件运算符和条件表达式
“? :”称为条件运算符,一般形式: 表达式1?表达式2:表达式3
说明:
首先计算表达式1,如果非0,则表达式2的值作为条件表达式的值;如果表达式1的值为0,则表达式3的值作为条件表达式的值。(若x=5,y=3,则(xy)?x:y的值为5。)
强制类型转换运算符
它的功能是将表达式的结果强制转换成指定的类型。强制类型转换表达式的形式如下:(强制类型名)(表达式)。例如,(int)(10.5)的结果为10
说明:
整型、实型、字符型数据可以进行混合运算。在进行运算时,应先把不同类型的数据转换为同一类型,然后进行运算。转换规则,参见图所示。
5、C运算符的优先级和结合性
运算符 优先级 结合性 () [] . - 1 左 ! + - ++ - - * sizeof 2 右 * / % 3 左 + - 4 左 = = 5 左 == != 6 左 7 左 || 8 左 ?: 9 右 = += -= *= /= %= 10 右 , 11 左
2.2 基础技能训练
1、将下面的程序中if语句的表达式补充完整,判断某数是否为偶数的表达式(2种方式),并修改a的值,观察运行结果。
2、以下程序实现取某4位数的各位数字,并将取出来的各位数按照千、百、十、个位的顺序输出,同时再直接输出该4位数,比较输出结果是否正确。观察程序中的取数表达式,是否正确,如果不正确,请修正。还有其他方法吗? 如果有,请写出。
3、自行举例,选择两种运算符(必须包括“其他运算符”中的一种),设计表达式(包含两种运算符),编写程序,输出表达式的值。
2.3 拓展训练
1、掌握各类运算符的优先级及结合性。
2、熟练掌握各类运算符表达式的使用。
2.4 作业及要求
1、表达式231612||2的值?表达式(231612)+2的值?(25分)
2、a=12 , 执行语句a+=a-=a*a;后 a的值?(25分)
3、a=1 ,b=2,c=3 ,d=4 则执行语句 ++ab++ (++d , c+=d)后a,b,c,d的值? (25分)
4、结合自身体会,描述数学公式与C语言中公式在写法上的不同? (25分)
5、拓展题:试自己设计数据结构和算法,判某1整数是否为素数?
--------------------------------------
您可能关注的文档
最近下载
- 2024版房屋抵押贷款合同范本.docx VIP
- 基于反作用飞轮和磁力矩器的卫星姿态控制系统分析-analysis of satellite attitude control system based on reaction flywheel and magnetic torque device.docx VIP
- 地贫筛查中的血红蛋白电泳.pptx VIP
- 光电开关HPX-AG系列使用说明书.PDF VIP
- 精神科患者风险的管理.pptx VIP
- 保护女职工权益知识竞赛题库50题(答案).docx VIP
- 盖板涵施工监理细则.pdf VIP
- 迅达3300调试汇总.doc VIP
- (高清版)B-T 19843-2022 工业通风机 射流风机性能试验.pdf VIP
- 冰美人淘宝直播数据复盘.xlsx VIP
文档评论(0)