华科c语言第2章数据类型、运算符和表达式课稿.ppt

华科c语言第2章数据类型、运算符和表达式课稿.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 数据类型、运算符和表达式 2.1 数据类型 2.2 常量和变量 2.3 运算符和表达式 2.4 位运算 2.5 运算符的优先级 2.6 格式化输入输出函数的进一步讨论 2.7 常见问题分析 2.1 数据类型 模数: n位整数(包括一位符号位),则它的模数为 2n 。 补数: 一个数减去另一个数,或者说一个数加上一个负数,等于第一个数加上第二个数的补数。例:8+(-2)=8+10(mod12) 一个二进制负数可用其模数与真值做加法 (模减去该数的绝对值) 求得其补码。 计算机中的补码表示法 负数的补码由该数反码的末位加 1 求得 对补码再求补即得到原码 补码运算规则 1.符号位可作为数值参加运算 2.减法运算可转换为加法运算: 加上一个负数等于加上该数的补码 3.补码运算的结果仍为补码 4.运算结果溢出: 负数之和得正数,或正数之和得负数 +6710 = 010000112 -1010 = 111101102 0 1 0 0 0 0 1 1 2 + 1 1 1 1 0 1 1 0 2 结果: 1 0 0 1 1 1 0 0 1 2 = 5710 溢出例: +8510 = 010101012 +4410 = 001011102 0 1 0 1 0 1 0 1 2 + 0 0 1 0 1 1 0 0 2 结果: 1 0 0 0 0 0 0 1 2 = -12710 十进制小数转换成R进制小数 “乘 R 取整”法,例如: 高位 0.3125 ×2 = 0 .625 0.625 ×2 = 1 .25 0.25 ×2 = 0 .5 0.5 ×2 = 1 .0 所以 0.312510 = 0.01012 不同进位记数制间的转换 二、八、十六进制的相互转换 每位八进制数相当于三位二进制数 每位十六进制数相当于四位二进制数 (1011010.10)2=(001 011 010 .100)2 =(132.4)8 (1011010.10)2=(0101 1010 .1000)2 =(5A.8)16 (F7)16=(1111 0111)2=2 关于算术运算符的使用有以下规则 +、-、*、/运算符的运算量可为任何整型或浮点型的常 量、变量、有返回值的函数以及表达式。 (2) 正如在数学中除法运算的除数不能为0一样,在x/y中,表 达式y的取值也不能为0,否则将出现错误。 (3) %运算符要求运算量必须是整型,且%后面的运算量不能 为0。 例如: 3 % 5 结果为3 -17 % 5 结果为-2 20 % 10 结果为0 (4) 当双目运算符的两个运算量的类型相同时,它们的运算 结果的类型与运算量类型相同。 例如: 17.5 + 2.5 结果为double型20.0 16 / 7 结果为整型2,小数部分被省去 16 .0/ 5.0 结果为double型3.2 (5) 当双目运算符的两个运算量的类型不同时,运算前遵循 类型的一般转换规则将运算量自动转换成相同的类型,运算 结果的类型与转换后的运算量的类型相同(类型的一般转换规 则将在本章的后面介绍)。 例如: 15.5 + 5 操作数15.5的类型为double型,运算前将整型数5转换成 double型数5.0,然后进行运算,结果为double型数20.5 1.算术运算时的自动类型转换 它的基本规则可描述为:双目运算符的两个运 算量中,值域较窄的类型向值域较宽的类型转换。 “值域”就是类型所能表示的值的最大范围。算术转 换遵循的转换方向如下图所示: 同时要注意三点: 表达式中的有符号和无符号字符以及短整型一律 被转换为整型,如果int类型能表示原来类型的值, 则转换成int类型,否则转换成unsigned类型。 (2) 当一个运算量为long类型,另一个为unsigned类 型时,如果long能表示unsigned的全部值,则将 unsigned转换成long,否则将两个运算量都转换为 unsigned long。 (3)当两运算量中有一个为float类型,将两个运算量 都

文档评论(0)

1112111 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档