全国vfp二级历年真题.docx
《全国vfp二级历年真题.docx》由会员分享,可在线阅读,更多相关《全国vfp二级历年真题.docx(139页珍藏版)》请在冰豆网上搜索。
全国vfp二级历年真题
全国计算机等级考试二级公共基础知识考试大纲
基本要求
1.掌握算法的基本概念。
2.掌握基本数据结构及其操作。
3.掌握基本排序和查找算法。
4.掌握逐步求精的结构化程序设计方法。
5.掌握软件工程的基本方法,具有初步应用相关技术进行开发的能力。
6.掌握数据库的基本知识,了解关系数据库的设计。
考试内容
一、基本数据结构与算法
1.算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复杂度)。
2.数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表示;线性结构与非线性结构的概念。
3.线性表的定义;线性表的顺序存储结构及其插入与删除运算。
4.栈和队列的定义;栈和队列的顺序存储结构及其基本运算。
5.线性单链表、双向链表与循环链表的结构及其基本运算。
6.树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。
7.顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。
二、程序设计基础
1.程序设计方法与风格。
2.结构化程序设计。
3.面向对象的程序设计方法,对象,方法,属性及继承与多态性。
三、软件工程基础
1.软件工程基本概念,软件生命周期概念,软件工具与软件开发环境。
2.结构化分析方法,数据流图,数据字典,软件需求规格说明书。
3.结构化设计方法,总体设计与详细设计。
4.软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试。
5.程序的调试,静态调试与动态调试。
四、数据库设计基础
1.数据库的基本概念;数据库,数据库管理系统,数据库系统。
2.数据模型,实体联系模型及E-R图,从E-R图导出关系数据模型。
3.关系代数运算,包括集合运算及选择、投影、连接运算,数据库规范化理论。
4.数据库设计方法和步骤:
需求分析、概念设计、逻辑设计和物理设计的相关策略。
考试方式
1.公共基础知识的考试方式为笔试,与C语言程序设计(C++语言程序设计、Java语言程序设计、VisualBasic语言程序设计、VisualFoxPro数据库程序设计、Access数据库程序设计或Delphi语言程序设计)的笔试部分合为一张试卷。
公共基础知识部分占全卷的30分。
2.公共基础知识有10道选择题和5道填空题。
全国计算机等级考试二级VisualFoxPro数据库程序设计考试大纲(2007年版)
基本要求
1.具有数据库系统的基础知识。
2.基本了解面向对象的概念。
3.掌握关系数据库的基本原理。
4.掌握数据库程序设计方法。
5.能够使用VisualFoxPro建立一个小型数据库应用系统。
考试内容
一、VisualFoxPro基础知识
1.基本概念:
数据库,数据模型,数据库管理系统,类和对象,事件,方法。
2.关系数据库:
(1)关系数据库:
关系模型,关系模式,关系,元组,属性,域,主关键字和外部关键字。
(2)关系运算:
选择,投影,连接。
(3)数据的一致性和完整性:
实体完整性,域完整性,参照完整性。
3.VisualFoxPro系统特点与工作方式:
(1)Windows版本数据库的特点。
(2)数据类型和主要文件类型。
(3)各种设计器和向导。
(4)工作方式:
交互方式(命令方式,可视化操作)和程序运行方式。
4.VisualFoxPro的基本数据元素:
(1)常量、变量,表达式。
(2)常用函数:
字符处理函数,数值计算函数,日期时间函数,数据类型转换函数,测试函数。
二、VisualFoxPro数据库的基本操作
1.数据库和表的建立、修改与有效性检验:
(1)表结构的建立与修改。
(2)表记录的浏览、增加、删除与修改。
(3)创建数据库,向数据库添加或移出表。
(4)设定字段级规则和记录级规则。
(5)表的索引:
主索引,候选索引,普通索引,唯一索引。
2.多表操作:
(1)选择工作区。
(2)建立表之间的关联,一对一的关联,一对多的关联。
(3)设置参照完整性。
(4)建立表间临时关联。
3.建立视图与数据查询:
(1)查询文件的建立、执行与修改。
(2)视图文件的建立、查看与修改。
(3)建立多表查询。
(4)建立多表视图。
三、关系数据库标准语言SQL
1.SQL的数据定义功能:
(1)CREATETABLE-SQL。
(2)ALTERTABLE-SQL。
2.SQL的数据修改功能:
(1)DELETE-SQL。
(2)INSERT-SQL。
(3)UPDATE-SQL。
3.SQL的数据查询功能:
(1)简单查询。
(2)嵌套查询。
(3)连接查询。
内连接
外连接:
左连接,右连接,完全连接
(4)分组与计算查询。
(5)集合的并运算。
四、项目管理器、设计器和向导的使用
1.使用项目管理器:
(1)使用“数据”选项卡。
(2)使用“文档”选项卡。
2.使用表单设计器:
(1)在表单中加入和修改控件对象。
(2)设定数据环境。
3.使用菜单设计器:
(1)建立主选项。
(2)设计子菜单。
(3)设定菜单选项程序代码。
4.使用报表设计器:
(1)生成快速报表。
(2)修改报表布局。
(3)设计分组报表。
(4)设计多栏报表。
5.使用应用程序向导
6.应用程序生成器与连编应用程序。
五、VisualFoxPro程序设计
1.命令文件的建立与运行:
(1)程序文件的建立。
(2)简单的交互式输入、输出命令。
(3)应用程序的调试与执行。
2.结构化程序设计:
(1)顺序结构程序设计。
(2)选择结构程序设计。
(3)循环结构程序设计。
3.过程与过程调用:
(1)子程序设计与调用。
(2)过程与过程文件。
(3)局部变量和全局变量,过程调用中的参数传递。
4.用户定义对话框(MESSAGEBOX)的使用。
考试方式
1.笔试:
90分钟,满分100分,其中含公共基础知识部分的30分。
2.上机操作:
90分钟,满分100分。
(1)基本操作。
(2)简单应用。
(3)综合应用。
07年4月vfp二级真题
1.下列叙述中正确的是()。
(A)算法的效率只与问题的规模有关,而与数据的存储结构无关.
(B)算法的时间复杂度是指执行算法所需要的计算工作量
(C)数据的逻辑结构与存储结构是一一对应的
(D)算法的时间复杂度与空间复杂度一定相关
答案:
B
分析:
算法的效率既与问题的规模有关,也与数据的存储结构有关,采用不同的存储结构,其数据处理的效率是不同的。
一种数据的逻辑结构根据需要可以表示成多种存储结构。
算法的时间复杂度与空间复杂度不一定成正比相关关系
2.在结构化程序设计中,模块划分的原则是()。
(A)各模块应包括尽量多的功能
(B)各模块的规模应尽量大
(C)各模块之间的联系应尽量紧密
(D)模块内具有高内聚度,模块间具有低耦合度
答案:
D
分析:
一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。
3.下列叙述中正确的是()。
(A)软件测试的主要目的是发现程序中的错误
(B)软件测试的主要目的是确定程序中错误的位置
(C)为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作
(D)软件测试是证明软件没有错误
答案:
A
分析:
软件测试的主要目的是发现程序中的错误。
程序员应避免检查自己的程序。
4.下面选项中不属于面向对象程序设计特征的是()。
(A)继承性
(B)多态性
(C)类比性
(D)封装性
答案:
C
分析:
面向对象的方法的特征有继承性、多态性、封装性等。
5.下列对队列的叙述正确的是()。
(A)队列属于非线性表
(B)队列按“先进后出”的原则组织数据
(C)队列在队尾删除数据
(D)队列按“先进先出”原则组织数据
答案:
D
分析:
队列属于线性表,队列按照“先进先出”原则组织数据,队列是在队头删除数据。
6.对下列二叉树()。
A
/\
BC
/\/\
DEFX
\/
YZ
进行前序遍历的结果为()。
(A)DYBEAFCZX
(B)YDEBFZXCA
(C)ABDYECFXZ
(D)ABCDEFXYZ
答案:
C
分析:
前序遍历是指首先访问根结点,然后遍历左子树,最后遍历右子树;并且,在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。
7.某二叉树中有n个度为2的结点,则该二叉树中的叶子结点数为()。
(A)n+1
(B)n-1
(C)2n
(D)n/2
答案:
A
分析:
根据二叉树的性质3,在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个,因此本题的答案很显示是n+1.
8.在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是()。
(A)并
(B)交
(C)投影
(D)笛卡儿乘积
答案:
B
分析:
关系R与S经交运算后所得到的关系是由那些既在R内又在S内的有序组所组成。
因此正确答案是B。
9.在E-R图中,用来表示实体之间联系的图形是()。
(A)矩形
(B)椭圆形
(C)菱形
(D)平行四边形
答案:
C
分析:
在E-R图中,矩形表示实体集,椭圆形表示属性,菱形表示联系。
10.下列叙述中错误的是()。
(A)在数据库系统中,数据的物理结构必须与逻辑结构一致
(B)数据库技术的根本目标是要解决数据的共享问题
(C)数据库设计是指在已有数据库管理系统的基础上建立数据库
(D)数据库系统需要操作系统的支持
答案:
A
分析:
在数据库系统中,数据的物理结构与逻辑结构是两个不同的概念,并不要求一定一致。
11.以下不属于SQL数据操作命令的是()。
(A)MODIFY
(B)INSERT
(C)UPDATE
(D)DELETE
答案:
A
分析:
MODIFY是VFP操作命令,不是SQL操作命令。
12.在关系模型中,每个关系模式中的关键字()。
(A)可由多个任意属性组成
(B)最多由一个属性组成
(C)可由一个或多个其值能惟一标识关系中任何元组的属性组成
(D)以上说法都不对
答案:
C
分析:
在关系模型中,每个关系模式中的关键字可由一个或多个其值能惟一标识关系中任何元组的属性组成。
13.VisualFoxpro是一种()
(A)数据库系统
(B)数据库管理系统
(C)数据库
(D)数据库应用系统
答案:
B
分析:
VisualFoxpro是一种数据库管理系统。
14.在VisualFoxpro中调用表单文件mfl的正确命令是()
(A)DOmfl
(B)DOFROMmfl
(C)DOFORMmfl
(D)RUNmfl
答案:
C
分析:
运行表单的命令是:
DOFORM<表单文件名>
15.SQL的SELECT语句中,“HAVING<条件表达式>”用来筛选满足条件的()。
(A)列
(B)行
(C)关系
(D)分组
答案:
D
分析:
SQL的SELECT语句中,“HAVING<条件表达式>”用来筛选满足条件的分组。
16.设有关系SC(SNO,CNO,GRADE),其中SNO、CNO分别表示学号和课程号(两者均为字符型),GRADE表示成绩(数值型),若要把学号为“S101”的同学,选修课程号为“C11”,成绩为98分的记录插入到表SC中,正确的语句是()。
(A)INSERTINTOSC(SNO,CNO,GRADE)VALUES(‘S101’,‘C11’,‘98’)
(B)INSERTINTOSC(SNO,CNO,GRADE)VALUES(S101,C11,98)
(C)INSERT(‘S101’,‘C11’,‘98’)INTOSC
(D)INSERTINTOSCVALUES(‘S101’,‘C11’,98)
答案:
D
分析:
本题考查SQL插入命令及字段类型的使用,只有答案D是完全正确的。
17.以下有关SELECT短语的叙述中错误的是()。
(A)SELECT短语中可以使用别名
(B)SELECT短语中只能包含表中的列及其构成的表达式
(C)SELECT短语规定了结果集中的列顺序
(D)如果FROM短语引用两个表有同名的列,则SELECT短语引用它们时必须使用表名前缀加以限定.
答案:
B
分析:
SELECT短语中不仅可以包含表中的列及其构成的表达式,也可以包含选择元组的条件。
18.在SQL语句中,与表达式“年龄BETWEEN12AND46”功能相同的表达式是()。
(A)年龄>=12OR<=46
(B)年龄>=12AND<=46
(C)年龄>=12OR年龄<=46
(D)年龄>=12AND年龄<=46
答案:
D
分析:
答案D和题中的表达式等价,只不过使用“年龄BETWEEN12AND46”表达条件更清晰、更简洁。
19.在SELECT语句中,以下有关HAVING短语的正确叙述是()。
(A)HAVING短语必须与GROUPBY短语同时使用
(B)使用HAVING短语同时不能使用WHERE短语
(C)HAVING短语可以在任意的一个位置出现
(D)HAVING短语与WHERE短语功能相同
答案:
A
分析:
HAVING子句总是跟在GROUPBY子句之后,不可以单独使用。
HAVING子句和WHERE子句不矛盾,在查询中是先用WHERE子句限定元组,然后进行分组,最后再用HAVING子句限定分组。
20.在SQL的SELECT查询的结果中,消除重复记录的方法是()。
(A)通过指定主索引实现
(B)通过指定惟一索引实现
(C)使用DISTINCT短语实现
(D)使用WHERE短语实现
答案:
C
分析:
在SQL的SELECT查询的结果中,消除重复记录的方法是使用DISTINCT短语实现。
21.在VisualFoxpro中,假定数据库表S(学号,姓名,性别,年龄)和SC(学号,课程号,成绩)之间使用“学号”建立了表之间的永久联系,在参照完整性的更新规则,删除规则和插入规则中选择设置了“限制”。
如果表S所有的记录在表SC中都有相关联系的记录,则()
(A)允许修改表S中的学号字段值
(B)允许删除表S中的记录
(C)不允许修改表S中的学号字段值
(D)不允许在表S中增加新的记录
答案:
C
分析:
更新规则中如果选择“限制”,若子表中有相关的记录,则禁止修改父表中的连接字段值;删除规则中如果选择“限制”,若子表中有相关的记录,则禁止删除父表中的记录;插入规则中如果选择“限制”,若父表中没有相匹配的连接字段值则禁止插入子记录。
22.在VisualFoxpro中,对于字段值为空值(NULL)叙述正确的是()。
(A)空值等同于空字符串
(B)空值表示字段还没有确定值
(C)不支持字段值为空值
(D)空值等同于数值0
答案:
B
分析:
空值就是缺值或还没有确定值,不能把它理解为任何意义的数据。
23.在VisualFoxpro中,如果希望内存变量只能在本模块(过程)中使用,不能在上层或下层模块中使用,说明该种内存变量的命令是()
(A)PRIVATE
(B)LOCAL
(C)PUBLIC
(D)不用说明,在程序中直接使用
答案:
B
分析:
在VisualFoxpro中,如果内存变量用LOCAL定义为局部变量,则该变量只能在本模块(过程)中使用,不能在上层或下层模块中使用。
24.在VisualFoxpro中,下面关于索引的正确描述是()
(A)当数据库表建立索引以后,表中的记录的物理顺序将被改变
(B)索引的数据将与表的数据存储在一个物理文件中
(C)建立索引是创建一个索引文件,该文件包含有指向表记录的指针
(D)使用索引可以加快对表的更新操作
答案:
C
分析:
Vfp索引是由指针构成的文件,这些指针逻辑上按照索引关键字值进行排序。
索引文件和表的.dbf文件分别存储,并且不改变表中记录的物理顺序。
实际上,创建索引是创建一个由指向.dbf文件记录的指针构成的文件。
索引可以提高查询速度,但是维护索引是要付出代价的,当对表进行插入、删除和修改等操作时,系统会自动维护索引,也就是说索引会降低插入、删除和修改等操作的速度。
25.在VisnalFoxPro中,在数据库中创建表的CREATETABLE命令中定义主索引,实现实体完整性规则的短语是()。
(A)FOREIGNKEY
(B)DEFAULT
(C)PRIMARYKEY
(D)CHECK
答案:
C
分析:
在VisnalFoxPro中,在数据库中创建表的CREATETABLE命令中定义主索引,实现实体完整性规则的短语是PRIMARYKEY。
26.在VisualFoxPro中,以下关于查询的描述正确的是()
(A)不能用自由表建立查询
(B)只能用自由表建立查询
(C)不能用数据库表建立查询
(D)可以用数据库表和自由表建立查询
答案:
D
分析:
用数据库表和自由表都可以建立查询。
27.在VisualFoxPro中,数据库表的字段或记录的有效性规则的设置可以在()。
(A)项目管理器中进行
(B)数据库设计器中进行
(C)表设计器中进行
(D)表单设计器中进行
答案:
C
分析:
在VisualFoxPro中,数据库表的字段或记录的有效性规则的设置可以在表设计器中进行。
28.在VisualFoxPro中,如果要将学生表S(学号,姓名,性别,年龄)中“年龄”属性删除,正确的SQL命令是()
(A)ALTERTABLESDROPCOLUMN年龄
(B)DELETE年龄FROMS
(C)ALTERTABLESDELETECOLUMN年龄
(D)ALTERTABLESDELETE年龄
答案:
A
分析:
修改表结构命令ALTERTABLE中删除字段的短语是:
DROPCOLUMN。
所以本题的正确答案是A。
29.在VisualFoxPro的数据库表中只能有一个()。
(A)候选索引
(B)普通索引
(C)主索引
(D)惟一索引
答案:
C
分析:
在VisualFoxPro的数据库表中只能有一个主索引。
30.设有学生表S(学号,姓名,性别,年龄),查询所有年龄小于等于18岁的女同学,并按年龄进行降序生成新的表WS,正确的SQL命令是()。
(A)SELECT*FROMSWHERE性别=“女”AND年龄<=18ORDERBY年龄DESCINTOTABLEWS
(B)SELECT*FROMSWHERE性别=“女”AND年龄<=18ORDERBY年龄INTOTABLEWS
(C)SELECT*FROMSWHERE性别=“女”AND年龄<=18ORDERBY‘年龄’DESCINTOTABLEWS
(D)SELECT*FROMSWHERE性别=“女”OR年龄<=18ORDERBY‘年龄’ASCINTOTABLEWS
答案:
A
分析:
本题考查查询条件设置,主要考查排序短语ORDERBY的使用,只有答案A是正确的。
31.设有学生选课表SC(学号,课程号,成绩),用SQL检索同时选修课程号为“C1”和“C5”的学生的学号的正确命令是()。
(A)SELECT学号FROMSCWHERE课程号=“C1”AND课程号=“C5”
(B)SELECT学号FROMSCWHERE课程号=“C1”AND课程号=(SELECT课程号FROMSCWHERE课程号=“C5”)
(C)SELECT学号FROMSCWHERE课程号=“C1”AND学号=(SELECT学号FROMSCWHERE课程号=“C5”)
(D)SELECT学号FROMSCWHERE课程号=“C1”AND学号IN(SELECT学号FROMSCWHERE课程号=“C5”)
答案:
D
分析:
本题考查嵌套查询的使用,只有答案D是完全正确的。
32.设有学生表S(学号,姓名,性别,年龄)、课程表C(课程号,课程名,学分)和学生选课表SC(学号,课程号,成绩),检索学号、姓名和学生所选课程的课程名和成绩,正确的SQL命令是()。
(A)SELECT学号,姓名,课程名,成绩FROMS,SC,CWHERES.学号=SC.学号ANDSC.学号=C.学号
(B)SELECT学号,姓名,课程名,成绩FROM(SJOINSCONS.学号=SC.学号)JOINCONSC.课程号=C.课程号
(C)SELECTS.学号,姓名,课程名,成绩FROMSJOINSCJOINCONS.学号=SC.学号ONSC.课程号=C.课程号
(D)SELECT学号,姓名,课程名,成绩FROMSJOINSCJOINCONSC.课程号=C.课程号ONS.学号=SC.学号
答案:
D
分析:
本题考查联接查询的使用,只有答案D的描述是正确的。
33.在VisualFoxPro中以下叙述正确的是()
(A)表也被称作表单
(B)数据库文件不存储用户数据
(C)数据库文件的扩展名是DBF
(D)一个数据库中的所有表文件存储在一个物理文件中
答案:
B
分析:
表与表单是两个不同的概念,数据库文件中存储的是相关的表文件、查询文件等,并不直接存储用户数据。
数据库文件的扩展名是DBC。
一个数据库中的所有表文件都是单独存储的。
34.在VisualFoxPro中,释放表单时会引发的事件是()。
(A)UnLoad事件
(B)Init事件
(C)Load事件
(D)Release事件
答案:
A
分析:
在VisualFoxPro中,释放表单时会引发的事件是UnLoad事件。
35.在VisualFoxPro中,在屏幕上预览报表的命令是()
(A)PREVIEWREPORT
(B)REPORTFORM...PREVIEW
(C)DOREPORT...PREVIEW
(D)RUNREPORT...PREVIEW
答案:
B
分析:
在VisualFoxPro中,在屏幕上预览报表的命令是REPORTFORM...PREVIEW。
一.填空题:
1.在深度为7的满二叉树中,度为2的结点个数为___【1】____。
答案:
63
分析:
在深度为m的满二叉树有2^m-1个结点,本题深度为7,所以该二叉树共有127个结点,而在满二叉树的第k层上有2^(k-1)个结点,所以第7层上有64个结点,根据满二叉树的定义,除最后一层外,每一层上的所有结点都有两个子结点,所以本题度为2的结点为127-64=63个。
2.软件测试分为白箱(盒)测试和黑箱(盒)测试。
等价类划分法属于__【2】__测试。
答案:
黑盒
分析:
黑盒测试方法主要有等价类划分法、边界值分析法、错误推测法、因果图等。
3.在数据库系统