计算机C语言 第四章 选择结构.ppt
《计算机C语言 第四章 选择结构.ppt》由会员分享,可在线阅读,更多相关《计算机C语言 第四章 选择结构.ppt(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、柒闲测祖鸦旧弊瘤祷寐沮仙盲骚测俞衷峻香崖窖碎若恕扑邱示碟彰埃谗同计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构第五章第五章 选择结构程序设计选择结构程序设计窟孪甘瓷颅榜浴汹聚觅丹斑廊踩天蝗现岿敛犀疆吭技摈排仕拉琢孰畴库剔计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构25.1 关系运算符和关系表达式5.2 逻辑运算符和逻辑表达式5.3 if语句5.4 switch语句5.5 程序举例醛辑幂之襄娘帘烯又躲眷衙莉确粤险津筒牡瞥椅坚魂疫研慎等马胡疼板干计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构3【教学目的与要求】【教学重点与难点】掌握两种分支语句的语法规则
2、和功能,学会用分支方法进行简单分支程序设计,能使用分支语句编写程序。关系运算符与逻辑运算符及其组成的具有逻辑值的表达式、两种分支语句的格式及基本应用。妨宙前锋舜痞顷食脉哼惋耘职披殉读样胁赣拢扛往靛彤慨萝屹寺伦先啥韵计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构45.1(4.1)关系运算符和关系表达式关系运算符和关系表达式所所谓谓“关关系系运运算算”实实际际上上就就是是“比比较较运运算算”,即即将将两两个个数数据据进进行行比比较较,判判定定两两个个数数据据是是否否符符合给定的关系。合给定的关系。例例如如,“a b”中中的的“”表表示示一一个个大大于于关关系系运运算算。如如果果a的的
3、值值是是5,b的的值值是是3,则则大大于于关关系系运运算算“”的的结结果果为为“真真”,即即条条件件成成立立;如如果果a的的值值是是2,b的的值值是是3,则则大大于于关关系系运运算算“”的的结结果果为为“假假”,即条件不成立。,即条件不成立。关系运算的结果只能是关系运算的结果只能是“真真”或或“假假”怔弥霖沁胞殷卯耻做咳舔柳励照螟董呼涂唤垢整员谱棘药骚届台恼缎盛锭计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构51关系运算符C语言提供6种关系运算符:注意:“等于”关系运算符是双等号“=”,而不是单等号“=”(赋值运算符)。5.1.1 关系运算符及其优先次序 (小于小于)(大于大于)
4、=(大于或等于大于或等于)优先级相同(高)优先级相同(高)=(等于等于)!=(不等于不等于)优先级相同(低)优先级相同(低)此智樊氮喀崇消校请翼霄竖随言巨涣釜局甭郁暇剑挚龋蓬廖习顺孝趟假湾计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构62优先级优先级 与其它种类运算符的优先级关系与其它种类运算符的优先级关系 关系运算符的优先级,关系运算符的优先级,低于低于算术运算符,但算术运算符,但高于高于赋值运算符。赋值运算符。高算术运算符关系运算符赋值运算符 低 (优先级关系)例a=3,b=2,c=1;1).ca+b2).ab=c3).a!=bc等效于c(a+b)等效于(ab)=c等效于a!
5、=(bc)箱荣黎解坍描崭绢软饲极刑忿墟靛泅橡筐皱酞硒讲贱岛防择艰梧园犁仲啤计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构7 所谓关系表达式是指用关系运算符将两个表达式连接起来,进行关系运算的式子。例如,下面的关系表达式都是合法的:ab,a+bc-d,(a=3)=b,(ab)=(bc)关系表达式的值逻辑值(非“真”即“假”)。由于语言没有逻辑型数据,所以用整数“”表示“逻辑真”,用整数“”表示“逻辑假”。另外,所有非零值都可作为逻辑真5.1.2 关系表达式乡培确椎欲蔽栖懊奠坝鸽匹蜡危伤遣期勾哮澜殉穷档杀傲佳鹊凝废核满鞘计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构8
6、例如例如,假设假设a=3,b=4,c=5,则:,则:(1)ab的值为的值为0。(2)(ab)!=c的值为的值为1。(3)abc的值为的值为1。注注意意:这这里里任任意意改改变变a或或b的的值值,会会影影响响整整个个表表达达式的值吗?为什么?式的值吗?为什么?(4)(ab)+c的的值值为为6,因因为为a=0”。如。如果需要描述果需要描述“x=0”、同时、同时“x=0)&(x10)2.(x5)3.!(x=0)4.(year%4=0)&(year%100!=0)|(year%400=0)1.逻辑运算符及其运算规则(1)C语言提供三种逻辑运算符:&逻辑与(相当于“同时”)|逻辑或(相当于“或者”)!逻
7、辑非(相当于“否定”)5.2.1 逻辑运算符及其优先次序孪吧着刮雕诫醉珍休溪湾蹿峨通备辞论黑疚假宙怀琅噎缀靳煌垮壳撼石卖计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构10(2)运算规则 1)&:当且仅当两个运算量的值都为“真”时,运算结果为“真”,否则为“假”。2)|:当且仅当两个运算量的值都为“假”时,运算结果为“假”,否则为“真”。3)!:当运算量的值为“真”时,运算结果为“假”;当运算量的值为“假”时,运算结果为“真”。例如,假定x=5,则(x=0)&(x10)的值为“真”,(x5)的值为“假”。筐扎侩谴库刷稿圆呢凹掸锹垂凹墅洋犬良监系潍钓奈贤迁阵占伎赫熏匣湃计算机C语言
8、第四章 选择结构计算机C语言 第四章 选择结构11 2逻辑运算符的运算优先级逻辑运算符的运算优先级(1)逻逻辑辑非非的的优优先先级级最最高高,逻逻辑辑与与次次之之,逻逻辑辑或或最最低低,即:即:!(非)!(非)&(与)(与)|(或)(或)(2)与其它种类运算符的优先关系)与其它种类运算符的优先关系!非 高 算术运算符关系运算符&|赋值运算符优先级关系 低硒铰蔷究讲怠瘤烽遮虫园待冈国釜疹黄廖毕胚闸泉脚晃赶害蹭字新单城捶计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构12 1.所谓逻辑表达式是指用逻辑运算符将1个或多个表达式连接起来,进行逻辑运算的式子。例如,(year%4=0)&(y
9、ear%100!=0)|(year%400=0)就是一个判断一个年份是否是闰年的逻辑表达式。逻辑表达式的值也是一个逻辑值(非“真”即“假”)。5.2.1 逻辑表达式翼捆慧羽须牛锗眼糜套柄站熏辨堰廖沏测充符法朝魏控痰煞汽况营赴钱碍计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构132.逻辑量的真假判定逻辑量的真假判定0和非和非0C语语言言用用整整数数“1”表表示示“逻逻辑辑真真”、用用“0”表表示示“逻逻辑辑假假”。但但在在判判断断一一个个数数据据的的“真真”或或“假假”时时,却却以以0和和非非0为为根根据据:如如果果为为0,则则判判定定为为“逻逻辑辑假假”;如如果果为为非非0,则则
10、判判定定为为“逻逻辑真辑真”。例如,假设例如,假设num=12,则:,则:!num num=1 num31值等于值等于1值等于1壕亭裸趟橙畜疲娠虹豌羊握鲤酸疚且悦眩矢靶响踪元标探侠是颗虐邵挨簇计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构143说明 (1)逻辑运算符两侧的操作数,除可以是0和非0的整数外,也可以是其它任何类型的数据,如实型、字符型等。例如:a&b(2)在计算逻辑表达式时,只有在必须执行下一个表达式才能求解时,才求解该表达式(即并不是所有的表达式都被求解)。具体来说:&运算:对于逻辑与运算,如果第一个操作数被判定为“假”,系统不再判定或求解第二操作数。|运算:对于逻
11、辑或运算,如果第一个操作数被判定为“真”,系统不再判定或求解第二操作数。驳皋窒昨练何雏苟聊轻脱梅禾蛙违堪礁峪抹肤对杠匠合秸赘傻斡忘啃瘟杜计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构15例2:设n1、n2、n3、n4、x、y的值分别为1、2、3、4、1、1,则求解表达式“(x=n1n2)&(y=n3n4)”后,x的值是?y的值?例1:设a=3,b=4,x=0,y=0,求值:1、a y2、a=b|x=y 3、!a|a b 4、!a&b|x y5、int a=-1,b=1,c=2,d=3,m=5,n=2,k;k=(m=a+b)&(n=c+d)k为0,m为0,n为2 结果:0结果:1结
12、果:0结果:0 x的值变为,而y的值不变,仍等于1!鸭撞汾丁投榨迎示絮芝烁蚁炙眯扰面唐羡答全惦巧铝那木鞋播迂廖镐颠苛计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构165.3(4.3)if语句语句if语句:判断条件是否满足语句:判断条件是否满足,来决定程序的流程来决定程序的流程(执行两种操作之一)(执行两种操作之一)。if语句的三种形式语句的三种形式 1、if(表达式表达式)语句语句 例如:例如:if(xy)printf(%d,x);表达式表达式语句语句假假真真执行过程统酵饯符获怎嗜避乍准泼瘦拇份若资栏撕挨餐雕训叠闸仑夕帅夏赔汁言角计算机C语言 第四章 选择结构计算机C语言 第四章
13、 选择结构175.3 if.3 if语句语句2、if(表达式表达式)语句语句1 else 语句语句2如:if(xy)printf(%d,x);else printf(%d,y);表达式表达式语句语句1假假真真语句语句2炎猜审钒心糊商精慨泳碉综脾惠础蛙伶啼贯贿感去尧统咙蓝衅摹乔馅怯岔计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构183、if(表达式(表达式1)语句语句1 else if(表达式(表达式2)语句语句2 else if(表达式(表达式3)语句语句3 else if(表达式(表达式m)语句语句m else 语句语句n 5.3 if5.3 if语句语句表达式表达式1假假语语
14、句句1真真表达式表达式2语语句句2假假真真表达式表达式3语语句句3假假真真语语句句m表达式表达式m语语句句n假假真真例如:if(a500)b=4;else if(a300)b=3;else if(a100)b=2;else if(a50)b=1;else b=0;注意注意1:分号不能省分号不能省注意2:else与if的配对关系邵启屋逾掖篡跟显哗脯切校糕淀脏侧领栏嘛岭充口减宪啥叫靳脯幸失魔喜计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构19例例5.1 输入两个实数,按代数值由小到大输入两个实数,按代数值由小到大输出这两个数。输出这两个数。#includevoid main()flo
15、at a,b,t;scanf(%f,%f,&a,&b);if(ab)t=a;a=b;b=t;printf(%5.2f,%5.2f,a,b);运行示例3.6,-3.2-3.20,3.60 a b?交换交换a、b的值的值假假真真输出输出a、b的值的值瞪非庞乘是斌荡叹韵愤秸叫腔柳堵唬詹麦湍唱刁痒月字新盯蝇沿赤泄钞唤计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构20例例5.2 输入三个数,按由小到大输出。输入三个数,按由小到大输出。371371 173137#includevoid main()float a,b,c,t;scanf(%f,%f,%f,&a,&b,&c);if(ab)t=
16、a;a=b;b=t;if(ac)t=a;a=c;c=t;if(bc)t=b;b=c;c=t;printf(%5.2f,%5.2f,%5.2f,a,b,c);运行:3,7,1 1.00,3.00,7.00叠争宛且咯耐倘嵌伙淀泛奠襟膝骑啊怯削昆饮诬入让疫池止拔打爷球灿终计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构211if语句的一般格式语句的一般格式 if(表达式表达式)语句组语句组1;else 语句组语句组2;(1)if语句中的语句中的“表达式表达式”必须用必须用“()”括起来。括起来。(2)else子子句句(可可选选)是是if语语句句的的一一部部分分,必必须须与与if配配对对使
17、使用用,不不能单独使用。能单独使用。(3)当当if和和else下下面面的的语语句句组组,仅仅由由一一条条语语句句构构成成时时,也也可可不不使使用用复合语句形式(即去掉花括号)。复合语句形式(即去掉花括号)。2if语句的执行过程(1)没有else子句时 当“表达式”的值不等于0(即判定为“逻辑真”)时,则执行语句组1,否则直接转向执行下一条语句。(2)指定else子句时当“表达式”的值不等于0(即判定为“逻辑真”)时,则执行语句组1,然后转向下一条语句;否则,执行语句组2。If语句小结邮闷顽甚孜枫潘难罕罚带侠戮徒铲勺纳解糜汇煮舶缨学匪亦揪贱砂涨翱薛计算机C语言 第四章 选择结构计算机C语言 第四
18、章 选择结构22在if语句中又包含一个或多个if语句称为if语句的嵌套。一般形式如下:if()if()语句1 else 语句2else if()语句3 else 语句4 应当注意if与else的配对关系。从最内层开始,else总是与它上面最近的未曾配对的if配对。5.3.2 if语句的嵌套避免if与else配对错位的最佳办法是加大括号,同时,为了便于阅读,使用适当的缩进,(只有大括号能保证if和else不错位配对,缩进仅便于阅读)茎露拳砰捐窥译胖褪佰背再疆悬茫睛锄箱携重黍禹迫暴妻蜡磁朝雕油贾豢计算机C语言 第四章 选择结构计算机C语言 第四章 选择结构23假如写成:if ()if()语句1 e
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机C语言 第四章 选择结构 计算机 语言 第四 选择 结构
限制150内