欢迎来到天天文库
浏览记录
ID:51969736
大小:771.81 KB
页数:36页
时间:2020-03-26
《分支结构程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章分支结构程序设计主讲:李鑫表达式关系表达式逻辑表达式条件表达式语句if语句多分支语句(switch)4.1.1关系运算符和关系表达式关系运算:比较两个量(x,y)之间的关系xyx>=yx!=y比较的结果:真3>1假1>3intx=2,y=6;x=(y>3)x=(x>y)10x=1x=0关系运算符的优先级运算符优先级:算术运算符+-*/%关系运算符<<=>>===!=赋值运算符=d=b+2==3b-1==a!=c高 低d=((b+2)==3)((b-1)==a)!=c关系表达式32、33并且x<5区分真假的量逻辑运算符与或非逻辑运算的规则-真值表逻辑与&&逻辑或3、4、逻辑非!真值表xyx&&yx5、6、y!x假假001假真011真假010真真1105&&7是否合法?非0为真0为假!!1.2=?1!!‘A’=?逻辑表达式对于X&&Y,X和Y可以是:关系表达式或逻辑量x<=5&&x>=33&&5(x+y)&&7x,y可以是任意表达式判断逻辑量的真假非0表示真0表示假逻辑运算的结果1表示真0表示假运算符7、的优先级设x=1,y=2,c=0x>=y==c&&!x+2>3(x>=y==c)&&(!x+2>3)((x>=y)==c)&&((!x+2)>3)((x>=y)==c)&&(((!x)+2)>3)!算术运算符<<=>>===!=&&8、9、=,高低写出满足下列要求的表达式(1)ch是小写英文字母(设ch是字符型的变量)ch>=‘a’&&ch<=‘z’(2)x为零关系表达式x==0或逻辑表达式!x(3)x不为零x!=0或xx取0x==0真x取非0x==0假x取0!x真x取非0!x假英文字母?(4)x和y不同时为零x!=010、11、y!=0或x12、13、y(5)y14、ear是闰年,即year能被4整除但不能被100整除,或year能被400整除(year%4==0&&year%100!=0)15、16、(year%400==0)或(!(year%4)&&year%100)17、18、!(year%400)逻辑运算符&&和19、20、intx,y;/*假设每次运算后,将x的值置1*/y=(3>1&&x++);y=(3<1&&x++);y=(3<121、22、x++);y=(3>123、24、x++);exp1&&exp2先算exp1,若其值为0,STOPexp125、26、exp2先算exp1,若其值为1,STOP运算完以后x和y的值?y=1x=2y=0x27、=1y=1x=2y=1x=14.2.1基本的If语句1.if–else结构if(exp)statement_1elsestatement_2表达式语句1语句2非00x+2x>0y=x2x<=0if(x>0)y=x+2;elsey=x*x;if(exp)statement_1elsestatement_2一条语句一条语句scanf(“%d%d”,&a,&b);if(a!=b){t=a;a=b;b=t;printf(“&d,%d”,a,b);}elsepintf(“a==b”);绝不能出现2个;区分非0和0的任意表达式2.省略else的if结构if28、(exp)statement_1表达式语句1非00ch=getchar();if(ch>=‘a’&&ch<=‘z’)ch=ch-’a’+’A’;putchar(ch);ch=getchar();if(ch>=‘a’&&ch<=‘z’){ch=ch-’a’+’A’;putchar(ch);}输入m输入M输入m输入M输入3个数,输出其中的最大值#includevoidmain(){inta,b,c,max;printf(“inputa,b,c:”);scanf(“%d,%d,%d”,&a,&b,&c);max=a;if(max29、30、p_2)statement_2……elseif(exp_n-1)statement_n-1elsestatement_n表达式1语句1语句2语句n-1
2、33并且x<5区分真假的量逻辑运算符与或非逻辑运算的规则-真值表逻辑与&&逻辑或
3、
4、逻辑非!真值表xyx&&yx
5、
6、y!x假假001假真011真假010真真1105&&7是否合法?非0为真0为假!!1.2=?1!!‘A’=?逻辑表达式对于X&&Y,X和Y可以是:关系表达式或逻辑量x<=5&&x>=33&&5(x+y)&&7x,y可以是任意表达式判断逻辑量的真假非0表示真0表示假逻辑运算的结果1表示真0表示假运算符
7、的优先级设x=1,y=2,c=0x>=y==c&&!x+2>3(x>=y==c)&&(!x+2>3)((x>=y)==c)&&((!x+2)>3)((x>=y)==c)&&(((!x)+2)>3)!算术运算符<<=>>===!=&&
8、
9、=,高低写出满足下列要求的表达式(1)ch是小写英文字母(设ch是字符型的变量)ch>=‘a’&&ch<=‘z’(2)x为零关系表达式x==0或逻辑表达式!x(3)x不为零x!=0或xx取0x==0真x取非0x==0假x取0!x真x取非0!x假英文字母?(4)x和y不同时为零x!=0
10、
11、y!=0或x
12、
13、y(5)y
14、ear是闰年,即year能被4整除但不能被100整除,或year能被400整除(year%4==0&&year%100!=0)
15、
16、(year%400==0)或(!(year%4)&&year%100)
17、
18、!(year%400)逻辑运算符&&和
19、
20、intx,y;/*假设每次运算后,将x的值置1*/y=(3>1&&x++);y=(3<1&&x++);y=(3<1
21、
22、x++);y=(3>1
23、
24、x++);exp1&&exp2先算exp1,若其值为0,STOPexp1
25、
26、exp2先算exp1,若其值为1,STOP运算完以后x和y的值?y=1x=2y=0x
27、=1y=1x=2y=1x=14.2.1基本的If语句1.if–else结构if(exp)statement_1elsestatement_2表达式语句1语句2非00x+2x>0y=x2x<=0if(x>0)y=x+2;elsey=x*x;if(exp)statement_1elsestatement_2一条语句一条语句scanf(“%d%d”,&a,&b);if(a!=b){t=a;a=b;b=t;printf(“&d,%d”,a,b);}elsepintf(“a==b”);绝不能出现2个;区分非0和0的任意表达式2.省略else的if结构if
28、(exp)statement_1表达式语句1非00ch=getchar();if(ch>=‘a’&&ch<=‘z’)ch=ch-’a’+’A’;putchar(ch);ch=getchar();if(ch>=‘a’&&ch<=‘z’){ch=ch-’a’+’A’;putchar(ch);}输入m输入M输入m输入M输入3个数,输出其中的最大值#includevoidmain(){inta,b,c,max;printf(“inputa,b,c:”);scanf(“%d,%d,%d”,&a,&b,&c);max=a;if(max
29、
30、p_2)statement_2……elseif(exp_n-1)statement_n-1elsestatement_n表达式1语句1语句2语句n-1
此文档下载收益归作者所有