程序的三种基本结构PPT精选课件

上传人:日度 文档编号:133532030 上传时间:2020-05-28 格式:PPT 页数:24 大小:688KB
返回 下载 相关 举报
程序的三种基本结构PPT精选课件_第1页
第1页 / 共24页
程序的三种基本结构PPT精选课件_第2页
第2页 / 共24页
程序的三种基本结构PPT精选课件_第3页
第3页 / 共24页
程序的三种基本结构PPT精选课件_第4页
第4页 / 共24页
程序的三种基本结构PPT精选课件_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《程序的三种基本结构PPT精选课件》由会员分享,可在线阅读,更多相关《程序的三种基本结构PPT精选课件(24页珍藏版)》请在金锄头文库上搜索。

1、结构化程序设计基本思想 任何程序都可以用三种基本结构表示 限制使用无条件转移语句 goto 结构化程序 由三种基本结构反复嵌套构成的程序叫 优点 结构清晰 易读 提高程序设计质量和效率三种基本结构顺序结构 程序的三种基本结构 1 二分支选择结构 多分支选择结构 选择结构 2 当型循环结构 直到型循环结构 注 A B A1 An可以是一个简单语句 也可以是一个基本结构 循环结构 3 返回 第5章选择语句 5 1if条件语句5 2switch多分支选择语句5 3程序举例 4 5 1if条件语句if语句是用来判定所给定的条件是否满足 根据判定的结果 真或假 决定执行给出的两种操作之一 5 1 1if

2、语句的三种形式1 单分支选择语句的形式 if 表达式 语句这种if语句的执行过程见图 main floatx y scanf f 5 任给a b c三个数 按从小到大的顺序输出 分析 1 对于a b任意两个数 若ab 则交换a和b 交换后ac 则交换a和c 交换后ac 则交换b和c 交换后b c 6 例5 2 输入三个数 按由小到大顺序输出 main inta b c temp printf Inputa b c n scanf d d d 运行情况如下 3 7 11 3 7 7 2 双分支选择语句的形式 if 表达式 语句1else语句2见图 main floatx y scanf f 8

3、输入两个数 比较其大小 将较大的数输出 流程分析 1 输入两个数据a b 2 如果a b则输出a 否则 输出b includemain floata b scanf f f 9 3 多分支选择语句的形式 if 表达式1 语句1elseif 表达式2 语句2elseif 表达式3 语句3elseif 表达式m 语句melse语句n流程图 10 写一个程序完成下列功能 1 输入一个分数score2 score 60输出E3 60 score 70输出D4 70 score 80输出C5 80 score 90输出B6 90 score输出A 多分支问题 11 includemain intscor

4、e scanf d 程序 12 如 if a b if后面的表达式类型任意 语句可以是复合语句if x if x 0 if x if x 0 例考虑下面程序的输出结果 includemain intx y scanf d d CompileError 说明 13 5 1 2一般形式 if语句嵌套 14 ch4 4 c includemain intx y printf Enterintegerx y scanf d d 运行 Enterintegerx y 12 23 XYEnterintegerx y 12 12 X Y 例输入两数并判断其大小关系 15 缺省 时 else总是和它上面离它最

5、近的未配对的if配对 if else配对原则 16 例 if a b if b c printf a b c elseprintf a b 修改 if a b if b c printf a b c elseprintf a b 实现if else正确配对方法 加 实现if else正确配对方法 17 5 2switch语句switch语句是多分支选择语句 if语句只有两个分支可供选择 而实际问题中常常需要用到多分支的选择 例如 学生成绩分类 90分以为 A 等 80 89分为 B 等 70 79分为 c 等 人口统计分类 按年龄分为老 中 青 少 儿童 工资统计分类 银行存款分类 等 当然这

6、些都可以用嵌套的if语句或多分支来处理 但如果分支较多 则嵌套的if语句层数多 程序冗长而且可读性降低 C语言提供switch语句直接处理多分支选择 它的一般形式如下 switch 表达式 case常量表达式1 语句1case常量表达式2 语句2case常量表达式i 语句ndefault 语句n 1 18 首先计算表达式的值 然后依次与常量表达式i i 1 2 n 比较 若表达式的值与某一个常量表达式 如j 1 j n 相等 则执行语句j 若表达式的值与所有的常量表达式i i 1 2 n 均不相等 则执行defau1t后面的语句n 1 功能 19 语句中的表达式可以是整型或字符型 枚举型 常量

7、表达式i必须与表达式类型一致 整型与字符型通用 i仅起语句标号作用 不做求值判断 语句结构中各个case后常量表达式的值必须互不相同 否则执行时将出现矛盾 各个case的出现次序不影响执行结果 例如 可以先出现case D 然后是case A default一般出现在所有case之后 也可以出现在case之前或两个case之间 default也可以缺省 为了在执行完一个case分支后能跳出switch多分支选择语句 可在case分支结束后 插入一个break语句 若有break语句 就从此break语句跳出break所在的当前结构 若无break语句 执行该语句后 流程控制转移到下一个分支 继

8、续执行这一个分支的语句 一直到最后一个语句执行完 下一页 注意 20 switch i case1 printf A n case3 printf C n case4 printf D n default printf E n 假设i 3时 则会从i 3时做起始语句 运行结果见右图 如果给每条语句加上break这样就只执行一条语句 CDE 下一页 看下面的例子 运行结果 case2 printf B n 21 如果多种情况需要共用一个执行语句 可用case的常量表达式多种情况列出 最后一种情况后 才放执行的语句 case后面的语句可以是一条语句 也可以是复合语句 还可以是花括弧括起来的几条语句

9、 还可以是空语句 有多条语句时会顺序执行完所有语句 下一页 说明 22 编程 根据输入的学生的成绩判断等级 当成绩score 90时为A等 成绩70 score 90为B等 成绩60 score 70为C等 成绩score 60为D等 score为整数 分析 设score为整型数 在score 90的范围内 score可能取100 99 90 利用两个整数相除 结果自动取整的特性scorescore 10 9010 970 897 860 69660以下defaultscore和score 10有如下对应关系 下一页 例如 因此 可以用score 10的值来确定分支 23 includemain 用switch语句评级 intscore scanf d 程序 返回 24

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号