C语言实训指导第2讲.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 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整数是否为素数? --------------------------------------

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档