导图社区 计算机二级Visual Basic易错考点整理
本导图对计算机二级Visual Basic部分的难点和易错点,以及真题中出现过的出题陷阱进行了详细的整理,希望能帮助备考计算机二级的小伙伴提高学习效率,避开考试陷阱,提高考试分数。
编辑于2020-10-24 21:04:43该导图包含了数据管理计划、数据核查计划、数据核查、质疑管理、数据传输与整合、外部数据管理、数据管理人员分工及数据库相关内容。
出版社: 机械工业出版社 译者: 渠海霞 本书用“青年与哲人的对话”这一故事形式总结了与弗洛伊德、荣格并称为“心理学三大巨头”的阿尔弗雷德·阿德勒的思想(阿德勒心理学)。风靡欧美的阿德勒心理学对于“人如何能够获得幸福”这个哲学问题给出了极其简单而又具体的“答案”。了解了足以被称为“这个世界上的一个真理”的阿德勒思想之后,你的人生会发生什么变化呢?又或者,什么都不会改变? 来吧,让我们与青年一起走进这扇“门”!
《别人不说,你一定要懂的人情世故(精华读本)》的特点在于通俗易懂,实用有效,没有空洞地讲大道理,一切都从实际的生活出发。通过对生动有趣的生活事例的讲述,对人性与心理进行了详细深刻的分析,从而阐述了实用有效的人情世故哲学。人情世故并不是洪水猛兽,而是有助于我们建立和谐人际关系和美好生活的一门实学。正如南怀瑾先生所说的:“人情世故不是简单的圆滑处世,不是假意的虚伪逢迎,不是单纯地屈服于现实,而是真正懂得生活的意义,安详地走完自己的人生。”
社区模板帮助中心,点此进入>>
该导图包含了数据管理计划、数据核查计划、数据核查、质疑管理、数据传输与整合、外部数据管理、数据管理人员分工及数据库相关内容。
出版社: 机械工业出版社 译者: 渠海霞 本书用“青年与哲人的对话”这一故事形式总结了与弗洛伊德、荣格并称为“心理学三大巨头”的阿尔弗雷德·阿德勒的思想(阿德勒心理学)。风靡欧美的阿德勒心理学对于“人如何能够获得幸福”这个哲学问题给出了极其简单而又具体的“答案”。了解了足以被称为“这个世界上的一个真理”的阿德勒思想之后,你的人生会发生什么变化呢?又或者,什么都不会改变? 来吧,让我们与青年一起走进这扇“门”!
《别人不说,你一定要懂的人情世故(精华读本)》的特点在于通俗易懂,实用有效,没有空洞地讲大道理,一切都从实际的生活出发。通过对生动有趣的生活事例的讲述,对人性与心理进行了详细深刻的分析,从而阐述了实用有效的人情世故哲学。人情世故并不是洪水猛兽,而是有助于我们建立和谐人际关系和美好生活的一门实学。正如南怀瑾先生所说的:“人情世故不是简单的圆滑处世,不是假意的虚伪逢迎,不是单纯地屈服于现实,而是真正懂得生活的意义,安详地走完自己的人生。”
Visual Basic
公共基础知识
数据结构与算法
1. 什么是算法
算法及其基本特征
算法是解决问题的操作步骤
基本特征
可行性
确定性
有穷性
拥有足够的情报
算法复杂度
算法复杂度与问题规模成正比
时间复杂度
执行算法所需要的计算工作量
不等于所需工作时间
空间复杂度
执行算法所需要的内存空间
输入数据所占的存储空间
程序本身所占的存储空间
算法执行过程中所需的额外空间
对数据进行压缩会降低算法的空间复杂度
压缩储存技术
2. 数据结构的基本概念
什么是数据结构
指相互关联的数据元素的集合
包含两个元素
数据
结构
集合中各个数据元素之间存在的某种关系
用前后件关系描述
分类
数据的逻辑结构
反映数据元素之间的前后件关系
数据的存储结构
又称为数据的物理结构,是逻辑结构在计算机存储空间中的存放方式
数据结构的表示
数据逻辑结构的数学形式定义
数据结构是一个二元组 B(D,R)
B代表数据结构
D是数据元素的集合
R是D上关系的集合,反映D中各元素之间的前后件关系
R中尾部和首部相同,则无根节点,为非线性结构
线性结构和非线性结构
线性结构
一个非空数据结构满足: 有且只有一个根节点 每一个节点最多有一个前件、也最多有一个后件
非线性结构
不满足上述线性结构则称为非线性结构
3. 线性表及其顺序存储结构
线性表的顺序存储结构
线性表可以采用顺序存储和链接存储 顺序表:将线性表中元素一个接一个地存储在一片相邻地存储区域中
基本特征
线性表中所有元素所占存储空间是连续的
线性表中各数据在存储空间中是按逻辑顺序依次存放的
4. 栈和队列
栈及其基本运算
支持子程序调用
所有插入和删除都限定在栈顶
上方即顶
修改原则
先进后出
后进先出
top表示栈顶位置,反映了栈的变化状态
S
格式
S(1:m)
栈中有a(1)...a(m)一共m个元素
若top=m+1,则超出容量,判断啊a(m)位于栈底,a(1)于栈顶
队列及其基本运算
循环队列及其运算
当front=rear时队列为空或满
队头指针可以大于队尾指针也可以小于队尾指针
带链的队列
front=rear不为空时带链队列只有一个元素
5. 线性链表
基本概念
顺序表和链表的比较
顺序表
优点
1. 随机存取表中任意节点
2. 无须为表示节点间的逻辑关系额外增加存储空间
缺点
1. 插入和删除运算效率很低
2. 存储空间不便于扩充
3. 不便于对存储空间动态分配
链表
优点
1. 进行插入和删除运算时只需要改变指针,无需移动元素
2. 链表存储空间易于扩充且方便空间动态分配
缺点
需要额外空间表示元素之间逻辑关系
特点
各节点再存储空间中的位置关系与逻辑关系不一致
分类
双向链表
可以从任何一个结点开始直接遍历到所有结点 、
循环链表
可以从任何一个结点开始直接遍历到所有结点
线性单链表
就是指线性表的链式存储结构,只能从一个节点遍历到其后的所有节点
二叉链表
可以从根节点开始遍历到所有节点
6. 树和二叉树
树的概念
一种简单的非线性结构
树的相关术语
父节点
每一个节点唯一的前件
根节点
没有前件的节点
子节点
每一个节点的多个后件
叶子节点
没有后件的节点
度
一个节点所拥有的后件个数;所有节点最大的度成为树的度
深度
树的最大层次
子树
以某节点的一个子节点为根构成的树
二叉树及其基本性质
特点
二叉树可以为空,空的二叉树没有节点,非空二叉树有且只有一个根节点
每个节点最多有两棵子树,即不存在度大于2的节点
二叉树子树有左右之分,次序不可颠倒
性质
度为0的节点总是比度为2的节点多一个
满二叉树和完全二叉树
满二叉树
除最后一层外,每一层上所有节点都有两个子节点
满而对称
完全二叉树
除最后一层每一层的节点数都达到最大值
即满但不一定对称
二叉树的遍历
规律:“根”的前中后位置
前序遍历
先访问根节点,再遍历左子树,最后遍历右子树
根左右
中序遍历
左,根,右
后序遍历
左右根
7. 查找技术
顺序查找
从线性表第一个元素开始,逐个将线性表中元素与被查元素比较,若相等则查找成功,停止查找
最好情况1
最坏情况n
平均情况n/2
当线性表为无序表或是链式有序结构时只能采用顺序查找
二分法查找
问女人年龄先从50起步,不对再来25
两个条件
用顺序存储结构
线性表是有序表
最坏情况下只需比较log(2)n次
顺序表中查找最大项
查找最大值时平均和最坏情况一致
n的顺序表中找最大值最坏比较次数为n-1
8. 排序技术
最坏情况下时间复杂度最小的是堆排法
交换类排序法
冒泡排序法
通过两两相邻数据元素之间的比较和交换,不断消去逆序,直到所有元素有序
最坏情况下对于n的线性表排序,需要比较的次数
n(n-1)/2
快速排序
在n个元素中取一元素K,以K为分割标准将小于K的数放K前面,大于的放其后。再对子表重复操作
最坏情况下n(n-1)/2
每经过一次元素交换都会产生新的逆序
插入类排序法
简单插入排序
将待排序n个元素视为一个有序表和一个无序表,开始时有序表仅含一个元素,随后每次取无序表中第一个元素插入到有序表的正确位置
最坏情况下n(n-1)/2
希尔排序
先取一个小于n的整数d1作为第一个增量,把文件的全部记录分组。所有距离为d1的倍数的记录放在同一个组中。先在各组内进行直接插入排序;然后,取第二个增量d2 =1(
最坏情况下n^r(1<r<2)
选择类排序法
简单选择排序法
先从n个待排序数据元素中选择最小的元素,将该元素与第一个元素交换,再从剩下的n-1个元素中选出最小的元素与第二个元素交换
最坏情况下n(n-1)/2
堆排序法
将元素按顺序组成一颗完全二叉树
最坏情况下nlog(2)n
程序设计基础
程序设计风格
结构化程序设计
结构化程序设计的原则
自顶向下
自顶向下(top-down)的分析算法通过在最左推导中描述出各个步骤来分析记号串输入。将大型的数字电路设计分割成大小不一的小模块来实现特定的功能,最后通过由顶层模块调用子模块来实现整体功能,这就是Top-Down的设计思想。
逐步求精
将现实问题经过几次抽象(细化)处理,最后到求解域中只是一些简单的算法描述和算法实现问题。即将系统功能按层次进行分解,每一层不断将功能细化,到最后一层都是功能单一、简单易实现的模块。求解过程可以划分为若干个阶段,在不同阶段采用不同的工具来描述问题。在每个阶段有不同的规则和标准,产生出不同阶段的文档资料。
模块化
模块化是指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程,有多种属性,分别反映其内部特性。
限制使用goto语句
goto语句:无条件转移语句(乱,难以理解)
优点
1. 程序易于理解、使用和维护
易读性
2. 提高了编程工作的效率,降低了软件的开发成本
面向对象的程序设计
面向对象方法的基本概念
对象的基本特点
1. 标识唯一性
2. 分类性
可将具有相同属性和操作的对象抽象成类
3. 多态性
同一操作可以是不同对象的行为
4. 封装性
从外面只能看到对象的外部特性,对象内部对外不可见
是数据和方法的封装体
5. 模块独立性好
完成对象所需的元素都被封装在对象内部,故模块独立性好
类和实例
类
具有共同属性、共同方法的对象的集合,是关于对象的抽象描述
实例
对应类的一个具体对象
消息
继承
是面向对象的方法的一个主要特征
指能够直接获得已有的性质和特征,而不必重复他们呢
指类之间共享属性和操作机制
多态性
子类对象可以像父类对象那样使用
同样的消息既可以发送给父类也可以给子类对象
对象主要特征
抽象
继承
封装
多态
软件工程基础
软件工程基本概念
1. 软件定义和特点
计算机软件由程序、数据及相关文档构成的完整集合,它与硬件共同组成计算机系统
两部分组成
机器可执行的程序和数据
机器不可执行的,与软件开发、运行维护、使用等有关的文档
2. 软件的分类
系统软件
管理计算机资源,提高计算机使用效率
应用软化
支撑软件
3. 软件工程
三要素
方法
工具
过程
4. 软件过程
把输入转化为输出的一组彼此相关的资源和活动
5. 软件生命周期
软件定义期
问题定义
可行性研究
需求分析
软件开发期
概要设计
详细设计
实现
将代码利用编译器编译生产的软件
测试
运行维护期
使用和维护
直至退役
6. 软件危机主要表现
软件需求增长得不到满足
软件开发成本和进度无法控制
软件质量难以保证
软件不可维护或维护成都非常低
软件成本不断提高
软件开发生产率的提高赶不上硬件的发展和应用需求的增长
需求分析及其方法
1. 需求分析
相关概念
需求分析任务是发现需求、求精、建模和定义需求的过程
阶段工作的4个方面
需求获取
需求分析
编写需求规格说明书
需求评审
需求规格说明书
需求分析阶段最后成果
应重点描述软件的目标、功能需求、性能需求、外部接口、属性及约束条件
作用
1. 便于用户、开发人员进行理解和交流
2. 反映用户问题结构,可作为软件开发工作的基础和依据
3. 作为确定测试和验收的依据
需求分析方法
结构化分析方法
面向对象分析方法
2. 结构化分析方法的常用工具
数据流图
data flow diagram, DFD
数据流图所有元素名字的定义集中起来就构成了数据字典
数据字典
结构化英语
判定表
判定树等
3. 数据流图的主要图形元素
数据流
在数据流图中标有名字的箭头
软件设计及其方法
1. 软件设计基本概念
软件设计步骤
1. 软件结构设计
2. 数据设计
3. 接口设计
4. 过程设计
模块划分准则
高内聚低耦合
提高独立性的原则
2. 概要设计
结构图
控制流
程序流图中标有名字的箭头表示控制流
3. 详细设计
常用设计工具
3P N定
程序流程图PFD
programme flow diagram
N-S图
Nassi Shneiderman图
方框图代替传统流程图
PAD图
problem analysis diagram,问题分析图
判定表
PDL
软件测试
软件测试的实施
1. 单元测试
2. 集成测试
3. 确认测试
4. 系统测试
数据库设计基础
数据库系统基本概念
a. 数据库、数据库管理系统与数据库系统
1. 数据
描述事物的符号记录
2. 数据库DB
data base
长期存储在计算机内的、有组织的、可共享的数据集合
即存放数据的仓库,存储的是数据以及数据之间的联系
3. 数据库管理系统
database management system, DBMS
一个负责数据库中数据组织、操纵、维护、控制及保护和数据服务等的系统软件
DBMS相应数据语言
数据定义语言
负责数据的模式定义和数据的物理存取构建
数据操纵语言
负责数据的操纵,包括查询与增删改等操作
数据控制语言
负责数据的完整性、安全性的定义与检查以及并发控制、故障恢复等功能
数据库管理系统基本功能
4. 数据库管理员
5. 数据库系统
6. 数据库应用系统
b. 数据库技术的发展
1. 人工管理阶段
无共享,冗余度大
2. 文件系统阶段
共享性差,冗余度
3. 数据库系统阶段
共享性大,冗余度小
c. 数据库系统基本特点
1. 数据集成性
2. 高共享低冗余
3. 数据独立性
三级模式保护数据独立性
4. 数据统一管理与控制
d. 数据库系统内部结构体系
数据库系统三级模式结构
概念模式
也称模式,是全局数据逻辑结构的描述
外模式
也称子模式或用户模式,是用户所能看见和使用的局部数据逻辑结构和特征的描述,是概念模式的子集
内模式
又称物理模式,是数据结构和存储方式的描述
e. 关系数据库
规范化目的
解决关系数据库中的插入、删除异常及数据冗余问题
数据模型
数据模型基本概念
E-R模型
Entity Relationship Diagram 实体联系
E-R图
主键
唯一标识,通常为()中第一个
关键字
一个关系中应该有一个或多个候选关键词
与前两个表直接联系且能唯一定义的主键
图形表示
菱形-实体联系
椭圆-属性
矩形-实体集(实体)
实体联系模型转关系模型的实现方式
建立新的关系
关系模型
采用二维表表示关系
常用术语
关系
一个二维表就是一个关系
属性
二维表中的一列
值域
每个属性取值范围
元组
二维表的一行
候选码
二维表中能唯一标识元组的最小属性集
主键或主码
若二维表有多个候选码,则选定其中一个作为主键供用户使用
外键或外码
表M中某属性是表N的候选码或主键,则称该属性为表M的外码
三类完整性约束
实体完整性约束
若属性M是关系的主键,则属性M中的属性值不能为空值
参照完整性约束
若属性A是关系M的外键,它与关系M的主码相对应,对于关系M中的每个元组在A上的值必须为:要么取空值要么等于M中某个元组的主码值
用户定义的完整性约束
关系代数
选择运算
挑几行
投影运算
挑几列
自然连接
相同属性组等值连接
VB语言程序设计
vb不具有明显的开始和结束语句
VB程序开发环境
窗体
属性
borderstyle
仅2可以改变窗体大小
仅0无边框
ControlBox
窗体左上角是否显示控制框
TabStop
False
无法接受焦点
窗体事件
Click
单击窗体标题栏不会触发此事件
Unload
使用格式
Unload Me
Me代表当前窗体
Move
Move(X,Y)是窗体的移动方法
Sub Main
只能定义在标准模块中的特定过程
一个工程只能有一个
不能有返回值
快捷键
打开菜单和执行菜单命令
Ctrl或功能键F8
启动对象
可以是SubMain或窗体,不能是标准模块
没有指定启动窗体时,系统自动将第一个窗体默认为启动窗体
启动窗体可通过工程属性对话框指定
保存
保存工程
右键资源管理器
文件菜单-保存工程
工具栏保存图标
VB程序设计基础
数据类型
用户定义的数据类型
在标准模块中定义
Type前可以有Public或Private
在窗体模块中定义
Type前必须加关键词Private
常量和变量
变量
命名规则
最后一个字符可以是类型说明符
名字的有效字符为255个
数据的输入和输出
数据的输入-InputBox方法
格式
函数格式
变量名=InputBox(prompt,[title],[,default][,xpos,ypos][,helpfile,context])
语句格式
InputBox prompt,[title],[,default][,xpos,ypos][,helpfile,context]
MsgBox函数和语句
函数格式
MsgBox(msg[,type][,title][,helpfile,context])
单击确定按钮返回整数“1”
语句格式
MsgBox Msg$[,type%][,title$][,helpfile,context]
省略第三个title参数后,标题栏显示所属工程名
变量的作用域
局部变量与全局变量
局部变量与全局变量重名时,则优先使用局部变量
常用内部函数
取整函数Int和Fix
Int 求不大于自变量的最大整数
Int(-3.6)=-4
Fix去掉一个浮点数的小数部分,保留整数
类型转换函数
Cints(x)
把x的小数部分四舍五入转换为整数
Cvar(x)
把x 的值转换为变体类型值
数学函数
Abs函数
Absolute
Sgn(number)
符号函数,返回一个整型变量
Number>0,返回1
Number=0,返回0
Number<0,返回-1
Exp(x)
以e为底的指数函数
格式输出函数
Format
例格式
Format(*,"###.#")
功能
String
格式
Print String(3,"string")
窗体上显示字符串sss
运算符与表达式

逻辑运算符
优先顺序
从高到低Not And Or
Not at all
常用标准控件
选择结构
列表框属性
Listindex
当没有任何表项被选中时,其值为-1
VB控制结构
无法获得焦点的有框架、标签和计时器等
选择控制结构
多分支控制语句
select case 语句
只能是数值表达式或字符串表达式
子句case
不能为逻辑表达式
可以是值的形式
表达式To的形式
Is关系运算表达式
建立控件数组
属性
index
由0开始
动态数组
动态数组定义
首先声明一个无下标的,不指定维数的数组
redim定义带下标的数组,并给出维数
redim只能改变个数不能改变维数和数据类型
数组的初始化
Array函数只适用于一组数组,只能对一维数组进行初始化
Array函数只能给变体型数组或动态数组初始化
例:Array声明变量a之前→Dim a As Variant
过程
过程的定义
第一个参数用Optional后面的参数也必须用
无返回值的Sub无需指明返回值数据类型
ByVal不能声明数组
如果过程被定义为Static类型,则该过程中局部变量都是Static类型
过程名是系统自动生成的,不能通过用户指定
Sub过程中不能定义其他过程
过程的调用
调用语句中的是实参,被调用的是形参,二者个数需要一致
一维整型数组作为参数时
数组名后只加一个括号
一般只用传地址方式传送
菜单程序设计
菜单设计
菜单项不管是同级还是不同级都不允许同名
菜单项不能响应Click事件以外的其他事件
通用对话框
属性
DefaultExt
FilterIndex
二者均可决定默认文件类型,一个直接写,一个写索引
DialogTitle
颜色对话框无效cnmb
FileTitle
不同于还包括路径的FileName,它只指定文件名
Action
1
ShowOpen
2
ShowSave
3
ShowColor
4
ShowFont
5
ShowPrinter
6
ShowHelp
Help文件
键盘与鼠标事件过程
鼠标事件
先出发MouseUp再触发Click
拖放所触发的事件
DragOver
DragDrop
属性
DragMode
对象自动拖放模式
DragMode=1
实现对象的自动拖放
DragICon
鼠标指针性状
键盘事件
参数
KeyCode
默认为大写字母
KeyAscii
默认为小写字母
没有键盘事件的控件
Frame
Label
多重窗体与数据文件
vb可将二维表数据存入文件
数据文件分类
按文件内容
程序文件
数据文件
按文件存储信息形式
ASCII文件
二进制文件
按文件组织形式
顺序文件
随机文件
按存储介质
光盘文件
磁盘文件
磁带文件
打印文件
...
文件操作函数
LOF函数
格式
LOF(文件号)
功能
返回打开文件的大小(字节数)
顺序文件
顺序文件的写操作
Write
顺序文件的打开
Output
总是从文件的第一个记录开始写
Append
文件最后一个记录后面添加数据
顺序文件的读操作
1. Input#语句
格式
Input#文件号,变量表
功能
从一个顺序文件中读出数据项并把这些数据项赋给程序变量
2. Line Input#语句
格式
Line Input#文件号,字符串变量
功能
从顺序文件中读取一个完整的行,并把它赋给一个字符串变量
3. Input$函数
格式
Input$(n,#文件号)
功能
返回从指定文件中读出的n个字符的字符串
特性
或者只读,或者只写
不易实现记录增减,不如随机文件一样灵活地存取数据
不可按记录号直接访问某个记录,必须按顺序先访问前面的才能访问后面的记录
随机文件
若要求文件内每条记录应包括多个不同数据类型的数据项
则数据类型是记录类型
也即Type类型
文件系统控件
File
属性
Pattern
用以指定在文件列表框中显示文件的类型
Parent
可访问一个对象的父亲的属性、方法、控件
Drive
属性
Drive
用来设置或返回所选择的驱动器名
历年坑题
范式
例题
1

2

科幻
1

2

3

4

5

6

7

8

深坑
1

2

3

4

5

6

难点
数组从大到小排序

字符类和字符串类
字符串
一对双引号括起来的字符序
字符常量
使用单引号括起来
True和False的值
非0即True,一般是-1
0是False