C语言程序设计案例教程-刘小华-3.4赋值运算符与表达式.pptxVIP

C语言程序设计案例教程-刘小华-3.4赋值运算符与表达式.pptx

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
赋值运算符与表达式Teacher teaching design CONTENTS 目 录赋值运算符类型转换复合的赋值运算符案例分析 交流提升仿真演练 体验探索 赋值运算符PART 01 赋值运算符符号“=”就是赋值运算符,它的作用是将一个数据赋给一个变量。如:“x=12”的作用是把常量12赋给变量x。也可以将一个表达式的值赋给一个变量。赋值运算符具有右结合性,其优先级为14,低于算术运算符。赋值表达式:一般形式为:变量=表达式 说明:表达式是指由C的合法运算符连接常量、变量、函数而成的合法式子。赋值表达式的值:赋值表达式的值就是被赋值变量的值。由于C语言将“=”定义为赋值运算符,因此其求值过程应按运算符的规定进行。假如: int a=12,b=5,c=3;则赋值表达式x=a/b*c 的计算结果为x=6,既赋值表达式x=a/b*c 的值为6。赋值表达式 a=b=c=13的值为13 。a=b=c=13可理解为 a=(b=(c=13))x=(a=10)+(b=20) 的值为 30 。其含义是把10赋给a,20赋给b,再把a,b相加的和赋给x,故x应等于30。赋值运算的功能是先计算右边表达式的值,然后再把此值赋给赋值号左边的变量,确切地说,是把数据放入以该变量为标识的存储单元中去。 类型转换PART 02 类型转换如果赋值运算符两边的数据类型不相同,系统将自动进行类型转换,即把赋值号右边的类型换成左边的类型。例如:(1)实型赋予整型,舍去小数部分。如:int x;x=3.14159;结果x=3。(2)整型赋给单、双精度变量时,数值不变,但将以浮点数形式存储。如:将89赋给float变量y,先将89转换为89.00000,再存储到y中。(3)字符型赋予整型,由于字符型为一个字节,而整型为二个字节,故将字符的ASCII码值放到整型量的低八位中,高八位为0。整型赋予字符型,只把低八位赋予字符量。 复合的赋值运算符PART 03 复合的赋值运算符在赋值符“=”之前加上其它二元运算符可构成复合赋值符。如+=,- =,*=,/=,%=都是复合赋值符。复合赋值运算的一般格式为: 变量 双目运算符 = 表达式 └──┬──┘ 复合赋值运算符它等价于:变量 = 变量 双目运算符 (表达式)。例如: x%=y 相当于 x=x%y a*=b+c 相当于 a=a*(b+c):复合赋值符的优先级和赋值运算符相同(14级),结合性也相同。这种写法的目的是可以提高编译效率并产生质量较高的目标代码。 案例分析 交流提升PART 04 案例分析 交流提升【例1】程序运行的结果为: main(){int x=3,y=5;x*=x+y;printf(“x=%d\n”,x);}【例2】以下程序运行后的输出结果是 。 main() { int a=1,b=2,c=3; if(c=a) printf(%d\n,c); else printf(%d\n,b); }【例3】以下程序运行后的输出结果是 。 main() { char c; int n=100; float f=10; double x; x=f*=n/=(c=50); printf(%d %f\n,n,x); } 仿真演练 体验探索PART 05 仿真演练 体验探索1、赋值运算符的使用(1)若有定义int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为( ) A)1.0 B)1 C)2.0 D)2(2)设a和b均为double型变量,且a=5.5,b=2.5,则表达式(int)a+b/b的值是( )A)6.500000 B)6 C)5.500000 D)6.000000(3)若已定义x 和y 为double,则表达式x=1,y=x+3/2 的值是( )A) 1 B)2 C)2.0 D)2.5(4)下列程序的输出结果是( )#includestdio.hmain(){ double d=3.2;int x,y; x=1.2;y=(x+3.8)/5.0; printf(%d\n,d*y);}A) 3 B)3.2 C)0 D)3.07(5)有以下程序运行后的输出结果是( ) main() { int m=3,n=4,x; x=-m++; x=x+8/++n;

您可能关注的文档

文档评论(0)

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

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档