




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章程序的控制结构 1 程序的基本结构 2 程序流程图用一系列图形 流程线和文字说明描述程序的基本操作和控制流程 它是程序分析和过程描述的最基本方式 程序流程图 起止框表示一个程序的开始和结束 判断框判断一个条件是否成立 根据判断结果选择不同的执行路径处理框表示一组处理过程 输入输出框表示数据输入或结果输出 程序流程图 注释框增加程序的解释 流向线以带箭头直线或曲线形式指示程序的执行路径 连接点将多个流程图连接到一起 常用于将一个较大流程图分割为若干部分 程序流程图 程序流程图 顺序结构是程序按照线性顺序依次执行的一种运行方式 如图4 3所示 其中S1和S2表示一个或一组顺序执行的语句 程序的基本结构 分支结构是程序根据条件判断结果而选择不同向前执行路径的一种运行方式 由二分支结构会组合形成多分支结构 程序的基本结构 循环结构是程序根据条件判断结果向后反复执行的一种运行方式 根据循环体触发条件不同 循环结构包括条件循环和遍历循环结构 程序的基本结构 对于一个计算问题 可以用IPO描述 流程图描述或者直接以Python代码方式描述 本书仅对这几种描述进行介绍 功能简单的问题建议大家直接编写Python代码 功能复杂的问题读者可以采用IPO描述或流程图描述为手段 下面给出3个微实例 通过不同的描述方法具体解释程序的三种基本结构 程序的基本结构实例 根据圆的半径计算圆的面积和周长 图4 6分别给出了该问题的IPO描述 流程图描述和Python代码描述 微实例4 1 圆面积和周长的计算 输入 圆半径R处理 圆面积 S R R圆周长 L 2 R输出 圆面积S 周长L 程序的描述方式主要有三类 分别是自然语言 流程图和伪代码 自然语言描述方式指使用人类语言直接描述程序 IPO描述是这类的一种 优点是灵活自然 缺点是比较繁琐 容易出现二义性 一个描述可以产生多种不同的程序代码 流程图描述是程序最直观易懂的表达方式 主要适用于较短算法 优点是直观 清晰且逻辑确定 缺点是流程图绘制比较繁琐 当程序较大时流程图会很复杂 反而降低了表达的清晰性 程序的基本结构实例 伪代码描述是介于自然语言与编程语言之间的一种算法描述语言 使用伪代码不用拘泥于具体编程语言 对整个算法运行过程的描述最接近自然语言 与直接的自然语言描述不同 伪代码在保持程序结构的情况下描述算法 程序的基本结构实例 计算用户给定实数的绝对值 图4 7分别给出了该计算问题的IPO描述 流程图描述和Python代码描述 微实例4 2 实数绝对值的计算 微实例4 3 整数累加 输入 正整数R处理 S 1 2 3 R输出 输出S 计算1到正整数R的算术和 图4 8分别给出了该计算问题的IPO描述 流程图描述和Python代码描述 IPO描述 流程图描述和Python代码描述是解决计算问题的三种描述方式 细致程度逐步递进 IPO描述主要用于区分程序的输入输出关系 重点在于结构划分 主要采用自然语言描述 流程图描述侧重于描述算法的具体流程关系 流程图的结构化关系相比自然语言描述更进一步 有助于阐述算法的具体操作过程 Python代码描述是最终的程序产出 最为细致 程序的基本结构实例 程序的分支结构 17 Python中if语句的语法格式如下 if 是if条件满足后执行的一个或多个语句序列 中语句通过与if所在行形成缩进表达包含关系 单分支结构 if语句 If语句首先评估的结果值 如果结果为True 则执行里的语句序列 然后控制转向程序的下一条语句 如果结果为False 里的语句会被跳过 if语句的控制过程如图4 9所示 单分支结构 if语句 if语句中执行与否依赖于条件判断 但无论什么情况 控制都会转到if语句后与该语句同级别的下一条语句 if语句中部分可以使用任何能够产生True或False的语句或函数 形成判断条件最常见的方式是采用关系操作符 单分支结构 if语句 Python语言共有6个关系操作符 见表4 1所示 单分支结构 if语句 一个简化版的空气质量标准采用三级模式 0 35为优 35 75为良 75以上为污染 人们也许不关心PM2 5指数值具体为多少 更关心空气质量到底怎样 计算机可以通过PM2 5指数分级发布空气质量提醒 微实例4 4 PM2 5空气质量提醒 1 该问题的IPO描述如下 输入 接收外部输入PM2 5值处理 ifPM2 5值 75 打印空气污染警告if35 PM2 5值 75 打印空气污染警告ifPM2 5值 35 打印空气质量优 建议户外运动输出 打印空气质量提醒 微实例4 4 PM2 5空气质量提醒 1 微实例4 4 PM2 5空气质量提醒 1 微实例4 4展示了用数字进行条件比较的例子 字符或字符串也可以用于条件比较 字符串比较本质上是字符串对应的Unicode编码的比较 因此 字符串的比较按照字典顺序进行 例如 英文大写字符对应的Unicode编码比小写字符小 以下是一些例子 微实例4 4 PM2 5空气质量提醒 1 Python中if else语句用来形成二分支结构 语法格式如下 if else 二分支结构 if else语句 是在if条件满足后执行的一个或多个语句序列 是if条件不满足后执行的语句序列 二分支语句用于区分的两种可能True或者False 分别形成执行路径 二分支结构 if else语句 二分支结构 if else语句 二分支结构还有一种更简洁的表达方式 适合通过判断返回特定值 语法格式如下 ifelse其中 一般是数字类型或字符串类型的一个值 微实例4 5可以改造为 二分支结构 if else语句 Python的if elif else描述多分支结构 语句格式如下 如图4 10所示if elif else 多分支结构 if elif else语句 多分支结构是二分支结构的扩展 这种形式通常用于设置同一个判断条件的多条执行路径 Python依次评估寻找第一个结果为True的条件 执行该条件下的语句块 同时跳过整个if elif else结构 执行后面的语句 如果没有任何条件成立 else下面的语句块被执行 else子句是可选的 多分支结构 if elif else语句 微实例4 4通过多条独立的if语句对同一个变量PM进行判断 这种情况更适合多分支结构 改造后的代码如下 多分支结构 if elif else语句 实例5 身体质量指数BMI 33 身体质量指数BMI BMI值可以 客观的 衡量个人的肥胖程度或者说健康程度 世界卫生组织 WHO 根据对全球人口体重的统计认为 BMI值低于18 5kg m2时属于 过轻 表明个体可能营养不良或者饮食无法保障 BMI值高于25kg m2时属于 过重 身体质量指数BMI 本实例编写一个根据体重和身高计算BMI值的程序 并同时输出国际和国内的BMI指标建议值 该问题的IPO描述如下 输入 身高和体重值处理 计算BMI值 并根据BMI指标分类找到合适分类输出 打印指标分类信息 身体质量指数BMI 实例代码5 1 实例代码5 1 程序执行后的效果如下 实例代码5 1采用了多分支结构对BMI数值按照不同区间范围进行分类 这种采用if elif else分支语句进行程序设计的方式十分常见 尽管需要同时打印国际和国内两套BMI标准 程序中采用两个if elif else语句分别计算两类不同BMI值 这种做法的好处是代码清晰明了 容易调试 身体质量指数BMI 实例代码
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 庆阳市重点中学2026届高三化学第一学期期末统考模拟试题含解析
- 2026届辽宁省大连经济技术开发区得胜高级中学化学高一第一学期期末经典模拟试题含解析
- 2025年秋季初级经济师考试 经济基础知识全真模拟试题解析
- 2025年秋季初级经济师考试 经济基础知识实战模拟试卷
- 2025年注册结构工程师考试冲刺试卷 结构设计原理专项训练
- 现代化定制家具知识培训课件
- 2025年注册会计师(CPA)考试 会计科目冲刺押题卷及答案
- 现代农业农药防治知识培训课件
- 银川第二中学2026届化学高一上期中质量跟踪监视模拟试题含解析
- 民法典学习解读
- 摊铺机装箱单rp452l smc1lxf使用说明书
- 泵与风机课堂版
- 最全海外常驻和出差补助管理规定
- 运维服务服务器网络设备日常巡检报告
- 《老年学概论(第3版)》课件第一章
- GB/T 32177-2015耐火材料中B2O3的测定
- GB/T 13955-2017剩余电流动作保护装置安装和运行
- GB/T 11968-2020蒸压加气混凝土砌块
- 基础生态学-生态系统生态学课件
- 幼小可爱卡通家长会通用
- 《古代汉语(II)》课程教学大纲(本科)
评论
0/150
提交评论