c++第三章表达式和语句.ppt_第1页
c++第三章表达式和语句.ppt_第2页
c++第三章表达式和语句.ppt_第3页
c++第三章表达式和语句.ppt_第4页
c++第三章表达式和语句.ppt_第5页
已阅读5页,还剩22页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章C 简单程序设计 3 1表达式3 2算术运算符3 3算术类型转换3 4增量与减量3 5关系与逻辑表达式3 6if语句3 7条件运算符3 8逗号表达式3 9求值次序 3 1表达式 表达式概述 概念 表达式 求值次序 结合性C 语言的运算符按其在表达式中与运算对象的关系 连接运算对象的个数 可分为 l单目运算符 一元运算符 只需一个操作数 l双目运算符 二元运算符 需两个操作数 l三目运算符 三元运算符 需三个操作数 3 1表达式 左值和右值 左值 右值如 a 3 b a 3 1表达式 优先级和结合性 结合性 一般都是从左到右结合 但单目运算符 条件运算符 赋值缩写运算符的结合性从右到左 优先级 P35表3 1 3 1表达式 语句和块 语句以分号结束 空语句 块 即复合语句 是指在一对花括号里的语句序列 3 2算术运算符 操作符种类 对于整数是整除 对于浮点数是一般除法 如 5 2 2 5 0 2 2 5 取余 只能对整数进行操作 如5 2 1 3 2算术运算符 赋值缩写 x x y x y x x y x y x x y x y x x y x y 3 2算术运算符 溢出 溢出 一个变量被赋予一个超出其数据类型表示范围的数值 它一般不会发生编译错误 但会导致结果发生偏差 延伸 计算机的数据采用补码的形式存放 如 intweight 42896 结果变量值为 226401010011110010000转二进制1101100001101111取反1101100001110000 1 22640简单方法 65536 42896 3 3算术类型转换 转换总朝表达数据能力更强的方向 并且转换总是逐个运算符进行的 短 长 3 3算术类型转换 隐式转换 即自动转换 由编译器自动完成的类型转换 如1 2 0显式转换 即强制转换 由程序员显式指出的类型转换 转换格式如下 类型名 表达式 类型名 表达式如 long 12 long 12 3 4增量和减量 自增 自动加1自减 自动减1前缀 变量值加 减 1 然后新值赋给变量 如 b a a 后缀 变量值加 减 1 但修改变量值如 b a a 综合 c a b c a b c a b 3 5关系运算符 关系运算符 1 关系运算符用于两个值进行比较 运算结果为true 真 或false 假 分别用值非0 true 或0 false 表示 2 关系运算符都是双目运算符 其结合性是从左到右 运算符的优先级相同 和 运算符的优先级相同 前者运算的优先级高于后者 3 关系运算符的优先级低于算术运算符 3 5关系运算符 逻辑运算符 C 中的逻辑运算符为 逻辑与 逻辑或 逻辑非 逻辑表达式的结果为真则为1 结果为假则为0 逻辑非 是单目运算符 逻辑与 和逻辑或 是双目运算符 逻辑非的优先级最高 逻辑与次之 逻辑或最低 逻辑运算真值表如表1 3所示 表1 3逻辑运算真值表 真为非0 假为0 3 5关系运算符 短路表达式 如果多个表达式用 3 6if语句 if语句 语法格式如果 我考试过了 那么我请大家吃饭if ch b cout a if ch b cout a if ch b cout a 3 6if语句 if else语句 语法格式如果 我考试过了 那么我请大家吃饭否则你帮我出报名费 呵呵if ch b cout a elsecout ch if ch b cout a else cout ch 3 6if语句 解决二义性 就近未匹配原则 else连接到上面第一个没有配对且为可见的if上 p46 3 7条件运算符 1 条件运算符 是C 中惟一的三目运算符 其形式为 表达式1 表达式2 表达式3 2 条件运算符的结合性是自右向左 3 条件运算符的优先级别高于赋值运算符 低于关系运算符和算术运算符 x a b a b if a b x a elsex b 3 7条件运算符 如果后面两个表达式的值类型相同 均为左值 则该条件运算符表达式可在赋值号左边 x a b 1 x a 1 1 注意 C语言不支持此用法 建议不用 3 8逗号运算符 1 逗号运算符用于将多个表达式连在一起 并将各表达式从左到右的顺序依次求值 但只有其最右端的表达式的结果 作为整个逗号表达式的结果 2 逗号表达式的一般格式为 表达式1 表达式2 表达式n如 d a 1 b a 2 c b 3 a 1 b a 2 c b 3 5 C不支持 3 9求值次序与副作用 不同的编译器求值顺序不同 3 9求值次序与副作用 不同的编译器求值顺序不同求值顺序使交换律失去作用求值顺序使括号失去作用消除副作用尽可能用简单语句 交复杂语句拆为多句 变量IPO 加工厂原料存放 变量进料 Input生产加工 Process出料 Output includevoidmain intgrade cout grade if grade 100 grade 90 cout 80 cout 70 co

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论