C语言实例05.ppt





《C语言实例05.ppt》由会员分享,可在线阅读,更多相关《C语言实例05.ppt(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第五章第五章 选择结构程序设计选择结构程序设计 关系运算符有关系运算符有:=!=第五章第五章 选择结构程序设计选择结构程序设计逻辑运算符有逻辑运算符有:!&|关系表达式的值是一个关系表达式的值是一个逻辑值逻辑值,即即“真真”或或“假假”。C语言中以语言中以 1 代表代表“真真”,以以 0 代表代表“假假”注意注意逻辑表达式的值也逻辑表达式的值也只有两个值只有两个值。C语言中用语言中用 1 表示表示“真真”,用,用 0 表示表示“假假”。5.1 关系运算符和关系表达式关系运算符和关系表达式(在第三章已作了介绍)(在第三章已作了介绍)5.2 逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式 if 语句
2、用来判定给定的条件是否满足,根据判定的结语句用来判定给定的条件是否满足,根据判定的结果来决定执行何种操作。果来决定执行何种操作。表达式表达式语句语句假假真真 1.if(表达式表达式)语句语句5.3.1 if 语句的三种形式语句的三种形式例如例如:if(xy)printf(%d,x);5.3 if 语句语句2.if(表达式表达式)语句语句1 else 语句语句2例如:例如:if(xy)printf(%d,x);else printf(%d,y);表达式表达式语句语句2假假真真语句语句1 p A B真真假假N-S流程图流程图3.if(表达式表达式1)语句语句 1 else if(表达式表达式2)语
3、句语句 2 else if(表达式表达式3)语句语句 3 .else if(表达式表达式n)语句语句 n esle 语句语句 n+1表达式表达式1语句语句1假假真真表达式表达式2语句语句2真真表达式表达式3语句语句3假假真真假假语句语句4例如例如:if(x1)y=1;else if(x0)y=0.5;else if(x-1)y=-0.5;else y=-1;只执行一个语句只执行一个语句注意注意 1.if 语句中的语句中的“表达式表达式”可以是可以是任何的数值类型任何的数值类型(整型、实型、整型、实型、字符型等字符型等)。只要只要“表达式表达式”的值的值 不等于不等于0,就执行后面的就执行后面的
4、“语句语句”。2.在带有在带有 else 的的 if 语句中,语句中,“语句语句1”、“语句语句2”仍然以仍然以“;”结结束,束,不可缺少。不可缺少。else 是是 if 语句的一部分语句的一部分,else 部分不能单独使用部分不能单独使用,必须与必须与 if 配对出现配对出现 3.如果如果 if 或或 else 后面的后面的“语句语句”有多个操作语句时,必须用有多个操作语句时,必须用 “”将这些将这些 语句括起来成为一条语句语句括起来成为一条语句(即复合语句即复合语句),但是但是 之外不要加之外不要加“;”。注注 意意 输入两个实数,按从小到大的次序输出输入两个实数,按从小到大的次序输出。#
5、include void main()float a,b,t;scanf(%f,%f,&a,&b);if(ab)t=a;a=b;b=t;printf(%f,%fn,a,b);注意如何交换两个数注意如何交换两个数例例 5.1#include void main()float a,b,c,t;scanf(%f,%f,%f,&a,&b,&c);if(ab)t=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个数,要求按由小到大的顺序输出。个数,要求按由小到大的顺序输出。例例 5.2
6、在一个在一个 if 语句中又包含一个或多个语句中又包含一个或多个 if 语句时称为语句时称为 if 语句语句的的嵌套嵌套。一般形式一般形式:else 总是与它上面的最接近的总是与它上面的最接近的 if 相配对相配对.对于容易混淆的内嵌对于容易混淆的内嵌 if 语句语句,可以用可以用 来限定其范围来限定其范围内嵌内嵌 if 语句语句内嵌内嵌 if 语句语句if(.)if(.)语句语句 1 else 语句语句 2else if(.)语句语句 3 else 语句语句 4注意注意5.3.2 if 语句的嵌套语句的嵌套if(.)if(.)语句语句1else 语句语句2(else 与与 哪个哪个 if 相
7、配相配?)if(.)if(.)语句语句1 else 语句语句2(else 与与 哪个哪个 if 相配相配?)比较比较:void main()int x,y;scanf(%d,&x);if(x0)y=-1;else if(x=0)y=0;else y=1;printf(x=%d,y=%dn,x,y);有一函数有一函数 -1 (x0)编一个程序输入编一个程序输入 x,输出输出 y。程序流程图程序流程图:xb)?a:b 就是一个条件表达式就是一个条件表达式表达式表达式1真真假假值值=表达式表达式2值值=表达式表达式35.3.3 条件运算符条件运算符算术运算符算术运算符 高高 关系运算符关系运算符 逻
8、辑运算符逻辑运算符 条件运算符条件运算符赋值运算符赋值运算符 低低 2.条件运算符的条件运算符的优先级优先级:条件运算符条件运算符 优先于赋值运算符优先于赋值运算符,低于关系运算符和算术运算符低于关系运算符和算术运算符。1.条件表达式的求解过程:条件表达式的求解过程:1)求解求解表达式表达式1的值的值 2)如果)如果表达式表达式1的值为的值为真真(非非0),求解求解“表达式表达式2”的值作为整个条件表达式的值的值作为整个条件表达式的值;如果如果表达式表达式1的值为的值为假假(等于等于0),求解求解“表达式表达式3”的值作为整个条件表达式的值。的值作为整个条件表达式的值。3.条件运算符的条件运算
9、符的结合方向结合方向:自右至左自右至左,例如:,例如:ab?a:cd?c:d;相当于:相当于:ab?a:(cd?c:d);(1)只有当只有当 if 语句中内嵌的语句为赋值语句语句中内嵌的语句为赋值语句,并且两个分支并且两个分支 都赋给同一个变量时都赋给同一个变量时,才才 能用条件运算符代替。能用条件运算符代替。if(ab)max=a;max=ab?a:b;else max=b;(2)条件表达式中,表达式条件表达式中,表达式 1 的类型可以与表达式的类型可以与表达式 2、表达式表达式 3 的类型不同。的类型不同。例如:例如:ch=x?a:b f=xy?1:1.5 注意:注意:(3)ab?a:b+
10、1 相当于相当于 ab?a:(b+1)(4)if(ab)printf(“%d”,a);else printf(“%d”,ab?a:b);printf(“%d”,b);输入一个字母,判断是否为大写字母,如果是,则输入一个字母,判断是否为大写字母,如果是,则 转换为小写字母,并以小写字母输出。转换为小写字母,并以小写字母输出。#include void main()char ch;scanf(%c,&ch);ch=(ch=A&ch=Z)?(ch+32):ch;printf(%c,ch);例例 5.4 switch 语句是语句是多分支选择语句。多分支选择语句。if 语句只有两个分支语句只有两个分支,
11、当遇到多分支选择时当遇到多分支选择时,可以用嵌套可以用嵌套 if 语句语句 来处理来处理,但是由于需要嵌套的但是由于需要嵌套的 if 语句层次多语句层次多,因此程序的可读性降因此程序的可读性降 低。语言中的低。语言中的 switch 语句可直接处理多分支选择。语句可直接处理多分支选择。它的一般形式它的一般形式:switch(表达式表达式)case 常量表达式常量表达式1:语句语句 1 case 常量表达式常量表达式2:语句语句 2 .case 常量表达式常量表达式n:语句语句n default:语句语句 n+15.4 switch 语句语句 1.switch 后面括号内的后面括号内的“表达式表
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 实例 05

限制150内