《第四章分支结构精选文档.ppt》由会员分享,可在线阅读,更多相关《第四章分支结构精选文档.ppt(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第四章分支结构本讲稿第一页,共二十七页一、关系运算符和关系表达式关系运算符运算结果举例结果 表达式成立结果为1不成立结果为0 32 1 8=8=5 1 =5,=,63的结果是?如何表示x在3和6之间?本讲稿第三页,共二十七页一、关系运算符和关系表达式1、表示变量x是偶数的表达式?2、表示变量year能被100整除?3、表示变量i是变量x的因子?4、表示变量x能被变量i整除的表达式本讲稿第四页,共二十七页二、逻辑运算符和逻辑表达式逻辑运算符结果 表达式1&表达式2若表达式1和表达式2都不为0,结果为1,否则为0 表达式1|表达式2若表达式1和表达式中有一个不为0,则为1,否则为0 !表达式若表达
2、式为非0,则结果为0否则为1本讲稿第五页,共二十七页二、逻辑运算符和逻辑表达式几点说明:1、对于&,如果其左边的表达式结果为0,则整个表达式的结果为0,右边的表达式不会被计算。2、对于|,如果其左边的表达式结果为非0,则整个表达式的结果为1,右边的表达式不会被计算3、!的优先级高于&,&的优先级高于|的优先级,左结合本讲稿第六页,共二十七页二、逻辑运算符和逻辑表达式举例:x=3,y=4,z=5 (1)3&4&5的结果 (2)(4-4)&x+后x的值是什么?(3)3|+y后y的值是什么?(4)0|3&!7本讲稿第七页,共二十七页二、逻辑运算符和逻辑表达式1、表示year为闰年的表达式闰年是能被4
3、整除但不能被100整除或者能被400整除的数2、表示 变量x是变量a和变量b的公约数3、表示变量x是变量a和变量b的公倍数本讲稿第八页,共二十七页三、条件运算符(?:)和条件表达式1、形式:表达式1?表达式2:表达式32、计算方法计算表达式1的值,如果为真(非0),则取表达式2的值作为整个表达式的值,否则取表达式3的值作为整个表达式的值3、举例:ab?a:b4、结合性:右结合 ab?a:bc?b:c本讲稿第九页,共二十七页三、多种运算混合运算时优先级(1)单目运算符高于双目运算符,双目运算符高于三目运算符(2)双目运算符中,算术运算符高于关系运算符,关系运算符高于逻辑运算符,逻辑运算符高于赋值
4、运算符(3)可使用()改变优先级本讲稿第十页,共二十七页多种运算混合运算习题3+54-2&3*4=2*6|c=35的结果是?本讲稿第十一页,共二十七页问题int a,b;scanf(“%d,%d”,&a,&b);if(ab)printf(“%d”,a);else printf(“%d”,b);本讲稿第十二页,共二十七页分支结构上课开运动会明天下雨?是否后续工作本讲稿第十三页,共二十七页分支结构的实现nif语句nif else语句nif语句嵌套nswitch语句本讲稿第十四页,共二十七页if语句if(表达式)语句int a,bscanf(“%d”,&a);b=a;if(a0)b=-a;print
5、f(“%d,%dn”,a,b);本讲稿第十五页,共二十七页使用if语句编程对于变量a和b,其值从键盘输入。对其值进行判断,如果a的值小于b的值,则交换a,b的值,要求始终保证a的值大于等于b的值int a,b,t;scanf(“%d,%d”,&a,&b);if(a=0)b=a;else b=-a;printf(“%d”,b);本讲稿第十八页,共二十七页编程判断任一个三位数是否为水仙花数n水仙花数?一个三位数,其各位数字的立方和等于其本身,则该数为水仙花数n例 153=13+53+33nint x;scanf(“%d”,&x);如何提取x的各位数字本讲稿第十九页,共二十七页水仙花数百位数字:a=
6、x/100 153/100=1十位数字:b=(x-a*100)/10 (153-100)/10=5个位数字:c=x%10 153%10=3判断水仙花数:a*a*a+b*b*b+c*c*c=x本讲稿第二十页,共二十七页编程实现int x,a,b,c;scanf(“%d”,&x);a=x/100;b=(x-a*100)/10;c=x%10;if(a*a*a+b*b*b+c*c*c=x)printf(“yes”);else printf(“no”);本讲稿第二十一页,共二十七页if else嵌套if(表达式1)语句1else if(表达式2)语句2 else if(表达式3)语句3匹配原则:else
7、总是与之前离它最近的尚未得到匹配的if进行匹配 本讲稿第二十二页,共二十七页问题从键盘上任意输入一个月份,输出该月份的最大日期数int month;scanf(“%d”,&month);本讲稿第二十三页,共二十七页编程实现本讲稿第二十四页,共二十七页多分支结构(switch)nswitch(表达式)case 常量表达式1:语句序列1 case 常量表达式2:语句序列2 .case 常量表达式n:语句序列n default:语句序列n+1 本讲稿第二十五页,共二十七页编程实现switch(month)case 1:case 3:case 5:case 7:case 8:case 10:case 12:days=31;break;case 4:case 6:case 9:case 11:days=30;break;case 2:if(year%4=0&year%100!=0|year%400=0)days=29;else days=28;default:days=0;本讲稿第二十六页,共二十七页本讲稿第二十七页,共二十七页
限制150内