程序控制结构选择结构

程序控制结构选择结构

ID:38558725

大小:726.81 KB

页数:38页

时间:2019-06-14

程序控制结构选择结构_第1页
程序控制结构选择结构_第2页
程序控制结构选择结构_第3页
程序控制结构选择结构_第4页
程序控制结构选择结构_第5页
资源描述:

《程序控制结构选择结构》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、选择结构本讲内容:关系运算和逻辑运算(2)单分支结构(3)双分支结构3.1关系运算和逻辑运算一、关系运算符>>=<<===!=1.不同运算符之间的优先级2.关系运算符之间的优先级低于算术运算符,高于赋值运算符①{==,!=}的优先级相同,{>,>=,<,<=}优先级相同②{==,!=}的优先级低于{>,>=,<,<=}的优先级3.结合性:左结合性二、关系表达式:用关系运算符连接起来的式子关系表达式的值只有2个,1表示真,0表示假1>2值为6<10值为1>2==0值为3.1关系运算和逻辑运算如:假0真1注意:(1)字符数据按其ASCII码值

2、进行比较'a'>'b'值为如:97>98013.1关系运算和逻辑运算(2)应避免2个实数作==或!=的比较floata=1.23456789;floatb=1.23456788;intc;c=a==b;如:结果:c=1Why?精度问题!(3)5>2>7>8是允许的,它相当于((5>2)>7)>8(4)可以将关系表达式看成是一种整型表达式c=(a==b);三、逻辑运算符!&&

3、

4、3.1关系运算和逻辑运算1、3个运算符的优先级由高到低为:!&&

5、

6、2、!的优先级高于关系运算,&&和

7、

8、的优先级低于关系运算。3、!是右结合性,&&和

9、

10、是左

11、结合性,四、逻辑表达式例:使用逻辑表达式表示x∈[-1,1]区间3.1关系运算和逻辑运算1.逻辑表达式的值只有2个:真,假进行判断时,非零值代表“真”,零值代表“假”(x>=-1)&&(x<=1)30

12、

13、x<-100例:如何表述“2020&&x<30)

14、

15、x<-100x>20&&x<30

16、

17、x<-100x>=-1&&x<=1ab!aa&&ba

18、

19、b00100非000010非0101非0非0011逻辑运算规则表2、逻辑运算中的规律3.1关系运算和逻辑运算(2)类似有1

20、

21、a==1(1)在&&表

22、达式中,若左端为0,则不必再计算右端,表达式值为0即:0&&a==0规律:0

23、

24、a==a0&&a==01

25、

26、a==11&&a==aa

27、

28、a==aa&&a==aa

29、

30、!a==1a&&!a==0!(a

31、

32、b)==!a&&!b!(a&&b)==!a

33、

34、!b3.1关系运算和逻辑运算例:a=1,b=2,c=3,d=4,m=n=1;(m=a>b)&&(n=c>d);printf("m=%d,n=%d",m,n);结果:m=0,n=1(m=(a>b))&&(n=c>d)(m=0)&&(n=c>d)0&&(n=c>d)0例:x=y=z=0;++x

35、

36、++

37、y&&++z;printf("%d,%d,%d",x,y,z);(++x)

38、

39、((++y)&&(++z))1

40、

41、((++y)&&(++z))++x

42、

43、++y&&++z;1结果:1,0,0(m=a>b)&&(n=c>d)3.1关系运算和逻辑运算例:x=y=z=-1;++x&&++y

44、

45、++z;printf(“%d,%d,%d”,x,y,z);结果:0,-1,0++x&&++y

46、

47、++z;((++x)&&(++y))

48、

49、(++z)(0&&(++y))

50、

51、(++z)0

52、

53、(++z)0

54、

55、0++y不进行运算++z进行运算3.2.1单分支结构1

56、、语法形式:if(表达式)语句;2、执行过程:先计算表达式的值,若为真(非0值),则执行其后的语句,若值为0,则继续向下执行语句真假PPA真(非0)假(0)3、常见的错误(1)if(x>0);y=3*x+2;(2)if(x=2)printf(“x>0”);(3)if(1<=x<=10)y=x-1;空语句!赋值语句!(1<=x)<=10x=100(1<=100)<=101<=101表达式的值为真3.2.1单分支结构例3-1:输入2个实数,按由小到大的顺序输出#includevoidmain(){floata,b,t;pri

57、ntf("inputa,b:");scanf("%f%f",&a,&b);if(a>b)t=a;a=b;b=t;printf("%.2f,%.2f",a,b);}输入a,bt=aa>b?输出a,b真假a=bb=t3.2.1单分支结构if(a>b){t=a;a=b;b=t;}括号不能省略!例3-2:输入3个实数,按由小到大的顺序输出输入x1,x2,x3输出x1,x2,x3x1>x2?x1x2真假x1>x3?x1x3真假x2>x3?x2x3真假#includevoidmain(){floatx1,x2,x3,

58、temp;scanf("%f%f%f",&x1,&x2,&x3);if(x1>x2){temp=x1;x1=x2;x2=temp;}printf("%.2f,%.2f,%.2f",x1,x

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

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

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