[理学]第三章 数据类型、运算符、表达式.ppt

[理学]第三章 数据类型、运算符、表达式.ppt

  1. 1、本文档共103页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]第三章 数据类型、运算符、表达式

3.6各类数值型数据之间的混合运算 3.6.1 自动转换 3.6.2 强制转换 3.7.1 C表达式 算术表达式。如2+6.7*3.5+sin(0.5) 赋值表达式。如a=5.6 逗号表达式。如a=3,y=4,z=8 用逗号连接若干个表达式,顺序执行这些表达式,整个逗号表达式的值是最后一个表达式的值(今为8) 强制类型转换运算符 赋值运算时不同类型数据间的自动转换 1、实型数据赋值给整型数据时,舍弃小数部分; 即:int=float的结果为int型。 如:float a; int s; a=12.34 ; s=a; 这时s的值为12。 2、将整型数据赋值给实型变量时,数值不变,但数据是浮点形式的; 即float=int的结果为float型。 如:int s; float a; s=12; a=s; 这时a的值为12.00000。 舍弃 3、当字符数据赋值给整型变量时,则将字符数据放到整型变量的低8位中 即: int=char 如:unsigned char c; int x; c=‘\376’; x=c; 则x的值为254。 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 赋值运算时不同类型数据间的自动转换 复合赋值运算符的使用要点 1、含义:在赋值运算符“=”之前加上其它运算符构成的运 算符。 2、一般形式: 表达式1 运算符=表达式2 等价于:表达式1=表达式1 运算符 表达式2 如: a+=3 等价于 a=a+3 x*=3 等价于 x=x*3 x%=3 等价于 x=x%3 x/=y+3 等价于 x=x/(y+3) 3、使用要点 凡是二元(二目)运算符,都可以与“=”组合成复合赋值符 如:+=,-=,*=,/=,%=,=,=,=,^=,|=等。 使用复合赋值符的目的:简化程序;提高编译效率。 1、含义:用于分隔各个表达式,最后一个表达式的值代表整个表达式的值 2、形式: 简单形式:表达式1,表达式2 如:a=1,a+2 一般形式:表达式1,表达式2,表达式3,。。。,表达式n 如:a=3,a+3,a+10,a=a+20,a+1 3、求解过程 从左至右依次计算各个表达式的的值,最后一个表达式的值即为整个表达式的值。 例:1)a=3*5,a*4 结果为60 2)(a=3*5,a*4),a+5 结果为20 “顺序求值运算符” 4、使用要点 优先级在所有运算符中为最低。 如: x=(a=3,6*a) 结果为 x=18 x=a=3,6*a 结果为 18 (x=3) 并非任何地方出现的“,”都是作为运算符使用的。如: printf(“%d,%d,%d”,a,b,c); 即函数参数间的“,”只作为分隔符。 3.9逗号运算符和逗号表达式 (1)花括号{} 它用来包括一个控制模块,如果这个模块是在一个函数中,那么左花括号放在函数名的下一行,紧靠左边界,如: int add(int x,int y) { 如果花括号被用来在程序中限制一个运算块,则也使左花括号放在控制表达式的下一行,右花括号放在被包括的语句的下一行,都与控制表达式的边界对齐。 如: 3.10 编程一般规范 for (i=0;i256;i++) { printf(“%d %d\n”,I,x); x+=5; } (2)缩进 缩进总是以3个空格为单位。 题目: 1、若有以下定义,则能使值为3的表达式是—— int k=7,x=12 A)x%=(k%=5) B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)-(k%=5) D 2、已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’十‘6’—‘3;后,c2中的值为 A)D B)67 C)不确定的值 D)C 3、设以下变量均为int类型,则值不等于7的表达式是 A) (x= y= 6, x+y,x+1) B)(x= y= 6,x+y,y+1) (x= 6,x+1,y= 6,x+y) D) (y=6,y+l,x = y,x+1) 4、设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为 A)int B) float C) double D

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档