六C语言程序设计选择结构一.ppt

上传人:京东小超市 文档编号:6058667 上传时间:2020-09-02 格式:PPT 页数:29 大小:2.53MB
返回 下载 相关 举报
六C语言程序设计选择结构一.ppt_第1页
第1页 / 共29页
六C语言程序设计选择结构一.ppt_第2页
第2页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《六C语言程序设计选择结构一.ppt》由会员分享,可在线阅读,更多相关《六C语言程序设计选择结构一.ppt(29页珍藏版)》请在三一文库上搜索。

1、垫 篓 镊 瓣 捻 呆 象 僳 洲 堰 豌 要 套 炸 凡 张 牧 览 俱 倔 抖 恫 有 蜡 赚 间 骏 褪 用 绝 柱 抢 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 学点什么哪 ? 1. 熟练掌握用C语言的基本控制语句进 行顺序、选择程序设计的方法; 忆 旧 旅 焊 机 男 培 傅 峨 厂 叶 巴 屈 隆 臼 缘 娠 急 迭 僳 姚 辽 欧 猿 董 尾 蜒 螺 条 盐 愿 语 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 4.1.选择结构的应用场合 4.2.关系运算符和关

2、系表达式 4.3.逻辑运算符和逻辑表达式 3.4.*选择结构的流程图表示 3.5.条件语句 3.6.开关语句 被 意 兢 吵 惩 缝 现 章 哺 业 虽 楷 具 露 荡 疼 顿 抗 敬 熏 敝 趁 嫁 耶 滞 肋 酷 独 早 姐 邱 濒 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 当我们不知向何处走时,会抬头 看看路牌,当某个方向满足了我们的 要求,则会走去。在程序设计中当某 条件成立,执行某段程序;不成立, 执行另一段程序。此时,即为选择结 构,可使用 if 或 switch 语句完成 该功能。例如: 巫 刹 粪 醉 厘 东 散 秀

3、 芯 贿 膝 肝 楼 聚 蝇 挪 某 孺 班 只 谜 惯 膜 条 折 院 桥 充 景 铜 济 旨 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 C C的关系运算符的关系运算符数学中的关系符数学中的关系符含义含义 大于大于 = 大于或等于大于或等于 小于小于 = 、=、 、=5185 918 918 48188 481881818 0 0 1 1 0 0 饱 署 成 拽 猪 剿 劲 怨 重 瘦 暴 馏 釉 饵 助 法 桥 瓢 法 惕 姐 域 沮 坡 纽 篇 芬 鸣 顷 衷 孩 储 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C

4、 语 言 程 序 设 计 选 择 结 构 一 3. 3.关系运算的操作数可为算术表达式。关系运算的操作数可为算术表达式。 4. 4.关系运算符的优先级低于算术运算符的优关系运算符的优先级低于算术运算符的优 先级。先级。 举例举例:2*510-72*510-710310bc? abc? 3213211111 0 0 馈 涂 救 拿 哲 遭 榆 益 艺 邓 牵 团 贯 忘 牛 瓤 瘴 掖 燎 署 兜 披 圾 输 湛 鬃 慕 镀 焕 赤 擞 絮 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 逻辑运算符逻辑运算符 1; else else 语句

5、语句2;2; 语句语句3 3 执行过程:执行过程: 当括号内表达式成立时,即表达式的值当括号内表达式成立时,即表达式的值是非是非0 0时时 ,执行语句,执行语句1 1,然后语句,然后语句3 3; 当表达式不成立时,值当表达式不成立时,值等于等于0 0时,执行语句时,执行语句2 2,然,然 后语句后语句3 3,上面,上面elseelse部分也可以没有。部分也可以没有。 维 诞 笔 舅 朝 扭 数 慌 弥 庇 着 拢 靛 馅 剩 沫 腋 胚 嘿 蝴 廓 颈 阀 歧 呵 枷 宏 孤 瑟 敖 淑 惜 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一

6、 main() int a,b; printf(Please input two numbers:n); scanf(%d,%d, if printf(MAX=%dn,a); else printf(MAX=%dn,b); 真假 a=b max=amax=b 从键盘上输入两个整数从键盘上输入两个整数a a和和b b,输出大的,输出大的 数。数。 (a=b) ab成立,执行 ab不成立,执行 汕 渡 鳞 刁 姬 吊 步 学 叮 竟 挞 萤 安 鞍 曲 晦 技 抨 赢 驾 簧 繁 闪 剂 葫 弟 恳 沮 末 凉 塞 宦 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设

7、 计 选 择 结 构 一 if (表达式) 语句1; 语句3 执行过程:执行过程: 当括号内表达式成立时(表达式的值是 非0 ) ,执行语句1,然后执行语句3; 当表达式不成立时(等于0 ),直接执 行语句3。 贤 晴 违 发 蹄 缀 雁 吝 余 赞 羞 弘 征 红 胎 笨 殿 腊 驼 堑 苇 葬 脓 享 设 盔 曹 偏 胳 叙 厦 歼 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 t=a; a=b; b=t;t=a; a=b; b=t; 输入两个整数,按从小到大的顺序输入两个整数,按从小到大的顺序 输出它们。输出它们。 main( )

8、main( ) int a, b, t; int a, b, t; scanf(%d, %d, scanf(%d, %d, if (ab) if (ab) printf(%d, %d, a, b); printf(%d, %d, a, b); 诉 怠 蓟 钥 翅 舆 椭 后 邓 耳 湿 盒 夯 争 湾 僚 迅 绑 蚤 穆 姚 衙 汪 据 迄 汤 嘎 子 枯 停 禁 敲 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 #include #include main( )main( ) int a, b, c, t; int a, b, c,

9、t; scanf(%d, %d, %d, scanf(%d, %d, %d, if (ab) if (ab) if (ac) if (ac) if (bc) if (bc) printf(%d, %d, %d, a, b, c); printf(%d, %d, %d, a, b, c); t=a; a=b; b=t;t=a; a=b; b=t; t=a; a=c; c=t;t=a; a=c; c=t; t=b; b=c; c=t;t=b; b=c; c=t; 输入三个整数,按从小到大的顺序输入三个整数,按从小到大的顺序 输出它们。输出它们。 合 研 颇 置 侦 弛 货 闻 约 快 暴 吠 故

10、潞 蔽 棒 锰 撤 彬 潮 拙 科 号 幌 勇 触 崎 奖 济 含 脏 剿 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 if if的一种扩展形式格式:的一种扩展形式格式: if (表达式1) 语句1; else if (表达式2) 语句2; else if (表达式3) 语句3; else 语句4; 语句5; 功功 能能 当表达式当表达式1 1为真值时,为真值时, 执行语句执行语句1 1;否则,当表达;否则,当表达 式式2 2为真值时,执行语句为真值时,执行语句2 2, 否则否则其中其中elseelse部分可以没有。部分可以没有。 洗

11、 淀 醒 渐 付 锈 穗 格 迭 酷 奎 笺 调 锗 塞 航 谤 圈 何 嗣 哀 蚜 州 醚 镀 佐 惠 稠 尤 唆 沁 粮 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 有一函数:有一函数: -1 (x0) -1 (x0) 1 (x0) 编一程序,输入一个编一程序,输入一个x x值,输出值,输出y y值。值。 #include #include main( )main( ) int x, y; int x, y; scanf(%d, scanf(%d, if if (x0) y=-1; (x0) y=-1; else ifelse i

12、f (x=0) y=0; (x=0) y=0; elseelse y=1; y=1; printf(x=%d, y=%d, x, y); printf(x=%d, y=%d, x, y); #include #include main( )main( ) int x, y; int x, y; scanf(%d, scanf(%d, if if (x=0)(x=0) /*/*条件语句嵌套条件语句嵌套 */ */ if if (x= =0) y=0;(x= =0) y=0; /*/*注意:内、外重条件语句注意:内、外重条件语句*/*/ else else y=1;y=1; /* if-else/

13、* if-else配对使用原则配对使用原则:*/:*/ elseelse y=-1;y=-1; /* else/* else总是与距离它最近的且没有总是与距离它最近的且没有*/*/ /* /*配对的配对的if if相结合相结合, ,与缩进格式无关与缩进格式无关!*/!*/ printf(x=%d, y=%d, x, y) ; printf(x=%d, y=%d, x, y) ; 中 随 矾 寝 唬 示 蝶 挝 廊 牡 拙 奥 译 娥 许 下 韶 渴 甄 健 锌 使 族 索 食 掳 荡 很 美 悠 足 姨 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择

14、 结 构 一 1. 1. 表达式表达式既可以是关系表达式、逻辑表达式,也既可以是关系表达式、逻辑表达式,也 可以是数值类型表达式。当为可以是数值类型表达式。当为0 0时,为时,为假值假值; 非非0 0为为真值真值。 2. 2.关系运算符关系运算符= = = 不能写成赋值运算符不能写成赋值运算符= =。 3. 3.在在if if 语句和语句和elseelse语句中若有多个操作语句,则应语句中若有多个操作语句,则应 用花括号用花括号 和和 将它们括起成为一个将它们括起成为一个复合语句复合语句。 箍 试 墙 培 承 垒 疏 咯 捶 汾 沮 干 肩 众 银 哎 贸 稗 喘 铰 孰 齿 羡 皱 株 荤

15、聘 摧 捶 诡 绝 习 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 开关语句就像多路开关一样,程序可根据开关语句就像多路开关一样,程序可根据 一个表达式可能产生的不同结果值,选择其中一个表达式可能产生的不同结果值,选择其中 一个一个独立分支结构独立分支结构,或几个分支,或几个分支 的语句的语句非独立分支结构非独立分支结构去执行。去执行。 有了有了if if 语句,为什么还语句,为什么还 要要switchswitch语句?语句? switchswitch后括号内表达式的值只能是后括号内表达式的值只能是整形、整形、 字符型或枚举类型字符型

16、或枚举类型,每个常量的类型和表达,每个常量的类型和表达 式的式的类型应相同类型应相同,每个语句序列可以是零个,每个语句序列可以是零个 或若干个语句。或若干个语句。 case 3: case 3: case 4: printf(“%d”, d1); break; case 4: printf(“%d”, d1); break; default: default: 执行时,先求表达式的值,然后自上而执行时,先求表达式的值,然后自上而 下依次测试每一个常量,若与常量下依次测试每一个常量,若与常量I I相匹配相匹配 ,则从其后的语句序列,则从其后的语句序列i i开始执行每个语句开始执行每个语句 序列,

17、若没有常量与之匹配,则执行序列,若没有常量与之匹配,则执行 defaultdefault后面的语句序列后面的语句序列非独立分支结非独立分支结 构构。 若只执行语句系列若只执行语句系列I I,则在语句系列,则在语句系列I I后后 加加breakbreak语句语句独立分支结构独立分支结构。 switch (switch (表达式表达式) ) case case 常量常量1 1 : : 语句系列语句系列1;break;1;break; case case 常量常量2 2 : : 语句系列语句系列2;break;2;break; case case 常量常量m : m : 语句系列语句系列m;brea

18、k;m;break; default : default : 语句系列语句系列m+1;m+1; 由于每个由于每个casecase语句后的常量只起语句标号语句后的常量只起语句标号 的作用,所以它们的值必须互不相同,否则的作用,所以它们的值必须互不相同,否则 会出现互相矛盾的现象会出现互相矛盾的现象(C(C语言系统不允许,语言系统不允许, 编译出错编译出错) )。 case 1: case 1: case 1: case 1: case 3:case 3: switch (switch (表达式表达式) ) case case 常量常量1 1 : : 语句系列语句系列1 1 case case 常

19、量常量2 2 : : 语句系列语句系列2 2 case case 常量常量m : m : 语句系列语句系列mm default : default : 语句系列语句系列m+1m+1 独立分支独立分支时每个时每个casecase语句和语句和defaultdefault语句的语句的 出现的前后次序发生改变时,不影响运行结出现的前后次序发生改变时,不影响运行结 果,但在一般情况下,常量出现频率较高的果,但在一般情况下,常量出现频率较高的 放在前面。放在前面。 case 1: case 1: case 1: case 1: default: case 2: default: case 2: case

20、2: case 3: case 2: case 3: case 3:case 3: deault: deault: 功能功能格式格式说明说明举例举例 妹 锻 弯 作 宇 种 耪 赦 系 嫂 晒 枚 衬 膨 匝 颁 昨 度 挛 椎 暇 益 挥 凑 怯 杯 汇 亩 御 棵 翻 材 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 独立分支开关语句举例独立分支开关语句举例 非独立分支开关语句举例非独立分支开关语句举例 讯 勤 赖 菇 骨 豢 犁 赵 糊 好 抿 粱 亏 叛 篡 策 刮 驭 窒 的 诲 域 莱 循 帮 炒 意 扎 霞 肝 输 纲 六

21、 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 X 0X10 X 0X10 2X+1 10X20 2X+1 10X20 Y= 41 20X30Y= 41 20X30 71-X 30X40 71-X 30X40 0 X0 0 X0或或X40X40 #include #include main()main() int xint x scanf(%d, scanf(%d, switch ( switch ( ) ) case 0 : printf(y=%dn, x); break; case 0 : printf(y=%dn, x); break

22、; case 1: printf(y=%dn, 2*x+1); break; case 1: printf(y=%dn, 2*x+1); break; case 2: printf(y=20n); break; case 2: printf(y=20n); break; case 3: printf(y=%dn, 71-x); break; case 3: printf(y=%dn, 71-x); break; default: printf(y=0n); default: printf(y=0n); x/10 x/10 拒 橱 洋 情 氧 茬 种 掖 城 墓 硼 性 躯 哼 贿 套 偶 年

23、傣 棘 嚎 钧 莎 椎 痢 抗 根 逞 杏 襟 洒 帽 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一 非独立分支开关语句举例 设有语句设有语句:int a=1,b=0;:int a=1,b=0;则执行下面语句后输出为则执行下面语句后输出为( )( ) switch(a)switch(a) case 1 : case 1 : switch(b):switch(b): case 0 : printf(“*0*”);break;case 0 : printf(“*0*”);break; case 1 :printf(“*1*”);break;case 1 :printf(“*1*”);break; case 2 : printf(“*2*”);break; case 2 : printf(“*2*”);break; A. *0* B.*0*2* C.*0*1*2* D.A. *0* B.*0*2* C.*0*1*2* D.错误错误B.*0*2*B.*0*2* B B 废 膏 博 巢 磁 俺 灭 陨 驻 够 菏 孔 羹 肿 粕 睦 殉 苇 战 独 缘 淀 阵 秉 撒 又 顺 澡 摧 搂 笛 柔 六 C 语 言 程 序 设 计 选 择 结 构 一 六 C 语 言 程 序 设 计 选 择 结 构 一

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1