- 1、本文档共493页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4. 伪代码 伪代码是一种用介于自然语言和计算机语言之间的文字和符号来描述算法。使用伪代码的目的是使被描述的算法可以很容易地以任何一种编程语言实现。例如Pascal,C,Java等。采用伪代码不用拘泥于具体实现,书写方便,没有固定的语法和格式,具有很大的随意性,便于向程序过渡。 伪代码要求程序员把精力集中于解决问题而不是计算机语言的运用。伪代码实际上是计算机代码的简略形式,它比流程图更像计算机代码。使用伪代码一定要步骤清楚、格式紧凑,便于分析和修改。 5. 计算机语言描述 运用流程图、伪代码描述的算法,若要用计算机执行,必须将其用计算机语言进行描述。用计算语言描述算法,必须要遵循所选择的计算机语言的语法规则。 例如,“求两个实数之和”,可以用C语言表示为: #include stdio.h void main( ) { float a,b,sum; /*实型数据定义*/ scanf(“%f %f”,a,b); sum=a+b; printf(″sum is %f\n″,sum); } 8.3 程序设计方法 20世纪60年代末,因为操作系统、数据库管理系统等大型软件的出现,导致了“软件危机”,这迫使程序设计人员重新思考程序设计的基本问题。1965年,荷兰科学家E.W.Dijikstra提出了结构化程序设计的概念,经过数十年的发展,结构化的程序设计方法一直广泛应用。随着软件系统的进一步发展,结构化程序设计的不足也越来越明显,为了进一步降低程序设计的复杂性,面向对象的程序设计产生了。 8.3.1 结构化程序设计 1. 主要原则 结构化程序设计的主要原则可概括为自顶而下、逐步细化、模块设计、限制使用GOTO语句。 (1)自顶而下 进行程序设计时,先考虑总体,然后考虑细节;先考虑全局目标,再考虑局部目标。在程序设计的初始阶段不要过多的追求细节设计,从最上层总目标开始,然后逐步将问题细化。 (2)逐步细化 对于复杂问题,应当设计一些子目标作为问题的过渡,然后再逐步细节化。也就是把较大的复杂问题分解为若干相对独立的简单小问题,解决了这些简单的问题,复杂的问题也就解决了。 (3)模块设计 模块设计是指将程序要解决的总目标分解为多个子目标,然后将这些子目标进一步分解为具体的小目标,这个最小的目标称之为模块。模块是程序的最基本的结构,它可以是一条语句、一段程序或者一个函数。模块的基本特征是仅拥有一个出口和一个入口。执行模块的功能,只能从模块的入口处执行,执行后,从模块的出口转而执行其它模块的功能。模块化设计能降低程序的复杂度,便于程序设计、理解、调试和维护。 (4)限制使用GOTO语句 一般认为,在块和进程的非正常出口处往往需要GOTO语句提高程序的执行效率。但是GOTO语句的大量使用会造成程序的混乱,破坏程序的结构,使程序难以理解,难以查错、不容易维护,所以在设计程序时要尽量避免使用GOTO语句。 2. 基本结构 结构化程序设计使用三种基本控制结构构造程序,任何程序都可由顺序结构、选择结构和循环结构构造。 (1)顺序结构 顺序结构是最简单的程序结构,顺序结构在执行的过程中按照程序语句的先后顺序逐条的执行,是最基本、最常用的线性结构形式。用N-S图表示如下: 顺序结构 (2)选择结构 选择结构又称为分支结构,它包括简单选择、双分支结构和多分支结构。根据给定的条件判断选择相应分支,执行程序。用N-S图表示如下: 选择结构 (3)循环结构 根据给定的条件,判断是否需要重复执行某一功能的程序段。在程序设计语言中,循环结构有两种,一种是先判断后执行循环体,称为当型循环结构;一种是先执行循环体后判断,称为直到型循环结构。用N-S图表示如下: (a)当型结构 (b)选择结构 3. 设计过程 结构化程序的设计过程是: (1)对问题进行全局性分析,从现有条件入手,确定解决问题的数学模型。要善于将客观世界的问题归结到一些如数学公式、图表等基本模型上。 (2)确定解决问题的算法,并将算法用流程图、伪代码等描述方法描述出来。然后,以此为基础,进行进一步分析。 (3)对流程图或伪代码描述的比较抽象的程序模块进行进一步分析、细化,确立程序的基本模块,结果仍用结构化的框图表示。 (4)根据结构化的框图,用计算机语言编写相应的程序代码。 (5)最后,利用编程环境进行“编辑”、 “编译”、 “链接” “运行”等处理。 8.3.2 面向对象的程序设计 1.概述 面向对象的程序设计吸取了面向过程的程序设计的优点,并考虑到了现实世界和计算机之间的关系。客观世界中任何一个实体都可以被看成一个对象,对象是现
您可能关注的文档
- 教学课件 审计学(第三版)杨明增.ppt
- 教学课件 丁勇义《中国旅游客源国概况》.ppt
- 教学课件 《大学计算机应用教程》.ppt
- 教学课件 汽车检测诊断技术.ppt
- 教学课件 《管理会计信息化》.ppt
- 教学课件 电气工程制图--刘皓明.ppt
- 教学课件 会议服务(第2版)高永荣.ppt
- 教学课件 饭店督导管理.ppt
- 教学课件 软件测试技术--杨怀洲.ppt
- 教学课件 大学计算机基础.ppt
- 甘肃省白银市会宁县第一中学2025届高三3月份第一次模拟考试化学试卷含解析.doc
- 2025届吉林市第一中学高考考前模拟生物试题含解析.doc
- 四川省三台县芦溪中学2025届高三下第一次测试生物试题含解析.doc
- 2025届江苏省启东市吕四中学高三适应性调研考试历史试题含解析.doc
- 浙江省宁波市十校2025届高三二诊模拟考试历史试卷含解析.doc
- 甘肃省甘南2025届高考生物必刷试卷含解析.doc
- 河北省石家庄市一中、唐山一中等“五个一”名校2025届高考历史四模试卷含解析.doc
- 江西省南昌市进贤一中2025届高考生物考前最后一卷预测卷含解析.doc
- 甘肃省白银市会宁县第四中学2025届高三第二次模拟考试历史试卷含解析.doc
- 宁夏银川市宁夏大学附属中学2025届高考化学押题试卷含解析.doc
文档评论(0)