




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章 运算符与表达式 主要内容 3 1算术运算符与算术表达式3 2赋值运算符与赋值表达式3 3逗号运算符和逗号表达式3 4关系运算符与关系表达式3 5逻辑运算符与逻辑表达式3 6其它运算符与其它表达式 本章要点 六类运算符及其相应的表达式运算符的优先级与结合方向 3 1算术运算符和算术表达式 1 基本的算术运算符 加法运算符 或正值运算符 如 减法运算符 或负值运算符 如 乘法运算符 如 除法运算符 如 模运算符 或称求余运算符 两侧均应为整型数据 如 的值为 2 算术运算符和表达式的优先级与结合性 用算术运算符和括号将运算对象 也称操作数 连接起来的 符合 语法规则的式子 称为 算术表达式 运算对象包括常量 变量 函数等 例如 5 a 是一个合法的表达式 语言规定了运算符的优先级和结合性 在表达式求值时 先按运算符的优先级别高低次序执行 例如先乘除后加减 规定了各种运算符的结合方向 结合性 算术运算符的结合方向为 自左至右 即先左后右 3 强制类型转换运算符可以利用强制类型转换运算符将一个表达式转换成所需类型 一般形式 类型名 表达式 例如 double 将 转换成double类型 int x y 将x y的值转换成整型 float 5 3 将5 3的值转换成float型 例3 1强制类型转换 includemain float int 3 6 int printf x f i d n x i 说明 在强制类型转换时 得到一个所需类型的中间变量 原来变量的类型未发生变化 运行结果 x 3 600000 i 3 4 自增 自减运算符作用是使变量的值增 或减 如 在使用 之前 先使 的值加 减 在使用 之后 使 的值加 减 i 与 i的区别 是先执行 后 再使用 的值 是先使用 的值后 再执行 例如 i 3 i的值先变成4 再赋给 j的值为 先将i的值3赋给 的值为 然后 变为 注意 1 自增运算符 自减运算符 只能用于变量 而不能用于常量或表达式 2 和 的结合方向是 自右至左 3 2赋值运算符和赋值表达式 1 赋值运算符赋值符号 就是赋值运算符 它的作用是将一个数据赋给一个变量 如 的作用是执行一次赋值操作 或称赋值运算 把常量 赋给变量 也可以将一个表达式的值赋给一个变量 2 类型转换如果赋值运算符两侧的类型不一致 但都是数值型或字符型时 在赋值时要进行类型转换 3 复合的赋值运算符在赋值符 之前加上其他运算符 可以构成复合的运算符 例如 等价于 等价于 等价于 以 为例来说明 它相当于使 进行一次自加 的操作 即先使 加 再赋给 为便于记忆 可以这样理解 a b 其中a为变量 b为表达式 a b 将有下划线的 a 移到 右侧 a a b 在 左侧补上变量名a 注意 如果 是包含若干项的表达式 则相当于它有括号 如 x y 3 x y 3 x x y 3 不要错写成x x y 3 凡是二元 二目 运算符 都可以与赋值符一起组合成复合赋值符 语言规定可以使用10种复合赋值运算符 4 赋值表达式由赋值运算符将一个变量和一个表达式连接起来的式子称为 赋值表达式 一般形式为 例如 5 是一个赋值表达式 对赋值表达式求解的过程是 求赋值运算符右侧的 表达式 的值 赋给赋值运算符左侧的变量 例如 赋值表达式 3 5 的值为15 执行表达式后 变量a的值也是15 注意 一个表达式应该有一个值 赋值表达式中的 表达式 又可以是一个赋值表达式 例如 a b 5 分析 括弧内的 b 5 是一个赋值表达式 它的值等于5 执行表达式 a b 5 相当于执行 b 5 和 a b 两个赋值表达式 赋值运算符按照 自右向左 的结合顺序 因此 b 5 外面的括弧可以不要 即 a b 5 和 a b 5 等价 赋值表达式也可以包含复合的赋值运算符 如 a a a a 分析 此赋值表达式的求解步骤如下 先进行 的运算 它相当于 a的值为12 144 132 再进行 132 的运算 相当于 a 132 a的值为 132 132 264 3 3逗号运算符和逗号表达式 逗号运算符 将两个表达式连接起来 又称为 顺序求值运算符 如 5 一般形式 表达式 表达式 求解过程 先求解表达式 再求解表达式 整个逗号表达式的值是表达式 的值 逗号表达式的值为14 例 逗号表达式 5 分析 赋值运算符的优先级别高于逗号运算符 因此应先求解 5 的值为 5 然后求解 得 整个逗号表达式的值为 一个逗号表达式又可以与另一个表达式组成一个新的逗号表达式 如 a 5先计算出 的值等于15 再进行 的运算得60 但 值未变 仍为15 再进行 5得20 即整个表达式的值为20 逗号表达式的一般形式可以扩展为表达式 表达式 表达式 表达式 它的值为表达式 的值 逗号运算符是所有运算符中级别最低的例 3 赋值表达式 将一个逗号表达式的值赋给 的值等于 逗号表达式 包括一个赋值表达式和一个算术表达式 的值为 整个逗号表达式的值为18 3 4关系运算符和关系表达式 1 关系运算符及其优先次序 大于 大于或等于 等于 不等于 说明 关系运算符的优先级低于算术运算符关系运算符的优先级高于赋值运算符 2 关系表达式用关系运算符将两个表达式 可以是算术表达式或关系表达式 逻辑表达式 赋值表达式 字符表达式 连接起来的式子 称关系表达式 例 a b a b b c a 3 b 5 a b bb 的值为 真 表达式的值为1 C语言中没有专用的逻辑值 1代表真 0代表假 3 5逻辑运算符和逻辑表达式 1 逻辑运算符及其优先次序 1 逻辑与 相当于其他语言中的AND 2 逻辑或 相当于其他语言中的OR 3 逻辑非 相当于其他语言中的NOT例 a b若a b为真 则a b为真 a b若a b之一为真 则a b为真 a若a为真 则 a为假 2 逻辑表达式用逻辑运算符将关系表达式或逻辑量连接起来的式子就是逻辑表达式 逻辑表达式的值应该是一个逻辑量 真 或 假 例 设a 4 b 5 a的值为0a b的值为1a b的值为1 a b的值为14 0 2的值为1 任何非零的数值被认作 真 1 0逻辑值为0 8 3逻辑值为0 4 1值为3 0逻辑值为1 5 3逻辑值为1 表达式值为0 例 5 3 8 4 0自左向右运算 3 6其它运算符与其它表达式 1 求操作数占用内存长度运算符 sizeof 表达式形式 sizeofE其中E可以是各种类型的变量或变量类型说明符 sizeofE的作用是求出E所占的内存长度 以字节表示 注 当表示的是变量类型说明符时 必须用括号将其括起来 例 sizeof int sizeof float 2 条件运算符表达形式为 E1 E2 E3E1应是一个关系表达式 又称为三元运算符 运算过程如下 先判断E1是否成立 若成立 非零值 则取E2的值作为运算结果 否则取E3的值 表达式运算结果的类型依赖于E2和E3的类型 例 a b c d 3 2 1 0 结果为1 作业 1 P66 3 6 P67 3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 施工面试题库及答案
- 校园乘船安全知识培训课件
- 骨科护理考试题及答案
- 校准基础知识培训课件
- 2025年福建平潭综合实验区文旅发展集团有限公司招聘考试笔试试题(含答案)
- 装饰装修工程施工技术考核试题题库及答案
- 专业技能培训天车工考试题及答案
- 医院感染暴发报告及处置管理规范试题与答案
- 静脉输液理论知识培训考核试题(附答案)
- 2025医院医疗卫生法律法规考试题库及答案
- aigc培训课件教学课件
- 术前讨论制度
- 光缆线路工程验收标准
- 《小麦产业在国民经济中的地位与贡献》论文
- 2025年辽宁省大连庄河市纪委监委招聘政府雇员2人高频重点模拟试卷提升(共500题附带答案详解)
- DB37-T 4546-2022 农业废弃物制备生物炭技术规程
- 产品结构设计的未来趋势
- 2024年六西格玛绿带认证考试练习题库(含答案)
- 集控值班员(高级)职业技能鉴定考试题库
- 新时代高职英语(基础模块)Unit1 -2
- GB/T 44117-2024电化学储能电站模型参数测试规程
评论
0/150
提交评论