- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 程序设计基础 本章主要内容: 6.1 程序设计的一般过程 6.2 程序设计方法 6.3 程序设计语言 6.1 程序设计的一般过程 计算机程序是用某种计算机能理解并执行的计算机语言来描述解决某一问题的方法和步骤。计算机按程序规定的步骤执行,完成指定的功能。 程序设计的任务:分析解决问题的方法和步骤(算法),并将问题解决的步骤用计算机语言来描述; 片面理解:程序设计就是编写一个程序! 程序设计的一般过程 问题定义 算法设计 程序编制 调试运行 文档 1. 分析问题 输入 处理 输出 确定计算机要“做什么”? 任意给出十个数,求最大数及最小数; 对于复杂问题分析,需要借助一些工具、 模型、方法等; 2. 算法设计 什么是算法? 算法(Algorithm)是对处理问题步骤的描述,是程序设计的思路,说明计算机要解决该问题要“怎么做”。 算法不能被计算机理解、执行 ,只是写程序代码之前对处理思想的一种描述。 注意:对于如何解决问题没有一个清晰的思路之前就急于编写程序,结果编程思路紊乱,很难得到预想的效果。 算法的表示方法 1) 自然语言描述 2) 伪代码(Pseudo code) 3) 流程图(Flow chat) 算法好坏衡量 时间复杂度 空间复杂度 3. 程序编制(编码) 选择编程工具,按算法编写程序 规范化: 名称要有意义(常量、变量、函数、过程名等);注释 结构清晰明了 4. 调试运行 程序错误类型 语法错误 逻辑错误 5.文档 文档记录程序设计的算法、实现以及修改过程,保证程序的可读性和可维护性(注释、算法描述) 需求分析报告、概要设计、详细设计、测试文档、用户手册(工具软件帮助文档) 6.2 程序设计方法 早期程序设计:运行速度快,占用内存少(算法效率) 计算机硬件的发展 软件规模的扩大 现在,程序具有良好的结构:结构清晰、易于阅读和理解,易于分工合作编写和调试以及维护(开发效率高,易于维护,程序更加健壮、 成本大为降低) 一、结构化程序设计 程序设计方法:“自顶向下,逐步求精” 控制结构“单入口单出口”(模块化的分析方法) 二、 面向对象程序设计 二. 面向对象的程序设计(OOP) 面向过程(process-oriented programming,POP) 采用函数(或过程)来描述对数据的操作,但将函数与其操作的数据分离开来;数据和施加于数据的操作是独立设计的,以对数据进行 操作的过程作为程序的主体。 作为对现实世界的抽象,函数和它所操作的数据是密切相关、相互依赖的,特定的函数往往要对特定的数据进行操作 实质上的依赖,形式上的分离; 二. 面向对象的程序设计(OOP) 面向对象程序设计(object-oriented programming,OOP)则以对象作为程序的主体,对象是数据和操作的“封装体” struct-class 对象基本特征:抽象、封装、继承、多态 优点: 对于简单的任务,面向对象会显得比较麻烦;而对于大的任务及构造开发平台,面向对象具有的封装及其他优势为软件重用提供了绝好的手段。 开发时间短,效率高,可靠性高,更易于维护、更新和升级,所开发的程序更加的健壮 6.3 程序设计语言 1. 语言的分类 机器语言 (面向机器) 汇编语言 (面向机器) 高级语言 (面向应用) 2. 语言的执行方式 3.常用的高级语言 机器语言 能被计算机直接理解和执行,以“0”和“1”组成的二进制编码来表示命令 0100 B201 0102 B402 优点:计算机能直接识别、执行效率高 缺点:难书写、难记忆、编程困难、可读性差且容易出现编写错误;因机器而异,可移植性极差。 汇编语言 用助记符和符号地址来代替机器指令中的操作码和操作数。汇编程序翻译成机器指令才能执行; MOV DL,01 MOV AH,02 优点:比机器语言更易掌握,比其他高级语言执行效率高,目前许多系统软件的核心部分仍采用汇编语言编制。 缺点:仍然是面向机器的语言,与具体计算机硬件有密切关系;较难掌握,必须对硬件非常了解。 高级语言 更接近自然语言和数学语言的程序设计语言; 优点:符合人们叙述问题的习惯,最接近自然语言而且简单易学,容易理解; 缺点:需要将高级语言翻译成机器指令,才能被计算机识别执行,因此执行效率较前两种低; 2. 语言的执行方式 (1)编译 将高级语言编写的程序(源程序
文档评论(0)