C语言程序设计2第4章基本运算符和表达式.ppt

上传人:max****ui 文档编号:6333424 上传时间:2020-02-23 格式:PPT 页数:21 大小:278.31KB
返回 下载 相关 举报
C语言程序设计2第4章基本运算符和表达式.ppt_第1页
第1页 / 共21页
C语言程序设计2第4章基本运算符和表达式.ppt_第2页
第2页 / 共21页
C语言程序设计2第4章基本运算符和表达式.ppt_第3页
第3页 / 共21页
点击查看更多>>
资源描述
第4章基本运算符和表达式 4 1运算符的种类4 2算术运算符4 3自增自减运算符4 4表达式4 5逻辑运算4 6条件运算符和条件表达式 退出 4 1运算符的种类 1 算术运算符用于各类数值运算 包括加 减 乘 除 求余 或称模运算 它们是双目运算符 在使用需要两个运算量参与运算 2 关系运算符用于比较运算 包括大于 小于 小于等于 和不等于 六种 3 逻辑运算符用于逻辑运算 包括与 或 非 三种 4 自增 自减运算符包括 与 5 位操作运算符参与运算的量 按二进制位进行运算 包括位与 位或 位非 位异或 左移 六种 6 赋值运算符用于赋值运算 分为简单赋值 复合算术赋值 和复合位运算赋值 三类共十一种 7 条件运算符这是一个三目运算符 用于条件求值 8 逗号运算符用于把若干表达式组合成一个表达式 9 指针运算符用于取内容 和取地址 二种运算 10 求字节数运算符用于计算数据类型所占的字节数 sizeof 11 特殊运算符有括号 下标 等 4 2算术运算符 1 加法运算符 加法运算符为双目运算符 即有两个量参与加法运算 如x y 5 6等 这与一般的数学加法运算相一致 比较容易理解 下述的减法运算符和乘法运算符也一样 2 减法运算符 作为减法运算符时为双目运算符 如x y 6 5等 作为负值运算符时为单目运算 如 y 8等 3 乘法运算符 双目运算 如x y 5 6等 4 除法运算符 除法运算符与我们在中学数学中所学的计算规则有很大的不同 与参与运算量的数据类型有关 具体地说 分为以下两类 其一 参与运算量均为整型时 结果也为整型 舍去小数 其二 如果运算量中有一个是实型 则结果为双精度实型 应该特别注意出发运算的规则 按原来的数学运算规则去推断 可能出现一些意想不到的错误结果 5 求余运算符 模运算符 该运算的实质是求余数 参与运算的量必须均为整型 求余运算的结果的符号与被除数相同 这一点应特别注意 其值等于两数相除后的余数 对于求余运算 应该从其结果的符号和值两方面来理解 6 不同数值类型间的混合运算整型 单精度型 双精度型的不同数值类型可以进行混合运算 因为字符型数值可以看作整型 故整型 实型 包括单精度型与双精度型 及字符型之间可进行混合运算 这样一来 字符型数也纳入了数值运算体系之中 但是 在运算时 不同类型数值必须转换为同一类型数值 其转换规律是 自动转换 由系统自动进行 无须干预 就高不就低 把低级类型转换为高级类型 再进行运算 转换等级如下 低级 高级字符型 整型 浮点型 双精度型 例4 1 见课本 4 3自增自减运算符 自增运算符为 两个加号 其作用是把变量的值增加1 自减运算符为 两个减号 其作用是使变量值减少1 自增自减运算符均为单目运算 只需要一个运算量 它可有以下几种形式 ii自增1后再参与其它运算 简单地说 先加后用 ii自减1后再参与其它运算 简单地说 先减后用 i i先参与运算后 i的值再自增1 简单地说 先用后加 i i先参与运算后 i的值再自减1 简单地说 先用后减 在使用自增自减运算符时应注意以下几点 只能用于变量 不能用于常量 因为常量的值不能改变 所以不能使用如 10 8 6 如果字符a表示一个常量 则也不能使用a 这样的形式 对于多个变量的运行结果 也不能使用 例如 x y z 是不能使用的 因为其结果不能保存在其中的任何一个变量中 当自增自减运算符与其他运算符结合使用时 应注意其具有 自右向左 结合的特性 例4 2 见课本 4 4表达式 4 4 1强制转换与优先级依据表达式的运算结果可以把它分为整型 实型及字符型等 如果不作特殊处理 表达式结果的数值类型根据数值混合运算的规则进行转换 具体数值有组成表达式的各项计算而得 根据编程的要求 也可以实行强制转换 强制转换格式为 类型 表达式使用此格式可以把表达式的值强制转换为 类型 所规定的类型 这种转换不遵照 由低到高 的规则 类型 可以为 char int float double等 例4 3 见课本 由此可以看到不同的运算有不同的优先级 表达式的优先规则为 1 函数计算最优先 2 其次类型转换 3 自增 自减 与取反 次之 4 先乘除 后加减 6 有括号先算括号内关于优先级的详细情况 请参考 表4 1运算符一览表 关于表达式求值时应注意几个问题 其一 表达式中各类数据在参与计算时的数据类型是否一致 若不一致则需要转换 这时候要注意默认转换的规律或者采用强制转换 其二 计算表达式时的优先级的问题 即先算什么 后算什么 其三 结合性的问题 是 左结合 还是 右结合 这决定是 从左往右算 还是 从右往左算 特别要注意的确是 在一个表达式中 可能既有 左结合 又有 右结合 存在 此时应十分小心 这些内容 必须通过一定大量的练习和上机验证才能掌握 4 4 2算术表达式算术表达式是由算术运算符和括号连接起来的式子 应该注意 在C语言中使用的算术运算符与中学所学的不同 以 表示除 以 表示乘 例如 5 7 表示 5除以7 3 4 表示 3乘以4 4 4 3赋值运算符和表达式1简单赋值赋值运算符记为 由 连接的式子称为赋值表达式 其一般形式为 变量 表达式例如 z x y w sin a sin b k i 赋值表达式的功能是计算表达式的值再赋予左边的变量 2连续赋值也可以采用连续赋值的方法 其格式为 变量1 变量2 变量3 变量n 表达式此时 计算表达式的值 并赋给这一系列变量 3赋值语句与赋值表达式在其它高级语言中 赋值构成了一个语句 称为赋值语句 而在C中 把 定义为运算符 从而组成赋值表达式 凡是表达式可以出现的地方均可出现赋值表达式 在C语言中也可以组成赋值语句 任何表达式在其未尾加上分号就成为语句 因此如x 8 a b c 5 都是赋值语句 4赋值转换如果赋值运算符两边的数据类型不相同 系统将自动进行类型转换 即把赋值号右边的类型换成左边的类型 具体规定如下 实型赋予整型 舍去小数部分 整型赋予实型 数值不变 但将以浮点形式存放 即增加小数部分 小数部分的值为0 字符型赋予整型 由于字符型为一个字节 而整型为二个字节 故将字符的ASCII码值放到整型量的低八位中 高八位为0 整型赋予字符型 只把低八位赋予字符量 例4 4 见课本 4 4 4逗号运算符和逗号表达式在C语言提供了一种特殊的运算符号 称为逗号运算符 用来把两个表达式连接起来 相当于一个表达式 其一般形式为 表达式1 表达式2 例4 5 见课本 逗号表达式可以嵌套 即表达式1和表达式2也可以是逗号表达式 逗号表达式的一般形式为 表达式1 表达式2 表达式n整个逗号表达式的最终值等于表达式n的值 4 5逻辑运算 4 5 1关系运算关系运算实际上就是比较运算 就是将两值进行比较 判断是否符合给定的条件 比较两个量的运算符称为关系运算符 关系运算符的优先级低于算术运算符 高于赋值运算符 在六个关系运算符中 的优先级相同 高于 和 和 的优先级相同 4 5 2关系表达式由关系运算符连接起来的表达式称为关系表达式 如 a 6就是一个关系表达式 具体讲 当a 8时 此关系表达式的值为真 用1表示关系表达式为真 用0表示关系表达式为假 关系表达式的一般形式为 表达式关系运算符表达式上述的一般形式中 表达式也可以是关系表达式 此时 则出现了关系表达式的嵌套 例4 6 见课本 4 5 3逻辑运算符C语言中提供了三种逻辑运算符 和 为双目运算符 要求两个运算量 为单目运算符 要求一个运算量 逻辑运算符和其它运算符优先级的关系可表示如下 优先于算术运算符和赋值运算符 优先于赋值运算符 但低于算术运算和关系运算 按照运算符的优先顺序可以得出 a b c d等价于 a b c d b c dc x yc x y b 逻辑运算的值也为 真 和 假 两种 用 1 和 0 来表示 而参与逻辑运算的量可以是0 表示假 或非0 表示真 其求值规则如下 与运算 表达式1 表达式2 当表达式1的值和表达式2的值均为真时 整个与运算表达式的值为真 否则为 假 或运算 表达式1 表达式2 当表达式1的值或者表达式2的值有一个真时 整个或运算表达式的值为真 当表达式1的值或者表达式2的值都为假时则为 假 非运算 表达式 当表达式1的值为真时 非运算表达式的值为假 当表达式的值为假时则为 真 4 5 4逻辑表达式用逻辑运算符将关系表达式或逻辑量连接起来的表达式叫做逻辑表达式 其一般形式为 表达式逻辑运算符表达式其中的表达式可以又是逻辑表达式 从而组成了嵌套的情形 例如 a b c根据逻辑运算符的左结合性 上式也可写为 a b c逻辑表达式的值是式中各种逻辑运算的最终值 结果只能是 1 和 0 分别代表 真 和 假 例4 7 见课本 例4 8 见课本 4 6条件运算符和条件表达式 条件语句是C语言独有的 它根据条件是否成立而赋予变量不同的值 它有效地增加了程序的效率 条件运算符有以下两个 和 它是C语言中唯一的三目运算符 即有三个元素参与运算 由条件运算符组成条件表达式的一般形式为 变量 表达式1 表达式2 表达式3其求值规则为 如果表达式1的值为真 则把表达式2的值赋给变量 否则把以表达式3的值赋给变量 例4 9 见课本 例4 10 见课本 使用条件表达式时 还应注意以下几点 条件运算符的运算优先级低于关系运算符和算术运算符 但高于赋值符 条件运算符 和 是一对运算符 必须配对使用 例4 11 见课本
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!