第4章_程序的控制结构(第1讲 4[1].1~4.3).ppt_第1页
第4章_程序的控制结构(第1讲 4[1].1~4.3).ppt_第2页
第4章_程序的控制结构(第1讲 4[1].1~4.3).ppt_第3页
第4章_程序的控制结构(第1讲 4[1].1~4.3).ppt_第4页
第4章_程序的控制结构(第1讲 4[1].1~4.3).ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章程序的控制结构 一 C语言程序设计 内容提要 算法及其描述方法顺序结构选择结构 算法的概念 著名的计算机科学家沃思 N Wirth 曾提出 数据结构 算法 程序即一个程序应由两部分组成 数据的描述和组织形式 即数据结构 DataStructure 对操作或行为的描述 即操作步骤 也称算法 Algorithm 什么是算法 指为解决一个具体问题而采取的确定的有限的操作步骤 算法的特性 有穷性在合理的时间内完成确定性 无歧义如果x 0 则输出Yes 如果x 0 则输出No 有效性能有效执行没有输入或有多个输入有一个或多个输出 算法的分类 数值运算算法 解决求数值解问题如用辗转相除法求两个数的最大公约数等非数值运算算法 需要用分析推理 逻辑推理才能解决的问题例如人工智能中的许多问题 查找 分类等 算法的表示方法 自然语言表示 课本P77 传统的流程图表示在1966年 Bohra与Jacopini提出N S结构化流程图表示1973年 美国学者I Nassi和B Shneiderman提出伪代码表示 课本P79 起止框 输入框 判断框 处理框 流程线 连接点 注释框 B A NS图 传统流程图 顺序结构 B A B N 如果成绩 60那么通知补考否则告知你考试成绩 A Y 条件P 分支结构 选择结构 当型循环 循环结构 A 当P成立 直到型循环 循环结构 A 直到P为假 A 条件P A 当型循环 直到型循环 真 假 假 条件P 假 真 循环结构 当型循环和直到型循环的比较 流程图 例如 计算6 的算法可以用流程图表示如下 开始 x 1 y 2 x y y x 1 x A A x 6 N B B 结束 传统流程图 打印y Y 图 计算6 的算法可以用N S图表示如下 1 x 2 y x y y x 1 x 直到x 6 打印y 初始化部分 循环部分 输出部分 if else 选择结构的一种最常用形式if 表达式 语句1 else 语句2 表达式值非0时 执行语句1 表达式值为0时 执行语句2 if else else部分可以没有if 表达式 语句1 if else嵌套使用时 注意else和谁配对的问题 当表达式值为0时 直接跳出if结构 例4 4 年龄判断 使用if else includemain intyourAge hisAge printf Pleaseenteryourage scanf d 条件表达式 含义 如果表达式1的值非0 为真 则该条件表达式的结果就是表达式2的值否则 是表达式3的值 表达式3 N 表达式2 Y 表达式1 例4 4 年龄判断 使用条件运算符 includemain intyourAge hisAge printf Pleaseenteryourage scanf d else if if的一种扩展形式 相当于else分支嵌套if 表达式1 语句1 elseif 表达式2 语句2 elseif 表达式3 语句3 else语句4 语句5 多分支选择结构 例4 5 体型判断 按 体指数 对肥胖程度进行划分 体指数t w h2 体重w单位为公斤 身高h单位为米 当t 18时 为低体重 当18 t 25时 为正常体重 当25 t 27时 为超重体重 当t 27时 为肥胖 编程从键盘输入你的身高h和体重w 根据给定公式计算体指数t 然后判断你的体重属于何种类型 用3种方法编程 算法1 用不带else子句的if语句编程算法2 用在if子句中嵌入if语句的形式编程算法3 用在else子句中嵌入if语句的形式编程 例4 5用不带else子句的if语句编程 includemain floath w t printf Pleaseenterh w scanf f f 当t 18时 为低体重 当18 t 25时 为正常体重 当25 t 27时 为超重体重 当t 27时 为肥胖 例4 5用在if子句中嵌入if语句的形式编程 includemain floath w t printf Pleaseenterh w scanf f f 182527 当t 18时 为低体重 当18 t 25时 为正常体重 当25 t 27时 为超重体重 当t 27时 为肥胖 例4 5用在else子句中嵌入if语句的形式编程 includemain floath w t printf Pleaseenterh w scanf f f 当t 18时 为低体重 当18 t 25时 为正常体重 当25 t 27时 为超重体重 当t 27时 为肥胖 182527 switch 多路选择switch 表达式 case常数1 语句序列1 case常数2 语句序列2 default 语句序列3 default可以没有 但最好不省略不要忘记break 例4 8 计算器程序 编程设计一个简单的计算器程序 要求根据用户从键盘输入如下形式的表达式 操作数1运算符op操作数2然后 计算并输出表达式的值 指定的运算符为加 减 乘 除 例如 1 3 例4 8 includevoidmain intdata1 data2 定义两个操作符 charop 定义运算符 printf Pleaseentertheexpression scanf d c d 思考题 语句if 0 data2 的必要性1998年11月 科学美国人 杂志 描述了美国导弹巡洋舰约克敦号上的一起事故 除零错导致军舰推进系统的关闭如果要求程序能进行浮点数的算术运算

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论