欢迎来到天天文库
浏览记录
ID:60760683
大小:210.50 KB
页数:41页
时间:2020-02-02
《第五章 选择结构程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第四章选择结构程序设计对于如下的函数计算,算法上属于一个选择结构。y=用于实现选择结构的主要是if语句。1/x当x≠0时10000当x=0时主要内容关系运算符和关系表达式逻辑运算符和逻辑表达式if语句switch语句if语句的最常见形式为:if(关系表达式)语句1;else语句2;如:if(x!=0)y=1/x;elsey=10000;其中x!=0就是一个关系表达式!=就是一个关系运算符4.1关系运算符和关系表达式1、关系运算符用于进行比较运算的运算符。共有六种:<<=>>===!=■优先级与结合性:①前4种大于后两种。②低于算术运算符而高于赋值运算符。③
2、左结合性。算术运算符关系运算符赋值运算符高低例:c>a+ba>b==ca==bcc>(a+b)(a>b)==ca==(bc)2、关系表达式一般形式:〈表达式〉〈关系运算符〉〈表达式〉如:a>ba+b>b+c经过关系运算后最终有一个值--关系表达式的值。关系表达式的值只有0(假)或1(真)例:设a=2,b=4,c=1计算以下关系表达式的值:a>ba+b>b+c‘a’>’b’可以是字符表达式(x=2)>(y=5)可以是赋值表达式(a(b3、式的值:x+z>yxz==x>zy>x>z(x==y-2)x+15.2逻辑运算符和逻辑表达式有时,只用一个简单的关系表达式无法完整地表达一个条件,如:y=其中的条件需要用逻辑表达式来表达:x!=0&&a!=0&&就是一种逻辑运算符。1/x+1/a当x≠0,a≠0时10000其它1、逻辑运算符&&逻辑与两个操作数都为真时&&运算结果为真。4、5、逻辑或两个操作数之一为真时即为真。!逻辑非(单目运算)操作数为真(假)时为假(真)。如:若a=2,b=3,c=0则:a6、7、8、b9、10、逻辑或赋值运算符■结合性:&&,11、12、:左结合性!:右结合性2、逻辑表达式实际上,前面所举例子即为逻辑表达式:a13、14、b15、16、c!a+c&&b+c!c+a==b17、18、b19、20、a+b>c+10对于逻辑表达式的两21、种基本技能:①逻辑表达式的计算。a&&b&&ca22、23、b24、25、c1.(m=a>b)&&(n=c>d)2.(m=a>b)26、27、(n=c>d)a=1,b=2,c=3,d=4,m=n=1,m=?n=?②逻辑表达式的构造。逻辑表达式的构造举例:a≥b≥ca和b之一为0,但不同时为0a>=b>=c5>=4>=3a>=b&&b>=ca==0&&b!=028、29、a!=0&&b==0a*b==0&&a+b!=0对于a==0&&b!=030、31、a!=0&&b==0a==0可以用!a代替a!=0可以直接用a!a&&b32、33、a&&!b但必须是运算结果作为逻辑量的情况下。y=(a!=0)与y=a34、不等效_Boola,b;boola,b;#includea=3>-1&&4<=4;i1.inta=2,b=3,c=6;(a=b35、36、(b=5)37、38、(c=3)3.inta=-2,b=-3,c=-1;(a==b>1)+(a&&!c)+b/a*2.05.3if语句1、if语句的三种形式①if(表达式)语句;有一分支为空。scanf(“%d”,&score);if(score>=60)printf(“pass”);②if(表达式)语句1;else语句2;if(x!=0)y39、=1/x;elsey=10000;③if(表达式1)语句1;elseif(表达式2)语句2;elseif(表达式3)语句3;┇else语句n;if(score==100)printf(“A”);elseif(score>=90)printf(“B”);elseif(score>=80)printf(“C”);elseif(score>=70)printf(“D”);elseif(score>=60)printf(“E”);elseprintf(“F”);对于:1/x当x≠0时10000当x=0时一般用:if(x!=0)y=1/x;elsey=10000;也40、可用:y=10000;if(x!=0)y=1/x;y=?y=1/x
3、式的值:x+z>yxz==x>zy>x>z(x==y-2)x+15.2逻辑运算符和逻辑表达式有时,只用一个简单的关系表达式无法完整地表达一个条件,如:y=其中的条件需要用逻辑表达式来表达:x!=0&&a!=0&&就是一种逻辑运算符。1/x+1/a当x≠0,a≠0时10000其它1、逻辑运算符&&逻辑与两个操作数都为真时&&运算结果为真。
4、
5、逻辑或两个操作数之一为真时即为真。!逻辑非(单目运算)操作数为真(假)时为假(真)。如:若a=2,b=3,c=0则:a
6、
7、
8、b9、10、逻辑或赋值运算符■结合性:&&,11、12、:左结合性!:右结合性2、逻辑表达式实际上,前面所举例子即为逻辑表达式:a13、14、b15、16、c!a+c&&b+c!c+a==b17、18、b19、20、a+b>c+10对于逻辑表达式的两21、种基本技能:①逻辑表达式的计算。a&&b&&ca22、23、b24、25、c1.(m=a>b)&&(n=c>d)2.(m=a>b)26、27、(n=c>d)a=1,b=2,c=3,d=4,m=n=1,m=?n=?②逻辑表达式的构造。逻辑表达式的构造举例:a≥b≥ca和b之一为0,但不同时为0a>=b>=c5>=4>=3a>=b&&b>=ca==0&&b!=028、29、a!=0&&b==0a*b==0&&a+b!=0对于a==0&&b!=030、31、a!=0&&b==0a==0可以用!a代替a!=0可以直接用a!a&&b32、33、a&&!b但必须是运算结果作为逻辑量的情况下。y=(a!=0)与y=a34、不等效_Boola,b;boola,b;#includea=3>-1&&4<=4;i1.inta=2,b=3,c=6;(a=b35、36、(b=5)37、38、(c=3)3.inta=-2,b=-3,c=-1;(a==b>1)+(a&&!c)+b/a*2.05.3if语句1、if语句的三种形式①if(表达式)语句;有一分支为空。scanf(“%d”,&score);if(score>=60)printf(“pass”);②if(表达式)语句1;else语句2;if(x!=0)y39、=1/x;elsey=10000;③if(表达式1)语句1;elseif(表达式2)语句2;elseif(表达式3)语句3;┇else语句n;if(score==100)printf(“A”);elseif(score>=90)printf(“B”);elseif(score>=80)printf(“C”);elseif(score>=70)printf(“D”);elseif(score>=60)printf(“E”);elseprintf(“F”);对于:1/x当x≠0时10000当x=0时一般用:if(x!=0)y=1/x;elsey=10000;也40、可用:y=10000;if(x!=0)y=1/x;y=?y=1/x
9、
10、逻辑或赋值运算符■结合性:&&,
11、
12、:左结合性!:右结合性2、逻辑表达式实际上,前面所举例子即为逻辑表达式:a
13、
14、b15、16、c!a+c&&b+c!c+a==b17、18、b19、20、a+b>c+10对于逻辑表达式的两21、种基本技能:①逻辑表达式的计算。a&&b&&ca22、23、b24、25、c1.(m=a>b)&&(n=c>d)2.(m=a>b)26、27、(n=c>d)a=1,b=2,c=3,d=4,m=n=1,m=?n=?②逻辑表达式的构造。逻辑表达式的构造举例:a≥b≥ca和b之一为0,但不同时为0a>=b>=c5>=4>=3a>=b&&b>=ca==0&&b!=028、29、a!=0&&b==0a*b==0&&a+b!=0对于a==0&&b!=030、31、a!=0&&b==0a==0可以用!a代替a!=0可以直接用a!a&&b32、33、a&&!b但必须是运算结果作为逻辑量的情况下。y=(a!=0)与y=a34、不等效_Boola,b;boola,b;#includea=3>-1&&4<=4;i1.inta=2,b=3,c=6;(a=b35、36、(b=5)37、38、(c=3)3.inta=-2,b=-3,c=-1;(a==b>1)+(a&&!c)+b/a*2.05.3if语句1、if语句的三种形式①if(表达式)语句;有一分支为空。scanf(“%d”,&score);if(score>=60)printf(“pass”);②if(表达式)语句1;else语句2;if(x!=0)y39、=1/x;elsey=10000;③if(表达式1)语句1;elseif(表达式2)语句2;elseif(表达式3)语句3;┇else语句n;if(score==100)printf(“A”);elseif(score>=90)printf(“B”);elseif(score>=80)printf(“C”);elseif(score>=70)printf(“D”);elseif(score>=60)printf(“E”);elseprintf(“F”);对于:1/x当x≠0时10000当x=0时一般用:if(x!=0)y=1/x;elsey=10000;也40、可用:y=10000;if(x!=0)y=1/x;y=?y=1/x
15、
16、c!a+c&&b+c!c+a==b
17、
18、b19、20、a+b>c+10对于逻辑表达式的两21、种基本技能:①逻辑表达式的计算。a&&b&&ca22、23、b24、25、c1.(m=a>b)&&(n=c>d)2.(m=a>b)26、27、(n=c>d)a=1,b=2,c=3,d=4,m=n=1,m=?n=?②逻辑表达式的构造。逻辑表达式的构造举例:a≥b≥ca和b之一为0,但不同时为0a>=b>=c5>=4>=3a>=b&&b>=ca==0&&b!=028、29、a!=0&&b==0a*b==0&&a+b!=0对于a==0&&b!=030、31、a!=0&&b==0a==0可以用!a代替a!=0可以直接用a!a&&b32、33、a&&!b但必须是运算结果作为逻辑量的情况下。y=(a!=0)与y=a34、不等效_Boola,b;boola,b;#includea=3>-1&&4<=4;i1.inta=2,b=3,c=6;(a=b35、36、(b=5)37、38、(c=3)3.inta=-2,b=-3,c=-1;(a==b>1)+(a&&!c)+b/a*2.05.3if语句1、if语句的三种形式①if(表达式)语句;有一分支为空。scanf(“%d”,&score);if(score>=60)printf(“pass”);②if(表达式)语句1;else语句2;if(x!=0)y39、=1/x;elsey=10000;③if(表达式1)语句1;elseif(表达式2)语句2;elseif(表达式3)语句3;┇else语句n;if(score==100)printf(“A”);elseif(score>=90)printf(“B”);elseif(score>=80)printf(“C”);elseif(score>=70)printf(“D”);elseif(score>=60)printf(“E”);elseprintf(“F”);对于:1/x当x≠0时10000当x=0时一般用:if(x!=0)y=1/x;elsey=10000;也40、可用:y=10000;if(x!=0)y=1/x;y=?y=1/x
19、
20、a+b>c+10对于逻辑表达式的两
21、种基本技能:①逻辑表达式的计算。a&&b&&ca
22、
23、b
24、
25、c1.(m=a>b)&&(n=c>d)2.(m=a>b)
26、
27、(n=c>d)a=1,b=2,c=3,d=4,m=n=1,m=?n=?②逻辑表达式的构造。逻辑表达式的构造举例:a≥b≥ca和b之一为0,但不同时为0a>=b>=c5>=4>=3a>=b&&b>=ca==0&&b!=0
28、
29、a!=0&&b==0a*b==0&&a+b!=0对于a==0&&b!=0
30、
31、a!=0&&b==0a==0可以用!a代替a!=0可以直接用a!a&&b
32、
33、a&&!b但必须是运算结果作为逻辑量的情况下。y=(a!=0)与y=a
34、不等效_Boola,b;boola,b;#includea=3>-1&&4<=4;i1.inta=2,b=3,c=6;(a=b35、36、(b=5)37、38、(c=3)3.inta=-2,b=-3,c=-1;(a==b>1)+(a&&!c)+b/a*2.05.3if语句1、if语句的三种形式①if(表达式)语句;有一分支为空。scanf(“%d”,&score);if(score>=60)printf(“pass”);②if(表达式)语句1;else语句2;if(x!=0)y39、=1/x;elsey=10000;③if(表达式1)语句1;elseif(表达式2)语句2;elseif(表达式3)语句3;┇else语句n;if(score==100)printf(“A”);elseif(score>=90)printf(“B”);elseif(score>=80)printf(“C”);elseif(score>=70)printf(“D”);elseif(score>=60)printf(“E”);elseprintf(“F”);对于:1/x当x≠0时10000当x=0时一般用:if(x!=0)y=1/x;elsey=10000;也40、可用:y=10000;if(x!=0)y=1/x;y=?y=1/x
35、
36、(b=5)
37、
38、(c=3)3.inta=-2,b=-3,c=-1;(a==b>1)+(a&&!c)+b/a*2.05.3if语句1、if语句的三种形式①if(表达式)语句;有一分支为空。scanf(“%d”,&score);if(score>=60)printf(“pass”);②if(表达式)语句1;else语句2;if(x!=0)y
39、=1/x;elsey=10000;③if(表达式1)语句1;elseif(表达式2)语句2;elseif(表达式3)语句3;┇else语句n;if(score==100)printf(“A”);elseif(score>=90)printf(“B”);elseif(score>=80)printf(“C”);elseif(score>=70)printf(“D”);elseif(score>=60)printf(“E”);elseprintf(“F”);对于:1/x当x≠0时10000当x=0时一般用:if(x!=0)y=1/x;elsey=10000;也
40、可用:y=10000;if(x!=0)y=1/x;y=?y=1/x
此文档下载收益归作者所有