2022年全国计算机二级复习知识点小结.pdf
全国计算机等级考试公共基础知识部分复习简纲在二级考试中公共基础知识占30%,考察题型选择填空,下面我就结合几年考试原题,小结一下这一部分的考点。第一章 数据结构与算法本章应考重点:本章内容在二级笔试中会出现56 题,是公共基础知识部分出题量比较多的一章,所占分值也比较大 ,约 10 分1.1 算法1. 算法是指解题方案的准确而完整的描述。2. 算法的基本特征a 可行性 b 确定性 c 有穷性 d 拥有足够的情报3. 算法的复杂度a 算法时间复杂度:是指执行算法所需要的计算工作量,可以用执行算法的过程中所需基本运算的执行次数来度量b 算法的空间复杂度是指执行这个算法所需要的内存空间。1.2 数据结构的基本概念1 数据结构是指互相有关联的数据元素的集合2 数据结构a 数据的逻辑结构1 表示数据元素的信息2 表示各数据元素之间的前后件关系b 数据的存储结构顺序存储链接存储索引存储c 对各种数据结构进行的运算3 数据结构的图形表示一个数据结构除了用二元关系外,还可以直观地用图形表示。在数据结构的图形表示中,对于数据集合点D 中的每一个数据元素用中间标有元素值的方框表示,一般称之为数据结点,并简称结点:为了进以步表示数据元素之间的前后件关系,对于关系R 中的每一个二元组,用一条有向线段从前件结点指向后件结点。4 数据结构分为二大类线性结构a 有且只有一个根结点b 每个结点最多有一个前件,也最多有一个后件常见的线性结构有线性表,队列,线性链表,栈非线性结构不满足线性结构条件的数据结构常见的非线性结构有树,二叉树,和图等1.3 线性表及其顺序存储结构1 线性表由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。表中的每个数据元素,除了第一个外,由且只有一个前件,除了最后一个外,有且只有一个后件。线性表中数据元素的个数称为线性表的长度。线性表可以是空表2 线性表是一种存储结构顺序结构 a线性表中所有元素所占的存储空间是连续的b 线性表中个数据元素在存储空间中是按逻辑顺序依次存放的链式结构3 顺序表的插入,删除运算a 顺序表的插入运算,插入结束后,线性表的长度增加了1,顺序表的插入运算时需要移动元素,在等概率情况下,平均需要移动n/2 个元素。b 顺序表的删除运算,删除结束后,线性表的长度减少了1,顺序表的删除运算时需要移动元素,在等概率情况下,平均需要移动(n-1)/2 个元素。插入删除运算不方便1.4 栈和队列1 栈及其基本运算栈是限定在一端进行插入与删除运算的线性表。栈是按照“先进后出”或“后进先出”的原则来组织数据的。栈具有记忆作用栈的基本运算a 入栈运算b 出栈运算c 读栈顶元素是将栈顶元素赋给一个指定的变量,此时指精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 30 页 - - - - - - - - - - 针无变化2 队列及其基本运算队列是指允许在一端(队尾)进行插入,一端(队头)进行删除的线性表队列是“先进先出”或“后进后出”的线性表队列运算包括a 入队运算 b 出队运算3 循环队列及其运算循环队列的初始状态为空,即rear=front=m 循环队列的基本运算分为入队运算和退队运算队列空的条件: s=0 队列满的条件: s=1 front=rear 1.5 线性链表1 线性表顺序存储缺点A 插入或删除的运算效率很低B 线性表的顺序存储结构下,线性表的存储空间不便扩充C 线性表的顺序存储结构不便于对存储空间的动态分配2 线性链表:线性表的链式存储结构称为线性链表,是一种物理存储单元上非连续,非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接来实现的。在链式存储方式中每个结点由二部分组成:数据域,指针域线性链表分为单链表,双向链表和循环链表三种类型3 线性链表的基本运算a 在线性链表中包含指定元素的结点之前插入一个新元素b 在线性链表中删除包含指定元素的结点c 将二个线性链表按要求合并成一个线性链表d 将一个线性链表按要求进行分解e 逆转线性链表f 复制线性链表g 线性链表的排序h 线性链表的查找4 循环链表及其基本运算循环链表是另一种形式的链式存储结构,与线性链表相比,具有以下二个特点a 在循环链表中增加了一个表头结点,其数据域为任意或者根据需要来设置,指针域指向线性表的第一个元素的结点,循环链表的头指向表头结点。b 循环链表中最后一个结点的指针域不为空,而是指向表头结点,即在循环表中,所有结点的指针构成一个环状链在对循环链表进行插入与删除的过程中,实现了空表与非空表的运算统一1.6 树与二叉树1 树的基本概念树是一种简单的非线性结构。在树结构中,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度。树的最大层次称为树的深度2 二叉树及其基本性质(1)什么是二叉树二叉树是一种很有用的非线性结构a 非空二叉树只有一个根结点b 每个结点最多有二棵子树,且分别称为左子树和右子树二叉树的度可以是0,1,2 (2)二叉树的基本性质性质 1 在二叉树的第 k 层上,最多有 2k-1(k=1)个结点性质 2 深度为 m 的二叉树最多有2m-1 个结点性质 3 在任意一棵二叉树中度数为0 的结点总比度为2 的结点多一个性质 4 具有 n 个结点的二叉树,其深度至少为 log2n 表示取 log2n 的整数部分3 满二叉树:除最后一层外,每层上的所有结点都有二个子结点完全二叉树:除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点Data next 左指针数据域右指针精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 30 页 - - - - - - - - - - 4 二叉树的存储结构,二叉树通常采用链式存储结构5 二叉树的遍历(1)前序遍历( DLR)根左右(2)中序遍历( LDR)左根右(3)后序遍历( LRD)左右根1.7 查找技术1 顺序查找2 二分法查找1.8 排序技术类别排序方法基本思想时间复杂度交换类冒泡排序相邻元素比较,不满足条件交换n(n-1)/2 快速排序选择基准元素,通过交换,划分成二个子序列O(nlog2n) 插入类简 单 插 入排序待排序的元素看成为一个有序表和无序表,将无序表中元素插入到有序表中n(n-1)/2 希尔排序分割成若干个子序列分别进行直接插入排序O(n1.5) 选择类简 单 选 择排序扫描整个线性表,从中选出最小的元素,将他交换到表的最前面n(n-1)/2 堆排序选建堆,然后建堆顶元素与堆中最后一个元素交换,再调整为堆O(nlog2n) 第二章 程序设计基础本章在考试中会出现一题左右,所占分值大约占2 分,是出题量较小的一章。本章内容较少,所以大家尽量不要失分啊!这样会比较可惜。2.1 程序设计风格程序设计的风格主要强调:“清晰第一,效率第二”(1) 源程序文档化1 符号名的命名。符号名能反映它所代表的实际东西,应有一定的实际含义2 程序的注释,分为序言性注释和功能性注释3 视觉组织(2) 数据说明1 数据说明的次序规范化2 说明语句中变量安排有序化3 使用注释来说明复杂数据的结构(3) 语句的结构(4) 输入和输出注意点信息隐蔽是指采用封装技术,将程序模块的实施细节隐藏起来,使模块接口尽量简单。即指在设计和确定模块时,使得一个模块的内包含的信息(过程或数据),对于不需要这些信息的其他模块来说,是不能访问的。2.2 结构化程序设计(面向过程的程序设计方法)1.结构化程序设计方法的主要原则可以概括为a 自顶而下b 逐步求精c 模块化d 限制使用goto 语句2.结构化程序的基本结构:顺序结构,选择结构(分支结构),重复结构(循环结构)2.3 面向对象的程序设计面向对象方法的本质就是主张从客观世界固有的事物出发来构造系统,提倡人们在现实生活中常精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 30 页 - - - - - - - - - - 用的思维来认识,理解和描述客观事物,强调最终建立的系统能够映射问题域。面向对象方法的主要优点(1) 与人类习惯的思维方法一致(2) 稳定性好(3) 可重用性好(4) 易于开发大型软件产品(5) 可维护性好.【注意】面向对象的程序设计主要考虑的是提高软件的的可重用性对象是面向对象方法中最基本的概念,对象是属性和方法的封装体属性即对象所包含的信息,它在设计对象时确定,一般只能通过执行对象的操作来改变操作描述了对象执行的功能,操作也称为方法或服务。操作是对象的动态属性。一个对象由对象名,属性和操作三个部分组成对象的基本特点 :标识唯一性,分类性,多态性,封装性,模块独立性好类是指具有共同属性,共同属性,共同方法的对象的集合。所有类是对象的抽象,对象是对应类的一个实例消息是一个实例与另一个实例之间传递的信息。消息的组成包括:(1) 接收消息的对象的名称(2) 消息标识符也称消息名(3) 零个或多个参数继承是指能够直接获得已有的性质和特征,而不必重复定义他们多态性是对象根据所接受的消息而做出动作,同样的消息被不同的对象接受时可导致完全不同的行动。在面向对象技术中,多态性是指子类对象可以像父类对象那样使用,同样的消息可以发送给父类对象也可以发送给子类对象。多态性机制增加了面向对象软件系统的灵活性,减少了信息的,而且显著提高了软件的可重用性可扩充性。第三章 软件工程基础本章应考点拨:本章在笔试中一般占8 分左右,约 3 道选择题, 1 道填空题,是公共基础部分比较重要的一章。本章主要考察对基本概念的识记,有少量对基本原理的理解,没有实际运用,因此在复习本章时,重点应放在基本概念的记忆和基本原理的理解。3.1 软件工程基本概念1 软件的相关概念计算机软件是包括程序,数据及相关文档的完整集合软件的特点包括(1) 软件是一种逻辑实体,而不是物理实体,具有抽象性(2) 软件的生产与硬件不同,他没有明显的制作过程(3) 软件在运行,使用期间不存在磨损和老化问题(4) 软件的开发,运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题(5) 软件复杂性高,成本昂贵(6) 软件开发涉及诸多的社会因素2 软件危机与软件工程软件工程源于软件危机软件危机表现为(1) 软件需求的增长得不到满足(2) 软件开发成本和进度无法控制(3) 软件质量难以保证(4) 软件不可维护或维护程度非常低(5) 软件的成本不断提高精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 4 页,共 30 页 - - - - - - - - - - (6) 软件开发生产率的提高跟不上硬件的发展和应用需求的增长总之可以将软件危机归结为成本,质量,生产率等问题软件工程(1) 软件开发技术(2) 软件工程管理软件工程的主要思想是将工程化原则运用到软件开发过程,他包括3 个要素:方法,工具,过程软件工程过程是把输入转化为输出的一组彼此相关的资源和活动3 软件的生命周期软件生命周期:软件产品从提出,实现,使用维护到停止使用退役的过程。生命周期分为软件定义,软件开发,软件运行维护三个阶段(1) 软件定义阶段:包括制定计划和需求分析(2) 软件开发阶段:软件设计(概要设计,详细设计),软件实现,软件测试(3) 软件运行维护阶段:软件生命周期中所花费最多的阶段4 软件工程的目标和原则(1) 软件工程目标:在给定成本,进度的前提下,开发出具有有效性,可靠性,可理解性,可维护性,可重用性,可适应性,可移植性,可追踪性和可互操作性且满足用户需求的产品(2) 软件工程需要达到的基本目标是:付出较低的开发成本;达到要求的软件功能;取得较好的软件的软件性能;开发的软件易于移植;需要较低的维护费用;能按时完成开发,及时交付使用(3) 软件工程的原则:抽象,信息隐蔽,模块化,局部化,确定性,一致性,完备性和可验证性。5 软件开发工具与软件开发环境(1) 软件开发工具(2) 软件开发环境软件开发环境(或称软件工程环境)是全面支持软件开发全过程的软件工具的集合3.2 结构化分析方法结构化方法的核心和基础是结构化程序设计理论1 需求分析需求方法方法有(1) 结构化需求分析方法(2) 面向对象的分析方法【说明】1 需求分析的任务就是导出目标系统的逻辑模型2 需求分析一般分为需求获取,需求分析,编写需求规格说明书和需求评审2 结构化分析方法是结构化程序设计理论在软件需求分析阶段的应用结构化分析方法的实质:着眼于数据流,自顶而下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。结构化分析的常用工具a 数据流图( DFD)基本图形要素:加工(转换),数据流,存储文件,源潭画数据流图的基本步骤:自外向内,自顶向下,逐层细化,完善求精b 数据字典( DD)数据字典的作用是对数据流图中出现的被命名的图形元素的确切解释数据字典是结构化分析方法的核心c 判定树 d 判定表3 软件需求规格说明书( SRS)软件需求规格说明书是需求分析阶段的最后成果,通过建立完整的信息描述,详细的功能和行为描述,性能需求和设计约束的说明,合适的验收标准,给出对目标软件的各种需求。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 30 页 - - - - - - - - - - 3.3 结构化设计方法1 软件设计的基础软件设计包括软件结构设计,数据设计,接口设计,过程设计从工程角度来看,软件设计分成二步完成,概要设计和详细设计软件设计的基本原理包括:抽象,模块化,信息隐蔽和模块独立性【注意】模块分解的主要指导思想是信息隐蔽和模块独立性模块的耦合性和内聚性是衡量软件的模块独立性的二个定性指标【注意】一个设计良好的软件系统应具有高内聚,低耦合的特征在结构化程序设计中,模块划分的原则是:模块内具有高内聚度,模块间具有低耦合度2 总体设计(概要设计)和详细设计(1) 总体设计(概要设计)的基本任务是1 设计软件系统结构2 数据结构及数据库设计3 编写概要设计文档4 概要设计文档评审数据流的类型:大体可以分为二种类型,变换型和事务型单元是程序中最小的部分,由可以隐含的三个部分组成:数据输入,加工和数据输出(2) 详细设计详细设计的任务是确定实现算法和局部数据结构,不同于编码或编程常用的过程设计(详细设计)工具有以下几种a 图形工具:程序流程图, N-S,PAD,HIPO b 表格工具:判定表语言工具: PDL 3.4 软件测试软件测试的目的:尽可能地减少程序中的错误,不能也不可能证明程序没有错误。软件测试的关键是设计测试用例软件测试方法:静态测试和动态测试静态测试:包括代码检查,静态结构分析,代码质量度量。不实际运行软件,主要通过人工进行动态测试:主要包括白盒测试和黑盒测试(1) 白盒测试白盒测试方法也称为结构测试或逻辑驱动测试。它根据软件产品的内部工作过程,检查内部成分,以确认每种内部操作符合设计规格要求。白盒测试的基本原则:保证所测试模块中每一独立路径至少执行一次;保证所测试模块所有判断的每一分支至少执行一次;保证所测试模块每个循环都在边界条件和一般条件下至少各自执行一次;验证所有内部数据结构的有效性。白盒测试法的测试用例是根据程序的内部逻辑来设计的,主要用软件的单元测试,主要方法有逻辑覆盖,基本路径测试等【注意】逻辑覆盖的强度依次是:语言覆盖路径覆盖 判定覆盖 条件覆盖 判断-条件覆盖(2)黑盒测试黑盒测试方法也称为功能测试或数据驱动测试。黑盒测试是对软件已经实现的功能是否满足需求进行测试盒验证。黑盒测试主要诊断功能不对或遗漏,接口错误,数据结构或外部数据库访问错误,性能错误,初始化和终止条件错误黑盒测试不关心程序内部的逻辑,只是根据程序的功能说明来设计测试用例,主要方法有等价类划分法,边界值分析法,错误推测法等,主要用软件的确定测试3 软件测试过程 4 步骤:单元测试,集成测试,确认测试和系统测试(1)单元测试单元测试是对软件设计的最小单位模块(程序单元)进行正确性检测的测试,目的是发现模块内部可能存在的各种错误。单元测试根据程序的内部结构来设计测试用例,其依据是详细设计说明书和源程序。单元测试的技术可以采用静态分析和动态测试。对动态测试通常以白盒测试为主,辅以之黑盒测试。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 30 页 - - - - - - - - - - 单元测试的内容包括:模块接口测试,局部数据结构测试,错误处理测试和边界测试。在进行单元测试时,要用一些辅助模块去模拟与被测模块相联系的其他模块,即为被测模块设计和搭建驱动模块和桩模块。其中驱动模块相当于被测模块的主程序,它接收测试数据,并传给被测模块,输出实际测试结果;而桩模块是模拟其他被调用模块,不必将子模块的所有功能带入。(2)集成测试集成测试是测试与组装软件的过程,它是把模块在按照设计要求组装起来的同时进行测试,主要目的是发现与接口有关的错误。集成测试的依据是概要设计说明书集成测试所涉及的内容包括:软件单元的接口测试,全局数据结构测试,边界条件和非法输入的测试等集成测试通常采用二种方式:非增量方式组装与增量方式组装(3)确认测试确认测试的任务是验证软件的有效性,即验证软件的功能和性能及其他特性是否与用户的要求一致。确认测试的主要依据是软件需求规格说明书确认测试主要运用黑盒测试(4)系统测试系统测试的目的在于通过与系统的需求定义进行比较,发现软件与系统定义不符合或与之矛盾的地方系统测试的测试用例根据需求分析规格说明来设计,并在实际使用环境下来运行。系统测试的具体实施一般包括:功能测试,性能测试,操作测试,配置测试,外部接口测试,安全性测试等3.5 程序的调试程序调试(不同于软件测试)的任务是诊断和改正程序中的错误,主要在开发阶段进行,调试程序应该有编制源程序的程序员来完成程序调试的基本步骤a错误定位 b 纠正错误 c 回归测试软件的调试后进行回归测试,以防止引进新的错误软件调试可分为静态调试和动态调试。静态调试主要是通过人的思维来分析源程序代码和排错,是主要的调试手段,而动态调试是辅助静态调试。对软件调试的主要方法有(1)强行排错法(2) 回溯法(3) 原因排除法:是通过演绎,归纳和二分法来是来实现第四章 数据库设计基础本章应考点拨:本章在考试中一般出现2-4 个小题。本章内容概括性强,比较抽象,希望大家记忆之余,注意理解。4.1 数据库系统的基本概念1 数据,数据库 (DB),数据管理系统 (DBMS)是数据库的核心数据库管理系统功能1 数据模式定义2 数据存取的物理构建3 数据操纵4 数据的完整性,安全性定义与检查5 数据库的并发控制与故障恢复6 数据的服务数据库管理员( DBA )数据库系统( DBS)数据库应用系统精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 7 页,共 30 页 - - - - - - - - - - 2 数据库系统的发展数据库管理发展至今已经历了三个阶段:人工管理阶段,文件系统阶段和数据库系统阶段3 数据库系统的基本特点(1) 数据的高集成性(2) 数据的高共享性与低冗余性数据库系统可以减少数据冗余,但无法避免一切冗余(3) 数据独立性一般分为物理独立性和逻辑独立性二级(4) 数据统一管理与控制4 数据库系统的内部结构体系(1) 数据库系统的三级模式:概念模式,外模式,内模式(2) 数据库系统的二级映射:概念模式/内模式的映射;外模式 /概念模式的映射4.2 数据模型1 数据模型所描述数据模型所描述的内容有三部分,它们是数据结构,数据操作与数据约束。数据模型分为概念模型,逻辑数据模型和物理模型三类2 实体联系模型及 E-R 图4.3 关系代数1 关系的数据结构2 关系操作4.4 数据库设计方法和步骤数据库的设计的二种方法面向数据的方法:以信息需求为主,兼顾处理需求面向过程的方法:以处理需求为主,兼顾信息需求数据库设计一般采用生命周期法(1) 需求分析阶段(2) 概念分析阶段(3) 逻辑设计阶段(4) 物理设计阶段(5) 编码阶段(6) 测试阶段(7) 运行阶段(8) 进一步修改阶段2 数据库设计的需求分析第一阶段:需求收集和分析,收集基本数据和数据流图3 数据库概念设计(1) 概念设计概述(2) 数据库概念设计的过程4 数据库的逻辑设计(1) 从 E-R 模型向关系模式转换(2) 逻辑模式规范化及调整,实现5 数据库管理(1) 数据库的建立(2) 数据库的调整(3) 数据库的重组(4) 数据库的故障校复(5) 数据安全性控制与完整性控制(6) 数据库监控精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 8 页,共 30 页 - - - - - - - - - - 第一章 Vb 程序开发环境Visual Basic 的特点(1)可视化编程方法(2)面向对象的程序设计(3)事件驱动编程机制(4)结构化程序设计语言(5)访问数据库(6)建立 ActiveX 文档( 7)IDE 集成开发环境(面向Windows) (8)已完成的应用程序是真正的.exe文件,并提供运行可自由发布的动态链接库(DLL )Visual Basic6.0 的版本:学习版,专业版,企业版Visual Basic 的启动(1)使用快捷方式( 2)使用菜单命令( 3)使用“我的电脑”启动Visual Basic 的退出(1) 单击 Visual Basic 窗口右上角的“关闭”的按钮(2) 选择“文件”菜单中的“退出”命令(3) 按下 Alt+Q Visual Basic 的标题栏工程 1Microsoft Visual Basic 设计 设计模式工程 1Microsoft Visual Basic 运行 运行模式工程 1Microsoft Visual Basic Break 中断模式Visual Basic 的菜单栏(1)“文件”:其中包含打开和保存项目以及生成执行文件的命令和一系列最近使用的项目(2)“编辑”:其中包含编辑命令“剪切”,“复制”,“粘贴”等和许多格式化,编辑代码的命令(3)“视图”:其中包含显示和隐藏IDE 构件的命令(4)“工程”:其中包含将构件加入当前项目,引用Windows对象和工具箱工具的命令。(5)“格式”:其中包含对齐窗体控制的命令(6)“调试”:其中包含通常的查错命令精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 9 页,共 30 页 - - - - - - - - - - (7)“运行”:其中包含启动,设置端点和终止当前应用程序运行的命令(8)“查询”:其中包含对数据SQL 的查询,其中有运行,清除结果,验证SQL 语法等命令。(9)“图表”:其中包含了对关系数据库的操作命令(10)“工具”:其中包含建立ActiveX 控件和 ActiveX 控件所要的工具,包含启动“菜单编辑器”的命令和配置环境的“选项”命令(11)“外接程序”:其中包括“外接程序管理器”和“可视化数据管理器”命令,利用“外接程序管理器”命令可以增加和删除外接程序(12)“窗口”:其中包含屏幕窗口布局的命令(13)“帮助”:其中包含帮助信息Visual Basic 的工具栏Visual Basic 6.0 提供了四种工具栏:编辑工具栏,标准工具栏,窗体编辑器,调试工具栏每种工具栏都有固定和浮动二种形式窗体设计器窗口简称窗体( Form) ,是应用程序最终面向用户的窗口,它对应于应用程序的运行结果。工程资源管理器窗口分为六类:窗体文件(.frm) ,程序模块文件 (.bas),类模块文件 (.cls),工程文件 (.vbp),工程组文件(.vbg),资源文件 (.res) 标准模块文件资源文件:存放的各种“资源”,是一种可以同时存放文件,图片,声音等多种资源的文件属性窗口主要是针对窗体和控件设置的,在VB 中,窗体和控件被称为对象,每个对象都可以用一组属性来刻画其特征,而属性窗口就是用来设置窗体或窗体中控件属性的工具箱窗口由工具图标组成这些图标是VB 应用程序的构件,称为图形对象或控件,每个控件由工具箱中的一个工具图标来表示第二章 对象及其操作2.1.1 对象1 什么是对象对象是VB 程序设计的核心。对象分为二类,一类称为预定义对象,可以直接使用并对其进行操作,另一种由用户定义,让用户建立自己的对象。对象是代码和数据的集合,也可以这样理解。对象是一些属性,方法和事件的集合。在VB 中,菜单,窗体,控件等都是对象,用户的操作是选择对象,而计算机的操作则是是执行对应的代码片断。2 对象属性属性是一个对象的特征,不同的对象有不同的属性。对象常见的属性有标题(Caption) ,名称(Name)颜色( Color) ,字体大小( Fontsize) ,是否看见( Visible)除了用属性窗口设置对象属性外,也可以在程序中程序语句设置,一般格式为:对象名 .属性名称=新设置的属性值3 对象事件事件( Event)就是对象上所发生的事情,当系统响应用户的一些动作的时候,就会自动触发事件代码。响应某个事件后执行的操作通过一段程序代码来实现,这样的一段程序代码叫做事件过程(Event Procudure )事件过程的一般格式如下Private Sub 对象名称 _事件名称 () 事件响应程序代码End Sub 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 10 页,共 30 页 - - - - - - - - - - 在 VB 中对象的事件有如下特点(1)事件是预先定义好的,能够被对象识别的动作(2)不同的对象能够识别不同的事件(3)对象的事件是固定的,用户不能建立新的事件4 对象的方法在面向对象程序设计(OOP)中,引入了称为方法(Method)的特殊过程和函数。方法的操作与过程,函数的操作相同,但方法是特定对象的一部分,其调用格式为:对象名称.方法名称VB 提供了大量的方法,有些方法可以适用于多种甚至所有类型的对象,而有些方法可能只适用于少数几种对象。VB 中,方法是对象的一部分 ,方法是预定义好的操作 ,方法用于完成某些特定的功能2.1.2 对象属性设置对象属性可以通过程序代码设置,也可以在设计阶段通过属性窗口设置。(1)用鼠标单击属性窗口的任何部位。(2)执行“视图”菜单中的“属性窗口”命令(3)按 F4 键(4)单击工具栏上的“属性窗口”按钮(5)按组合键 Ctrl+PgDn 或 Ctrl+PgUp 属性不同,设置新属性的方式也不一样,通常有三种1 直接键入新属性值2 选择输入,即通过下拉列表选择所需要的属性值3 利用对话框设置属性值2.2.1 窗体的结构与属性用二种方法来设置窗体属性:一是通过属性窗体设置;一是在窗体事件过程中通过程序代码设置。大部分属性既可以通过属性窗体设置,也可以通过程序代码设置,而有些属性只能用程序代码或属性窗口设置。通常把只能通过属性窗口设置的属性称为“只读属性”。Name 就是只读属性。窗体(Form)的常用属性1. AutoRedraw自动重画,格式:对象 .AutoRedraw=Boolean 2. BackColor 背景颜色3.BoederStyle边框类型4. Caption 标题,格式:对象 .Caption=字符串 5. ControlBox 控制框6. Enabled允许7.字形属性设置8.ForeColor 前景颜色9.Height,Width 高,宽格式:对象 .Height=数值;对象 .Width=数值 10. Icon 图标11.MaxButton,MinButton 最大,最小化按钮12. Name名称13. Picture图形14. Top,Left 顶边,左边位置15. Visible 可见性,格式 ; 对象. Visible=Boolean 16. WindowState窗口状态 ,格式:对象 . WindowState =Boolean 2.2.2 窗体事件1. Click(单击)事件,格式: Private Sub Form_ Flick() 2. DblClick ( 双击)事件,格式: Private Sub Form_ DblClick() 3.Load(装入)事件,格式: Private Sub Form_ Load() 4.Activate(活动) ,Deactivate(非活动)事件5.Unload(卸载)事件,格式: Private Sub Form_ Unload(cancel As Integer) 6.Paint(绘画)事件精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 11 页,共 30 页 - - - - - - - - - - 2.3 控件VB 控件分为三种类型:标准控件,ActiveX 控件和可插入对象2.3.1 标准控件编号名称作用1 Pointer(指针)不是一个控件,只有选择Pointer 后,才能改变窗体中控件的位置和大小2 PictureBox(图片框)用来显示图形,作为其他控件的容器,显示图形方法的输出或显示Print 方法输出的文本,可显示下述任何格式的图片文件:位图,图标,图元文件,增强型图元文件,JPEG或 GIF 3 Label(标签)用来显示文本,但用户不能编辑控件。可用此控件标识窗体的对象4 TextBox(文本框)有时也称为编辑字段或者编辑控件,显示设计时用户输入的文件信息,或运行时在代码中赋予控件的信息5 Frame(框架)为控件提供可标识的分组。同时可以在功能上进一步分割一个窗体,这相关的对象6 CommandButton(命 令按钮)可以开始,中断或者结束一个进程,当单击此按钮时,可以执行指定的操作7 CheckBox(复选框)又称检查框,用于多重选择8 OptionButton ( 单 选 按钮)显示一个可以打开或者关闭的选项,用于表示单项的开关状态9 ComboBox(组合框)将 TextBox 和 ListBox 的特征结合在一起既可以在控件的文本框部分输入信息,也可以在控件的列表框部分选择一项10 ListBox(列表框)显示项目列表,从中可以选择一项或多项。如果项目总数超过了可显示的项目数,就自动在ListBox 控件上添加滚动条11 HScrollBar (水 平 滚 动条)用于表示在一定范围内的数值选择。常放在列表框或文本框中用来浏览信息,或用来设置数值输入12 VScrollBar (垂 直 滚 动条)用于表示一定范围内的数值选择。可以定位列表,作为输入设备或速度,数量的指示器13 Timer(计时器)响应时间的流逝。它独立于用户,编程后可用来在一定的时间间隔执行操作。此控件的一个一般作用是检查系统时钟,判断是否该执行某项任务。14 DriveListBox ( 驱 动 器列表)用来显示用户系统中所有有效磁盘驱动器的列表。可以创建对话框,在所有可用目录中,从文件列表打开一个文件15 DirListBox ( 目 录 列 表框)显示目录和路径。可以显示分层的目录列表。可以创建对话框,在所有可用目录中,从文件列表打开一个文件16 FileListBox (文件列表框)将文件定位并列举出来,用来显示所选择文件类型的文件列表17 Shape (形状)可在窗体,框架或图片框中创建下述约预定义形状:矩形,正方形,椭圆形,圆形等18 Line(直线)图形控件,他显示水平线,垂直线或者对角线19 Image(图像框)用来显示图形可以显示来自位图,图标或源文件的图形,也可以显示增强的源文件, JPEG或 GIF 20 Data(数据)用来访问数据库21 OLE Container(OLE 容器)用于对象的链接和嵌套2.3.2 控件的命名和控件值1.控件的命名每个窗体和控件都有一个名字,这个名字就是窗体或控件的Name 属性值。在一般情况下,窗体和控件都有默认值, Microsoft 建议用三个小写字母作为对象的Name属性的前缀精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 12 页,共 30 页 - - - - - - - - - - 2.控件值在一般情况下,通过“控件.属性”的格式设置一个控件的属性VB 为每个控件规格定了一个默认属性,在设置这样的属性时,不必给出属性名,通常把该属性称为控件的值。控件值是一个最重要或最常用的属性。第三章 简单程序设计3.1 VB 中的语句1 赋值语句Let 目标操作符 =源操作符(变量,表达式,常量,带有属性的对象)注a 赋值语句兼有计算与赋值的双重功能b“=”与数学上的等号意义不同c 目标操作符,源操作符的数据类型一致d 关键字 Let 可省略2 注释语句目的提高程序的可读性Rem 注释内容 注释内容3 暂停语句Stop VB 遇到 Stop 语句,这条语句就暂停程序执行转换到中断模式4 结束语句End Sub 结束 Sub 过程End Function 结束 Function 过程End If 结束 If 语句块End Type 结束记录类型End Select 结束情况语句3.2 编写简单的 VB 引用程序在用 VB 开发应用程序时,一般需要四步(1)创建应用程序界面(2)设置窗体和控件的相关属性(3)编写应用程序代码(4)调试和运行3.4.1VB 应用程序的构成VB 应用程序通常由三类模块组成,即窗体模块,标准模块和类模块。第四章 VB 程序设计基础4.1.1 数据类型数据类型字符串变长字符串(String)顶长字符串数值整型数整数 (Integer)长整数 (Long)浮点数单精度浮点数(Single)双精度浮点数(Double)货币 (Currency)变体 (Variant)其他数据类型字节( Byte) ,布尔( Boolean) ,日期( Date) ,对象( Object) ,Decimal 数据类型4.1.2 用户定义的数据类型1 记录类型Type语句注 Type为关键字在标准模块中定义,记录类型变量是通用的,可以出现在工程中任何地方定义记录类型数据后,在该结构中不是存放数据,还必须定义记录类型变量,记录类型变量是存放数据的Type 成员 1 AS 类型名成员 2 AS 类型名精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 13 页,共 30 页 - - - - - - - - - - 定义记录类型时,若是字符串,必为定长字符串记录数据类型中的成员不能含有数组4.1.3 枚举类型放在窗体类型,标准模块或公共类模块中的声明部分通过Enum 语句来定义注1. Enum 开头, End Enum结果2.“常数表达式”可以省略3.枚举中常数值看做长整数4 当对一个枚举中的常数赋值时,可以使用另一个枚举中的数值4.2.1 常量常量文字常量字符串常量数值常量整型数十进制数,八进制数,十六进制数长整型数十进制数,八进制数,十六进制数货币型数浮点数符号常量符号常量: Const 常量名=表达式 ,常量名 =表达式 注 1.在声明符号常量时,可以在常量名后面