计算机科学导论第6章程序设计与算法分析.ppt
《计算机科学导论第6章程序设计与算法分析.ppt》由会员分享,可在线阅读,更多相关《计算机科学导论第6章程序设计与算法分析.ppt(73页珍藏版)》请在三一办公上搜索。
1、第六章 程序设计与算法分析,本章要点,初步了解程序设计的基础知识掌握结构化程序设计和面向对象程序设计的基本方法掌握数据结构中的基本数据类型及其实现掌握程序设计算法的基本思想及几种经典的算法,6.1.1 程序的概念,程序就是能够实现特定功能的一组指令序列的集合。程序设计是程序员编写一系列可存储的指令以指示计算机完成某些工作的过程。这些指令用程序设计语言写成。程序设计语言是一组专门设计的用来生成一系列可被计算机处理和执行的指令的符号集合。程序设计人员用程序设计语言写成的指令称作代码。,6.1 程序设计基础,6.1.2 计算机程序设计语言,分类:低级语言、高级语言。1)低级语言包括两种类型:机器语言
2、和汇编语言。2)高级语言又称为程序设计语言或算法语言。,低级语言的特点,都与特定的计算机硬件系统紧密相关,来自于特定系统的指令系统,可移植性差;专业知识要求高,要求对计算机硬件的结构和工作原理非常熟悉;每条指令的功能很单一,程序员编制源程序时指令比较繁琐;由于直接针对特定硬件编程,所以,最终的可执行程序代码精炼,而且执行效率非常高。,两者主要的区别在于:机器语言无需翻译或编译,CPU能够直接识别和执行。而汇编语言必须经过汇编才能得到目标程序。,高级语言的产生,所谓高级语言是一种由表达各种意义的“词”和“公式”,按照一定的“语法规则”来编写程序的语言,又称为程序设计语言或算法语言。,高级语言的常
3、见类型,(1)BASIC语言(2)FORTRAN语言(3)COBOL语言(4)PASCAL语言(5)C语言(6)C+语言(7)其他高级语言基于视窗类操作系统的,如Visual Basic、Visual C+、Delphi、Power Builder、Java等等。,高级语言的特点,优点:语句的功能强,源程序比较短,容易学习,使用方便,通用性较强,便于推广和交流。缺点:编译程序比汇编程序复杂,而且编译出来的目标程序往往效率不高,目标程序的长度比有经验的程序员所编的同样功能的汇编语言程序要长半以上,运行时间也要长一些。,6.1.3 高级语言的基本内容1高级语言的基本符号,高级语言都是由所谓的基本符
4、号组成的。基本符号可以分为单字符和多字符两种情况。单字符基本符号由单个字符组成,在高级语言中通常都有下列几种单字符基本符号:(1)字母大写英文字母AZ,小写英文字母az,共52个符号。(2)数字09,共10个数字符号。,(3)特殊字符(加),(减),*(乘),/(除),(乘方),(等号),(左括号),)(右括号),(大于),(小于),(逗号),(空格)等。在高级语言中的多字符基本符号由两个或两个以上的字符组成,例如GoTo(转移)、(小于或等于)、AND(与)等等。,2高级语言的基本元素,基本元素由基本符号组成,可分为数、逻辑值、名字、标号和字符串等五大类。(1)数它由09共10个基本数字和其
5、他一些符号(如小数点“.”、正负号“、”及指数符号“E”等所构成。(2)逻辑值由真(True)和假(False)两个值表示。,(3)名字由字符组成,一般约定名字的开头是字母或者下划线,其后可为字母或数字,如XYZ、A123、_C等。名字可用来定义常量、变量、函数、过程或子程序的,也被用来定义成某些东西,故也称为标识符。在高级语言中,一般还规定了组成名字的字符的长度,即字符个数。(4)标号是在高级语言中的程序语句前所加的一个名字,主要用来指示程序可能的转移方向。,(5)字符串由一串字符所组成。在不同的高级语言中,字符串中的多个字符放在一对单引号或双引号中。,3基本的数据类型,基本的数据类型通常包
6、括整数数据类型、实数数据类型和字符数据类型等。变量必须先定义,然后才能使用,这是条基本原则。变量实质上代表了一个特定大小的内存单元空间。,4结构数据类型,(1)数组类型数组是若干个相同类型的数据的集合。(2)用户自定义的结构体类型结构体是隶属于同一个事物的多个不同类型的数据的集合,用来表示具有若干个属性的一个事物。,5运算符与表达式,表达式是由基本符号、基本元素和各种数据通过各种运算符连接而成的。高级语言中的运算符大致包括以下几个方面:(1)逻辑运算:与、或、非、异或。(2)算术运算:加、减、乘、除、取模。(3)数据比较:大于、小于、等于、不等于。,(4)数据传送;输入、输出、赋值。(5)算术
7、表达式:该表达式的运算结果是数,它非常近似于日常的数学公式。(6)关系运算表达式:该表达式的运算结果是逻辑值,常用的运算符包含(大于)、(小于)、(等于)、(小于等于)、(大于等于)、不等于。(7)字符串表达式:该表达式的运算结果是字符串。,6语句,语句是构成高级语言源程序的基本单位,是由基本元素、运算符、表达式等组成。,10高级语言程序的运行,使用高级语言编制程序的一般过程可以归纳为以下几个步骤:(1)使用文本编辑工具,逐条编写源程序的语句。存储源程序文件时文件的后缀名与所用的高级语言有关。(2)编译源程序文件,生成目标文件,文件后缀名通常为obj。(3)链接目标文件,生成可执行文件,文件后
8、缀名通常为exe。(4)在计算机上执行可执行程序文件,进步调试和维护。,6.2.1 结构化程序设计方法,采用自顶向下、逐步求精的设计方法和单入口单出口的控制结构。,1.结构化程序设计思想,结构化程序设计的原则是:(1)使用顺序、选择、循环3种基本控制结构表示程序逻辑。(2)程序语句组织成容易识别的语句模块,每个模块都是单入口、单出口。(3)严格控制GOTO语句的使用。,(a)顺序结构(b)选择结构(c)while循环(d)do-while循环,2模块,一个复杂的问题可以划分为多个简单问题的组合。在自顶向下、逐步细化的过程中,把复杂问题分解成一个个简单问题的最基本方法就是模块化。模块化便于问题的
9、分析,模块体现了信息隐藏的概念。模块常用子程序加以实现。,1面向对象的思想,OO(Object Oriented,面向对象)的程序设计把客观事物看作具有属性和行为的对象,通过抽象找出同一类对象的共同属性(静态特征)和行为(动态特征),形成类。,6.2.2 面向对象的程序设计方法,2对象和类,对象 是基本的实体,既包括数据(属性),也包括作用于数据之上的操作(方法或函数)。类 定义了一组大体上相似的对象。一个类所包含的方法和数据描述一组对象的共同行为和属性。对象则是类的具体化,是类的实例。,3抽象,抽象 是对具体事物(即对象)进行概括,即忽略事物的非本质特征,只注意那些与当前目标有关的本质特征,
10、从而抽象出一类对象的共性并加以描述。,4封装性,封装的两个含义:第一是,将抽象得到的数据成员和代码成员相结合,形成一个不可分割的整体,即对象,这种数据及行为的有机结合也就是封装。第二个含义称为信息隐蔽,即尽可能隐蔽对象的内部细节。,5继承性,继承性 是父类和子类之间共享数据和方法的机制。原有的类称为基类或父类,产生的新类称为派生类。,6多态性,多态性 在收到外部消息时,对象通常要予以响应。不同的对象收到同一消息可能产生完全不同的结果。,1数据、数据类型,数据 是对客观事物的符号表示。数据类型 是指具有相同取值范围和可以实施同种操作的数据的集合的总称。,6.3.1 基本概念,6.3 数据结构,2
11、数据元素、数据项、数据对象,能够独立并完整地描述客观世界实体的基本数据单元称为数据元素,它是组成数据的基本单位。数据项是组成数据元素的不可分割的最小单位。最简单的数据元素就是由一个数据项构成的。同类数据元素的集合称为数据对象。,3数据结构,数据结构 是指数据元素之间的相互关系的集合,包括了数据的逻辑结构、物理结构以及数据的运算。,数据的逻辑结构 数据的逻辑结构是指数据元素之间的逻辑关系。数据之间可以根据不同的关系组成不同的数据结构。(2)数据的物理结构 数据的物理结构是指逻辑结构在计算机存储器中的表示。数据的物理结构不仅要存储数据本身,还要存储表示数据间的逻辑关系。,顺序结构 把所有元素存放在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机科学 导论 章程 设计 算法 分析
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-6342628.html