变量赋值运算符表达式例.pptVIP

  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文档。上传文档
查看更多
变量赋值运算符表达式例

* 注意: (1)赋值表达式中的“表达式”又可以是一个赋值表达式 例:a=(b=5) 相当于执行“b=5”和“a=b”两 个赋值表达式 (2)赋值表达式作为左值时应加括号 说明:赋值运算符按照“自右而左”的结合顺序, 因此,“a=(b=5)”和“a=b=5”等价 分析赋值表达式: (a=3*5)=4*3 赋值表达式为左值 右值 说明:先执行括号内的运算,将15赋给a,然后执行4*3的运算,得12,再把12赋给a。最后a的值为12,整个表达式的值为12。 注意:赋值表达式作为左值时应加括号。 (3)赋值表达式也可以包含复合的赋值运算符 例: a+=a-=a*a 求解步骤如下: ① 先进行“a-=a*a”的运算, 它相当于:a=a-a*a, a的值为12-144=-132。 ② 再进行“a+=-132”的运算,相当于:a=a+(-132), a的值为-132-132=-264。 (4)赋值表达式作为表达式的一种,不仅可以出现在赋值语句中,而且可以以表达式形式出现在其他语句(如输出语句、循环语句等)中 。 printf(″%d″,a=b); 例: 如果赋值运算符两侧的类型一致,则直接进行赋值。 如果赋值运算符两侧的类型不一致,但都是数值型或字符型时,在赋值时要进行类型转换。类型转换是系统自动进行的。 例:i=6 (假设i已定义为int型) 3.赋值过程中的类型转换 转换规则: (1) 将浮点型数据(包括单、双精度)赋给整型变量时,先对浮点数取为整,然后赋予整型变量。 (2) 将整型数据赋给单、双精度变量时,数值不变,但以浮点数形式存储到变量中。 例: int i=3.6; 例: float a=3; (3) 将一个double型数据赋给float变量时,截取其前面7位有效数字,存放到float变量的存储单元(4个字节)中。但应注意数值范围不能溢出;将一个float型数据赋给double变量时,数值不变,有效位数扩展到16位,在内存中以8个字节存储。 (4)字符型数据赋给整型变量时,将字符的ASCII码赋给整型变量。 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 注意:要避免进行这种赋值,因为赋值后数值可能发生失真。如果一定要进行这种赋值,应当保证赋值后数值不会发生变化。 (5)将一个占字节多的整型数据赋给一个占字节少的整型变量/字符变量时,只将其低字节原封不动地送到该变量. 例:i=289; /* 已定义i为整型变量 */ c=′a′; /* 已定义c为字符变量 */ c=i; /* 将一个占2字节的int型数据赋给char型变量 */ i=289 ↓↓↓↓↓↓↓↓ C=33 例3.1有符号整数赋值给无符号整型变量,数据会失真。 运行结果:4294967295 说明:由于a是无符号整型变量,因此不能用%d 输出格式符,而要用输出无符号数的“%u”格式符。 1 1 11 11 11 11 11 11 11 #include stdio.h void main ( ) {unsigned a; int b; b=-1; a=b; printf(%u\n,a); } 1 1 11 11 11 11 11 11 11 b a 运行结果 -1 说明:执行“b=a”时,将a的两个字节(全1)赋给b,由于是有符号的整型数,笫1个二进位是1表示此数是一个负数,16位全1是-1的补码。 (7)将无符号整数赋值给长度相同的有符号整型变量时,应注意不要超出有符号整型变量的数值范围,否则会出错。 例3.2:无符号整数赋值给有符号整型变量,注意数值范围。 #include stdio.h void main ( ) {unsigned a; int b; a=65535; /* 两个字节16位全为1 */ b

文档评论(0)

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

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

1亿VIP精品文档

相关文档