c语言第3章(数据类型和表达式)

c语言第3章(数据类型和表达式)

ID:39963438

大小:797.31 KB

页数:20页

时间:2019-07-16

c语言第3章(数据类型和表达式)_第1页
c语言第3章(数据类型和表达式)_第2页
c语言第3章(数据类型和表达式)_第3页
c语言第3章(数据类型和表达式)_第4页
c语言第3章(数据类型和表达式)_第5页
资源描述:

《c语言第3章(数据类型和表达式)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、3.10不同数据类型间的转换不同类型的数据(int;float;char)可以进行混合运算如:10+‘a’+1.5-8765.1234*‘b’(1)混合运算的规则不同类型数据混合运算,先转化为同一类型。转化规则(运算符“=”除外)将“较低类型”转换为“较高类型”(数值不变)后,再进行运算。运算结果是“较高类型”的数据。例:3.0+4/2表达式的值?5.03.0+23.0+2.0形式:(数据类型)表达式当需要做一些特殊的运算,必须使用强制类型转换运算。例1:intk=3;floatx;执行:x=1/k;问x的值?如何让x得到0.3333333的值?例2:inta=3,b=4

2、;floatx=10.4,y=3.5;表达式:(float)(a+b)/2+(int)x%(int)y的结果?[注意](1)转换是暂时的,定义是永久的;(2)它是一个运算符,单目运算,优先级为2;(2)强制类型转换运算:3.11关系运算符关系运算实际上是两个量的比较,比较的结果只有两种可能:真、假例如a>3?当a=5时,比较的结果为真,当a=1时,结果为假。有六种关系运算符<,<=,>,>===,!=关于优先次序<,<=,>,>=为同一级别;==和!=为同一级别。结合规则:从左到右。算术运算符关系运算符赋值运算符高低关系表达式用关系运算符将两个表达式连接起来,叫关系表达式

3、合法的关系表达式:a>b;a+b>b+c;(a=3)>(b=5);(a==3)>(b==5);‘a’<‘b’;(a>b)>(b=0的值为1;例1:设:a=3,b=2,c=1,则:a>b的值为1;(a>b)==c的值为1;b+cb中d的值为a>b的值,为1。f=a>b>c中的值为1>c的值,为0。例2:intx=5,y=z=4;执行:x==(y=z);后,表达式的值是多少?x的值是多少?例3:intx=5,y=z=4;执行:x=

4、y==z;后,表达式的值是多少?x的值是多少?(1)应避免对实数作相等或不等的判断inta=0,b=1;if(a=b)/*应该为a==b*/printf(“a等于b”);elseprintf(“a不等于b”);0.1*10.0==1.0结果为?可改写为:fabs(0.1*10.0-1.0)<1e-6(2)注意区分“=”与“==”关系运算注意运算符名称目数!逻辑非单目&&逻辑与双目

5、

6、逻辑或3.12逻辑运算符是单目运算符,优先级为高。1.逻辑非,运算符为!!0的值为1;!1的值为02.逻辑与,运算符为&&BAA&&B如图电路A——表示开关A合上;B——表示开关B合上;A&&

7、B——表示灯亮;ABA&&B1111000100003.逻辑或,运算符为

8、

9、如图电路A——表示开关A合上;B——表示开关B合上;A

10、

11、B——表示灯亮;BAA

12、

13、BABA

14、

15、B111101011000逻辑运算符的优先级!→&&→

16、

17、逻辑运算符“&&”和“

18、

19、”低于关系运算符,“!”是单目运算符,高于算术运算符。单目算术关系逻辑赋值(++,--,!,-等)(&&和

20、

21、)a>b&&x>y相当于:(a>b)&&(x>y)a==b

22、

23、x==y相当于:(a==b)

24、

25、(x==y)!a

26、

27、a>b相当于:(!a)

28、

29、(a>b)在C语言中,当判断一个量的真假时,一切非零的数据均可以当成‘真

30、’来处理。当:x=6,表达式:33&&x<5(√)例2:设x=4,y=5;下面表达式的值是什么?(++x==5)&&(y++==6);x=?;y=?例3:要表示:x∈(3,5),写出表达式。例1:若a=3,!a的值为0;若a=3,b=5,则:a&&b的值为1;a

31、

32、b的值为1;!a&&b的值为0;常用的条件判断表达式1)charc;判断c是否为数字字符:c>=‘0’&&c<=‘9‘为真2)charc;判断c是否为英文字母:c>=‘A’&&c<=‘Z’

33、

34、c>=‘a’&&c<=‘z‘为真3)floatx,y;或doublex,y;判断x

35、==y:fabs(x-y)<=1e-6为真4)floatx,y;或doublex,y;判断x!=y:fabs(x-y)>1e-6为真;&&和

36、

37、的短路规则在含有逻辑运算符&&或

38、

39、的表达式中,并不是所有逻辑运算符都有机会被执行。只有在必须执行下一个运算符才能求出表达式值时,才执行该运算符。所以,不是所有的子表达式都有机会被执行。目的:提高运算速度。执行顺序:从左向右设e1,e2,e3均为逻辑表达式:e1&&e2&&e3;e1

40、

41、e2

42、

43、e3;e1

44、

45、e2&&e3;相当于:e1

46、

47、(e2&&e3)e1&&e2

48、

49、e3;相当于:(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。