中国高等院校计算机基础教育课程体系规划教材讲授-第2章.pptVIP

中国高等院校计算机基础教育课程体系规划教材讲授-第2章.ppt

  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文档。上传文档
查看更多
* * * * * * * * * * * * * * * 假设已指定i为整型变量,f为float变量,d为double型变量,e为long型,有下面表达式: 10+′a′+i*f-d/e 运算次序为: ①进行10+′a′的运算,先将′a′转换成整数97,运算结果为107。②进行i*f的运算。先将i与f都转换成double型,运算结果为double型。③整数107与i*f的积相加。先将整数107转换成双精度数(小数点后加若干个0,即107.000…00),结果为double型。④将变量e转换成double型,d/e结果为double型。⑤将10+′a′+i*f的结果与d/e的商相减,结果为double型。 上述的类型转换是由系统自动进行的。 在C和C++中,常在表达式中使用自增(++)和自减(--)运算符,他们的作用是使变量的值增1或减1,如 ++i、--i 、i++ 、i-- 、 请注意: (1) 自增运算符(++)和自减运算符(--)只能用于变量,而不能用于常量或表达式。 (2) ++和--的结合方向是“自右至左”,见附录B。 (3) 自增(减)运算符在C++程序中是经常见到的,常用于循环语句中,使循环变量自动加1。也用于指针变量,使指针指向下一个地址。 2.5.4 自增和自减运算符 强制类型转换的一般形式为 (类型名)(表达式) 也可以:类型名(表达式) 注意: 1、如果要进行强制类型转换的对象是一个变量,该变量可以不用括号括起来。如果要进行强制类型转换的对象是一个表达式,则表达式应该用括号括起来。如写成:(int)x+y 2、但许多人仍习惯于用第一种形式,把类型名包在括号内,这样比较清楚。 3、强制类型转换时,得到一个所需类型的中间变量,但原来变量的类型未发生变化。如:(int)x,若x原定为float型,值为3.6,进行强制类型运算后得到一个int型的中间变量,它的值等于3,而x原来的类型和值都不变。 2.5.5 强制类型转换运算符 赋值符号“=”就是赋值运算符,它的作用是将一个数据赋给一个变量。如“a=3”的作用是执行一次赋值操作(或称赋值运算)。把常量3赋给变量a。也可以将一个表达式的值赋给一个变量。 2.6 赋值运算符与赋值表达式 2.6.1 赋值运算符 如果赋值运算符两侧的类型不一致,但都是数值型或字符型时,在赋值时会自动进行类型转换。 (1) 将浮点型数据赋给整型变量时,舍弃其小数部分。 (2) 将整型数据赋给浮点型变量时,数值不变,但以指数形式存储到变量中。 (3) double型数据赋给float变量,注意数值范围不能溢出。 字符型数据赋给整型变量,将字符的ASCII码赋给整型变量。 (5) 将一个int、short或long型数据赋给一个char型变量,只将其低8位原封不动地送到char型变量(发生截断)。 (6) 将signed(有符号)型数据赋给长度相同的unsigned(无符号)型变量,将存储单元内容原样照搬(连原有的符号位也作为数值一起传送)。 2.6.2 赋值过程中的类型转换 在赋值符“=”之前加上其他运算符,可以构成复合的运算符。如果在“=”前加一个“+”运算符就成了复合运算符“+=”。例如,可以有 a+=3 等价于 a=a+3 x*=y+8 等价于 x=x*(y+8) x%=3 等价于 x=x%3 以“a+=3”为例来说明,它相当于使a进行一次自加3的操作。即先使a加3,再赋给a。同样,“x*=y+8”的作用是使x乘以(y+8),再赋给x。 C++可以使用以下几种复合赋值运算符: +=,-=,*=,/=,%=,=,=,=,∧=,|= 2.6.3 复合的赋值运算符 由赋值运算符将一个变量和一个表达式连接起来的式子称为“赋值表达式”。 它的一般形式为 变量 赋值运算符 表达式 赋值表达式中的“表达式”,又可以是一个赋值表达式。如 a=(b=5) a=b=c=5 (赋值表达式值为5,a,b,c值均为5) a=5+(c=6) (表达式值为11,a值为11,c值为6) a=(b=4)+(c=6) (值为10,a值为10,b等于4,c等于6) a=(b=10)/(c=2) (值为5,a等于5,b等于10,c等于2) 2.6.4 赋值表达式 C++提供一种特殊的运算符——逗号运算符。用它将两个表达式连接起来。如 3+5,6+8 称为逗号表达式,又称为“顺序求值运算符”。逗号表达式的一般形式为 表达式1,表达式2 逗号表达式的求解过程是:先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。如,逗号表达式 a=3*5,a*4 2.7 逗号运算符与逗号表达式

文档评论(0)

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

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

1亿VIP精品文档

相关文档