第2章程序设计基础知识.pptVIP

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章程序设计基础知识

教学内容: 2.1 算法与程序 2.2 结构化程序设计 2.3 结构化程序算法描述 2.4 面向对象设计简介 教学要求: 1. 掌握算法的基本概念,算法的描述方法。  2. 掌握程序流程图、N_S图的描述方法。  3. 掌握结构化程序设计的方法。 2.1 算 法 与 程 序 存储程序和程序控制是现代数字电子计算机自动工作的基本原理。 著名计算机科学家沃思(Nikiklaus Wirth)对程序的描述,提出一个公式: 程 序 数据结构 + 算法 一、计算机解题过程? 1.分析问题 2. 确定处理方案(设计方案) 3. 确定计算机的操作步骤 4. 编写程序 5. 调试和运行程序 6. 整理资料文档 二、 算 法 所谓算法,通俗地讲就是一种解题方法,所要采取的确定的有限的解题步骤。计算机解题的算法,严格地讲是由若干条指令组成的有穷序列。 例如,求出两个整数的和的算法描述如下: (1)定义3个变量,并给3个变量分别分配内存空间,用于存放整数值; (2)给 2个变量,分别赋给26、16两个整数; (3)求出两个整数和的数值,赋给第三个变量; (4)输出第三个变量的值 (5)运行结束。 三、???算法的特性(5个规则) (1)算法的有穷性。算法中执行步骤在执行有穷步后结束,是有限的,每一条指令执行次数都是有限的。 (2)算法的可行性。算法中操作步骤都是通过已经实现的基本操作指令执行有限次完成,每条指令的执行时间都是有限的,保证了整个算法的实现。 (3)输入,一个算法有0个或多个输入的外界量 。 (4)输出,一个算法有一个或多个输出的量,它们是与输入有某种关系的量。 (5)算法的确定性。算法中的每一个操作的含义必须明确,无二义性。一定条件下执行路径也是唯一的。 四、??? 算法分析(4条原则) 算法分析的4条原则: (1)一个算法必须是正确的,符合计算机所要求解的题目,能得到预期的结果。 (2)求解一个问题,执行算法所需要化费的时间。 (3)求解一个问题,执行算法所需要占用的存储空 间。 (4)编制的算法要求条理清晰、易于理解、易于编码、易于调试。 五、?程 序 程序是由计算机语言的语句序列组成的文件 。 程序应包括对处理对象的描述和对处理规则的描述。 处理对象是数据或信息,处理规则是指动作和步骤,即计算机解题的算法。 六、?? 程序与算法的区别 (1)算法可以采用自然语言、伪代码、流程图,N-S图,PAD图来进行描述。程序只能用计算机语言来编写。 (2)程序中的指令必须是可以执行的,而算法中的指令描述无此限制。 (3)算法必须满足有穷性,程序不一定满足有穷性。 一、 什么是程序设计 用计算机语言把解题步骤编写成计算机可执行的指令序列的过程,称为程序设计。计算机程序设计技术是设计、程序编制和调试程序的方法和过程。 二、 什么是结构化程序设计 结构化程序应满足3个条件: (1)程序只有一个入口和一个出口; (2)程序中不应该存在永远不执行的语句; (3)不应该产生死循环,无休止运行程序。 三、程序设计分类 按照程序设计风格来分类,可以分为以下3种: (1)逻辑式程序设计。 (2)函数式程序设计。 (3)对象式程序设计。 按照结构性质来分类,程序设计分为以下2种: (1)非结构化程序设计。在20世纪50~60年代,程序设计的初级阶段,程序的编写可以不受约束。 (2)结构化程序设计。程序设计中强调数据结构、强调程序的模块化,采用单入口单出口的控制结构的程序设计方法。 五、结构化程序设计方法 (1)结构化程序设计的基础是由Bohun Jacopini 证明的数学定理:任何程序逻辑都可用顺序结构、选择结构、循环结构3种基本结构来表示。 这3种基本控制结构的共同特点是一个入口和一个出口。 (2)结构化程序设计强调程序结构的规范化 因而结构化程序的结构清晰,易于编制和维护。 (3)结构化程序设计的核心是分层结构和模块结构。 一、 程序流程图 程序流程图是用规定的图形、指向线和文字说明来表示算法的一种图形。程序流程图的基本符号: (1)椭圆形图形:终端框表示算法的开始与结束 (2)矩型图形:处理框表示算法的各种处理功能 (3)菱形图形: 判断框表示算法的条件转移操作 (4)平形四边形:表示算法的输入/输出操作 (5)预定义图形:预定义框表示算法调用的子算法 (6)圆点图形:引入引出连接符表示流程图的延续 (7)指向线:指向线指引流程图中的方向 二、程序流程图的基本结构 图2.4 当循环结构流程图 三、N-S图 N-S图用层层嵌套的方框图形来描述程序算法,避免了流程图中出现的流程线,有效控制了无条件转移,体

文档评论(0)

cbf96793 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档