欢迎来到天天文库
浏览记录
ID:46972813
大小:335.50 KB
页数:34页
时间:2019-12-02
《谢丽聪老师C语言课件-5分支结构程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第五章分支结构程序设计5.1关系运算符和表达式5.2逻辑运算符和表达式5.3逻辑表达式的跳跃5.4if语句5.5switch语句5.1关系表达式由关系运算符、圆括号把两个表达式连接起来的式子。——表示条件若所表示的条件成立、则其值为1(非0)、否则其值为0。关系运算符:<、<=、>、>=、==、!=例:a>=2、3>9、’a’!=(a=8)、x+(y=3)==k*z、(a!=3)>(kb>c>d应表示为a>b&&b>c&&c>d不能顺手也写为a>b>c>d关系运算符都是双目
2、运算符,其结合性均为左结合。关系运算符的优先级低于算术运算符,高于赋值运算符。在六个关系运算符中,<,<=,>,>=的优先级相同,高于==和!=,==和!=的优先级相同。5.2逻辑表达式:由逻辑运算符、圆括号把表达式连接起来的式子——表示条件若所表示的条件成立、其值为1(非0)、否则其值为0逻辑运算符:&&(与)、
3、
4、(或)、!(非)&&和
5、
6、均为双目运算符,具有左结合性。!为单目运算符,具有右结合性。逻辑运算符和其它运算符优先级的关系可表示如下:!(非)→&&(与)→
7、
8、(或)“&&”和“
9、
10、”低于关系运算符,“!”高于算术运算符。按照运算符的优先
11、顺序可以得出:a>b&&c>d等价于(a>b)&&(c>d)!b==c
12、
13、d14、15、(dc&&x+yc)&&((x+y)3&&a==8→2>3&&1→0&&1→02、x+y&&’a’→2&&97→13、x+(y=3)==k*z16、17、!a→0+3==-118、19、!a→020、21、0→04、(x!=7)22、23、’a’→0!=724、25、97→126、27、97→15、!(x+y>3&&a==8)→!(2>3&&1)→!(0&&1)→!0→16、!(28、k*q)→!(-1)→07、!!!x→!!(1)→!(0)→15.3逻辑表达式的跳跃作第一个,知道结果,后面不作,如:∥∥&&&&非0不算0要算0不算非0要算1、执行inta,b,c;a=b=c=0;++a29、30、++b&&++c;后a、b、c值分别为1、0、02、执行inta=5,b=6,x=1,y=2;(a=x>y)&&(b=x>y);后a、b值分别为0、6a=1停止不算值为0赋给a,停止不算3、执行inta,b,c;a=b=c=-1;++a&&++b31、32、++c;后a、b、c值分别为0、-1、01a=02不算,值为03c=04整体为0例1:main(33、){charc='k';inti=1,j=2,k=3;floatx=3e+5,y=0.85;printf("%d,%d",!x*!y,!!!x);printf("%d,%d",x34、35、i&&j-3,i36、37、i+j+k);}运行结果:0,01,00,10X为非0为非0,后面不算为0,后面不算为1,后面要算5.4选择结构(if语句)5.4.1if语句的三种形式1、第一种形式为基本形式:ifif(表达式)语句语义:如果表达式的值为真,则执行其后的语句,否则不执行该语38、句。其过程可表示为下图。表达式可以是任意合法表达式,后面不能加;例2:voidmain(){inta,b,max;printf("inputtwonumbers:");scanf("%d%d",&a,&b);max=a;if(max39、=b;b=t;}if(amain(){charc,a;c=getchar();if(c<=‘a’40、41、c>=‘z’)a=c;/*判断非小写字母情况*/if(c<=‘z’&&c>=‘a’)a=c-32;*判断是否是小写42、字母情况*/printf("%c",a);}main(){charc;c=getchar();if(c<
14、
15、(dc&&x+yc)&&((x+y)3&&a==8→2>3&&1→0&&1→02、x+y&&’a’→2&&97→13、x+(y=3)==k*z
16、
17、!a→0+3==-1
18、
19、!a→0
20、
21、0→04、(x!=7)
22、
23、’a’→0!=7
24、
25、97→1
26、
27、97→15、!(x+y>3&&a==8)→!(2>3&&1)→!(0&&1)→!0→16、!(
28、k*q)→!(-1)→07、!!!x→!!(1)→!(0)→15.3逻辑表达式的跳跃作第一个,知道结果,后面不作,如:∥∥&&&&非0不算0要算0不算非0要算1、执行inta,b,c;a=b=c=0;++a
29、
30、++b&&++c;后a、b、c值分别为1、0、02、执行inta=5,b=6,x=1,y=2;(a=x>y)&&(b=x>y);后a、b值分别为0、6a=1停止不算值为0赋给a,停止不算3、执行inta,b,c;a=b=c=-1;++a&&++b
31、
32、++c;后a、b、c值分别为0、-1、01a=02不算,值为03c=04整体为0例1:main(
33、){charc='k';inti=1,j=2,k=3;floatx=3e+5,y=0.85;printf("%d,%d",!x*!y,!!!x);printf("%d,%d",x
34、
35、i&&j-3,i36、37、i+j+k);}运行结果:0,01,00,10X为非0为非0,后面不算为0,后面不算为1,后面要算5.4选择结构(if语句)5.4.1if语句的三种形式1、第一种形式为基本形式:ifif(表达式)语句语义:如果表达式的值为真,则执行其后的语句,否则不执行该语38、句。其过程可表示为下图。表达式可以是任意合法表达式,后面不能加;例2:voidmain(){inta,b,max;printf("inputtwonumbers:");scanf("%d%d",&a,&b);max=a;if(max39、=b;b=t;}if(amain(){charc,a;c=getchar();if(c<=‘a’40、41、c>=‘z’)a=c;/*判断非小写字母情况*/if(c<=‘z’&&c>=‘a’)a=c-32;*判断是否是小写42、字母情况*/printf("%c",a);}main(){charc;c=getchar();if(c<
36、
37、i+j+k);}运行结果:0,01,00,10X为非0为非0,后面不算为0,后面不算为1,后面要算5.4选择结构(if语句)5.4.1if语句的三种形式1、第一种形式为基本形式:ifif(表达式)语句语义:如果表达式的值为真,则执行其后的语句,否则不执行该语
38、句。其过程可表示为下图。表达式可以是任意合法表达式,后面不能加;例2:voidmain(){inta,b,max;printf("inputtwonumbers:");scanf("%d%d",&a,&b);max=a;if(max
39、=b;b=t;}if(amain(){charc,a;c=getchar();if(c<=‘a’
40、
41、c>=‘z’)a=c;/*判断非小写字母情况*/if(c<=‘z’&&c>=‘a’)a=c-32;*判断是否是小写
42、字母情况*/printf("%c",a);}main(){charc;c=getchar();if(c<
此文档下载收益归作者所有