2010年计算机等级考试二级VB模拟试题及参考答案(9)
编辑推荐:
2010年全国计算机二级考试各科模拟试题冲刺专题
VB菜单和对话框全真试题训练与参考答案
VB菜单和对话框历届最新考题汇编与解答
更多考试大信息:
考试大教育全国计算机等级考试在线测试平台
全国计算机等级考试论坛
笔试部分
一、选择题
1.在深度为5的满二叉树中,叶子结点个数为
A)32 B)31 C)16 D)15
【参考答案】 B
2.若某二叉树的前序遍历访问顺序是abdgcefh,中序遍历访问顺序是dgbaechf,则其后序遍历的结点访问顺序是
A) bdgcefha B) gdbecfha C) bdgaechf D) gdbehfca
【参考答案】 D
3.一些重要的程序语言(如C语言和Pascal语言)允许过程的递归调用。而实现递归调用中的存储分配通常用
A)栈 B)堆 C)数组 D)链表
【参考答案】 A
4.软件工程的理论和技术性研究的内容主要包括软件开发技术和
A)消除软件危机 B)软件工程管理 C)程序设计自动化 D)实现软件可重用
【参考答案】 B
5.开发软件时对提高开发人员工作效率至关重要的是
A)操作系统的资源管理功能 B)先进的软件开发工具和环境
C)程序人员的数量 D)计算机的并行处理能力
【参考答案】 B
6.在软件测试设计中,软件测试的主要目的是
A)实验性运行软件
B)证明软件正确
C)找出软件中全部错误
D)发现软件错误而执行程序
【参考答案】 D
7.数据处理的最小单位是
A)数据 B)数据元素 C)数据项 D)数据结构
【参考答案】 C
8.索引属于
A)模式 B)内模式 C)外模式 D)概念模式
【参考答案】 B
9.下述关于数据库系统的叙述中正确的是
A)数据库系统减少了数据冗余
B)数据库系统避免了一切冗余
C)数据库系统中数据的一致性是指数据类型一致
D)数据库系统比文件系统能管理更多的数据
【参考答案】 B
10.数据库系统的核心是
A)数据库 B)数据库管理系统
C)模拟模型 D)软件工程
【参考答案】 B
11.为了合理组织数据,应遵循的设计原则是
A)“一事一地”的原则,即一个表描述一个实体或实体之间的一种联系
B)用外部关键字保证有关联的表之间的联系
C)表中的字段必须是原始数据和基本数据元素,并避免在表之间出现重复字段
D)以上各原则都包括
【参考答案】 D
12.关系运算中花费时间可能最长的运算是
A)选择 B)联接 C)并 D)笛卡儿积
【参考答案】 D
13.下列赋值语句中正确的是
A)STORE 1 TO X,Y B)STORE 1,2 TO X
C)STORE 1 TO X Y D)STORE 1、2 TO X
【参考答案】 A
14.执行下列语句,其函数结果为
STORE -100 TO X
?SIGN(X)*SQRT(ABS(X))
A)10 B)-10
C)100 D)-100
【参考答案】 B
15.通过项目管理器窗口的命令按钮,不能完成的操作是
A)添加文件 B)运行文件 C)重命名文件 D)连编文件
【参考答案】 C
16.在Visual FoxPro中,在命令窗口输入CREATE DATABASE命令,系统产生的结果是
A)系统会弹出“打开”对话框,请用户选择数据库名
B)系统会弹出“创建”对话框,请用户输入数据库名并保存
C)系统会弹出“保存”对话框,请用户输入数据库名并保存
D)出错信息
【参考答案】 A
17.ABC.DBF是一个具有两个备注型字段的数据表文件,若使用COPY TO TEMP命令进行复制操作,其结果是
A)得到一个新的数据表文件
B)得到一个新的数据表文件和一个新的备注文件
C)得到一个新的数据表文件和两个新的备注文件
D)错误信息,不能复制带有备注型字段的数据表文件
【参考答案】 B
18.要将数据库表从数据库中移出成为自由表,可使用命令
A)DELETE TABLE <数据表名> B)REMOVE TABLE <数据表名>
C)DROP TABLE <数据表名> D)RELEASE TABLE <数据表名>
【参考答案】 B
19.下列关于视图的说法中,错误的是
A)视图可以从单个表或多个表中派生
B)可以在磁盘中找到相应的视图文件
C)视图可以作为查询的数据源
D)利用视图可以暂时使数据从数据库中分离成为自由数据
【参考答案】 B
20.不需要事先建立就可以使用的变量是
A)公共变量 B)私有变量 C)局部变量 D)数组变量
【参考答案】 B
21.设某程序中有PROG1.prg、PROG2.prg、PROG3.prg三个程序依次嵌套,下面叙述中正确的是
A)在PROG1.prg中用!RUN PROG2.prg语句可以调用PROG2.prg子程序
B)在PROG2.prg中用RUN PROG3.prg语句可以调用PROG3.prg子程序
C)在PROG3.prg中用RETURN语句可以返回PROG1.prg主程序
D)在PROG3.prg中用RETURN TO MASTER语句可以返回PROG1.prg主程序
【参考答案】 D
22.执行下列程序:
CLEAR
DO A
RETURN
PROCEDURE A
PRIVATE S
S=5
DO B
?S
RETURN
PROCEDURE B
S=S+10
RETURN
程序的运行结果为
A)5 B)10 C)15 D)程序错误,找不到变量
【参考答案】 C
23.将编辑框的ReadOnly属性值设置为.T.,则运行时此编辑框中的内容
A)只能读
B)只能用来编辑
C)可以读也可以编辑
D)对编辑框设置无效
【参考答案】 A
24.下列关于表格的说法中,正确的是
A)表格是一种容器对象,在表格中全部按列来显示数据
B)表格对象由若干列对象组成,每个列对象包含若干个标头对象和控件
C)表格、列、标头和控件有自己的属性、方法和事件
D)以上说法均正确
【参考答案】 C
25.在表单MyForm中通过事件代码,设置标签Lbl1的Caption属性值设置为“计算机等级考试”,下列程序代码正确的是
A)MyForm.Lbl1.Caption="计算机等级考试"
B)This.Lbl1.Caption="计算机等级考试"
C)ThisForm .Lbl1.Caption="计算机等级考试"
D)ThisForm.Lbl1.Caption=计算机等级考试
【参考答案】 C
26.下列关于报表预览的说法,错误的是
A)如果报表文件的数据源内容已经更改,但没有保存报表,其预览的结果也会随之更改
B)只有预览了报表后,才能打印报表
C)在报表设计器中,任何时候都可以使用预览功能,查看页面设计的效果
D)在进行报表预览的同时,不可以更改报表的布局
【参考答案】 B
27.下列关于域控件的说法,错误的是
A)从数据环境设置器中,每拖放一个字段到报表设置器中就是一个域控件
B)域控件用于打印表或视图中的字段、变量和表达式的计算结果
C)域控件的“表达式生成器”对话框中的“表达式”文本框中必须要有数值表达式,否则将不能添加该域控件
D)如果域控件的“表达式生成器”对话框中的“表达式”文本框中没有数值表达式,可在“格式”文本框中设置表达式添加该域控件
【参考答案】 D
28.下列关于别名和自联接的说法中,正确的是
A)SQL语句中允许在WHERE短语中为关系定义别名
B)为关系定义别名的格式为:<别名><关系名>
C)在关系的自联接操作中,别名是必不可少的
D)以上说法均正确
【参考答案】 C
29.下列关于SQL对表的定义的说法中,错误的是
A)利用CREATE TABLE语句可以定义一个新的数据表结构
B)利用SQL的表定义语句可以定义表中的主索引
C)利用SQL的表定义语句可以定义表的域完整性、字段有效性规则等
D)对于自由表的定义,SQL同样可以实现其完整性、有效性规则等信息的设置
【参考答案】 D
30.在SQL的数据定义功能中,下列命令格式可以用来修改表中字段名的是
A)CREATE TABLE 数据表名 NAME...
B)ALTER TABLE 数据表名 ALTER字段名...
C)ALTER TABLE 数据表名 RENAME COLUMN字段名 TO...
D)ALTER TABLE 数据表名 ALTER 字段名 SET DEFAULT...
【参考答案】 C
31.利用SQL 命令从职工表中派生出含有“职工号”、“姓名”字段的视图,下列正确的是
A)CREATE VIEW ZG_view; B)CREATE VIEW ZG_view AS;
SELECT 职工号,姓名 FROM 职工表 SELECT 职工号,姓名 FROM 职工表
C)CREATE QUERY ZG_view; D)CREATE QUERY ZG_view AS;
SELECT 职工号,姓名 FROM 职工表 SELECT 职工号,姓名 FROM 职工表
【参考答案】 B
第3)~35题使用如下的班级表和学生表。
班级表
班级号 班级名称 班级人数
20030103 计算机一班 55
20030203 计算机二班 48
20030303 计算机三班 50
学生表
班级号学号 姓名 性别 籍贯
2003011001 王伟 男 北京
2003011002 刘红 女 上海
2003011003 李林 女 北京
2003022001 张清 女 上海
2003022002 刘雷 男 上海
32.有如下SQL语句:
SELECT班级名称,姓名,性别 FROM 班级表,学生表;
WHERE班级表.班级号=学生表1.班级号;
AND 籍贯="上海" AND 性别="女";
ORDER BY 班级名称 DESC
执行该语句后,查询结果************有几条记录,且第一条记录的学生姓名是
A)1李林 B)2张清 C)2刘红 D)3张清
【参考答案】 C
33.有如下SQL语句:
SELECT MAX(班级人数) INTO ARRAY arr FROM 班级表
执行该语句后
A)arr[1]的内容为48 B)arr[1]的内容为55
C)arr[0]的内容为48 D)arr[0]的内容为55
【参考答案】 B
34.有如下SQL语句:
SELECT 班级名称,姓名,性别 FROM 班级表,学生表;
WHERE 班级表.班级号=学生表.班级号;
AND 姓名 LIKE "刘*";
ORDER BY 班级号
该语句的含义是
A)查找学生表中姓“刘”的学生记录,并根据班级号分组显示学生的班级名称、姓名和性别
B)查找学生表中姓“刘”的学生记录,按班级号升序显示学生的班级名称、姓名和性别
C)查找学生表中不是姓“刘”的学生记录,按班级号升序显示学生的班级名称、姓名和性别
D)语句错误
【参考答案】 B
35.有如下SQL语句:
SELECT 班级名称 FROM 班级表 WHERE NOT EXISTS;
(SELECT * FROM 学生表 WHERE 班级号=班级表.班级号)
执行该语句后,班级名称的字段值是
A)03计算机一班
B)03计算机二班
C)03计算机三班
D)03计算机一班和03计算机二班
【参考答案】 C
二、填空题
1.使用数据库设计器为两个表建立联系,首先应在父表中建立【1】索引,在子表中建立【2】索引。
【参考答案】
【1】主 【2】普通
2.常量.n.表示的是【3】型的数据。
【参考答案】
【3】逻辑
3.在Visual FoxPro 中参数传递的方式有两种,一种是按值传递,另一种是按引用传递,将参数设置为按引用传递的语句是:SET UDFPARMS【4】。
【参考答案】
【4】TO REFERENCE
4.运行表单时,Load事件是在Init事件之【5】被引发。
【参考答案】
【5】前
5.如下程序段的输出结果是【6】。
i=1
DO WHILE i<10
i=i+2
ENDDO
?i
【参考答案】
【6】11
第6-9题使用如下三个表:
零件.DBF:零件号 C(2),零件名称 C(10),单价 N(10),规格 C(8)
使用零件.DBF:项目号 C(2),零件号 C(2),数量I
项目.DBF:项目号 C(2),项目名称 C(20),项目负责人 C(10),电话 C(20)
6.为"数量"字段增加有效性规则:数量>0,应该使用的SQL语句是【7】TABLE 使用零件【8】数量SET【9】数量>0。
【参考答案】
【7】ALTER 【8】ALTER 【9】CHECK
7.查询与项目"s1"所(项目号)使用的任意一个零件相同的项目号、项目名称、零件号和零件名称,使用的SQL语句是SELECT 项目.项目号,项目名称,使用零件.零件号,零件名称;
FROM 项目,使用零件,零件 WHERE 项目.项目号=使用零件.项目号【10】;
使用零件.零件号=零件.零件号 AND 使用零件.零件号【11】;
(SELECT 零件号 FROM 使用零件 WHERE 使用零件.项目号=′s1′
【参考答案】
【10】AND 【11】IN
8.建立一个由零件名称、数量、项目号、项目名称字段构成的视图,视图中只包含项目号为"s2"的数据,应该使用的SQL语句是
CREATE VIEW item-view【12】;
SELECT 零件.零件名称,使用零件.数量,使用零件.项目号,项目.项目名称;
FROM 零件 INNER JOIN 使用零件;
INNER JOIN【13】;
ON 使用零件.项目号=项目.项目号;
ON 零件.零件号=使用零件.零件号;
WHERE 项目.项目号=′s2′
【参考答案】
【12】AS 【13】项目
9.从上一题建立的视图中查询使用数量最多的2个零件的信息,应该使用的SQL语句是 SELECT*【14】2 FROM item-view【15】数量 DESC。
【参考答案】
【14】TOP 【15】ORDER BY
上机部分
1.基本操作题
(1)新建一个名为“学生”的数据库。
(2)将“学生”、“选课”、“课程”3个自由表添加到新建的数据库“学生”中。
(3)通过“学号”字段为“学生”表和“选课”表建立永久联系。
(4)为上面建立的联系设置参照完整性约束:更新和删除规则为“级联”,插入规则为“限制”。
【参考答案】
(1)在“命令”窗口输入命令:MODIFY DATABASE学生,新建数据库并打开数据库设计器。
(2)右击数据库设计器的空白处,选择“添加表”快捷菜单命令,在弹出的“打开”对话框中,将考生文件夹下“学生”、“选课”、“课程”3个自由表分别添加到新建的数据库中。
(3)具体步骤如下:
① 在数据库设计器中,右击“学生”表,选择快捷菜单命令“修改”。
② 弹出表设计器,单击“索引”选项卡,在索引名列中输入“学号”,在索引类型列中选择“主索引”,在索引表达式列中输入“学号”,最后单击“确定”按钮。
③ 用同样的方法,为“选课”表建立必要的索引,索引项为“学号”。
④ 在数据库设计器中,选中“学生”表中的“学号”主索引字段,将其拖动到 “选课”表的“学号”索引上,建立两表的永久联系。
(4)右键单击“学生”表和“选课”表之间的连线,选择菜单命令“数据库”→“编辑参照完整性(I)”(系统首先要求清理数据库),系统弹出“参照完整性生成器”对话框,按照题意,设置参照完整性。
【试题解析】
本试题主要考查的是数据库与自由表之间的联系,以及字段索引的建立。新建数据库可以通过菜单命令、工具栏按钮或直接输入命令来完成,添加数据库中的表、建立表之间的联系以及参照完整性设置,可以通过数据库设计器来完成,建立表索引可以在数据表设计器中完成。
2.简单应用题
(1)在考生文件夹下建立数据库sc2,将考生文件夹下的自由表score2添加进sc2中。根据score2表建立一个视图score_view,视图中包含的字段与score2表相同,但视图中只能查询到积分小于1500的信息。然后利用新建立的视图查询视图中的全部信息,并将结果按积分升序存入表v2。
(2)建立一个菜单filemenu,包括两个菜单项“文件”和“帮助”,“文件”将激活子菜单,该子菜单包括“打开”、“存为”和“关闭”3个菜单项;“关闭”使用SET SYSMENU TO DEFAULT命令返回到系统菜单,其他菜单项的功能不做要求。
【参考答案】
(1)具体步骤如下:
① 在“命令”窗口输入命令:MODIFY DATABASE sc2,新建一个数据库文件。
② 在数据库设计器中,将考生文件夹下的自由表score2添加到数据库中。
③ 利用菜单命令,打开“新建”对话框,新建一个视图文件。
④ 将数据表score2添加到视图设计器中。
⑤ 在视图设计器的“字段”选项卡中,单击“全部添加”命令按钮,将“可用字段”列表框中的3个字段全部添加到右边的“选定字段”列表框中。
⑥ 在“筛选”选项卡中的“字段名”下拉列表框中选择“score2.积分”字段,在“条件”下拉列表框中选择“<”,在“实例”文本框中输入1500。
⑦ 在“排序依据”选项卡中,将“可用字段”列表框中的“score2.积分”字段添加到右边的“选定字段”列表框中,在“排序选项”选项区中选中“升序”单选按钮。
⑧ 将视图文件以score_view名保存在考生文件夹下。
⑨ 在“新建”对话框中选中“查询”单选按钮,打开查询设计器,将视图score_view添加到查询设计器中
⑩ 在查询设计器的“字段”选项卡中,单击“全部添加”命令按钮,将“可用字段”列表框中的字段全部添加到“选定字段”中。
执行菜单命令“查询”→“查询去向”。
系统弹出“查询去向”对话框,在对话框中单击“表”图标按钮,在“表名”文本框中输入保存查询结果的表名v2,单击“确定”按钮关闭对话框。
执行菜单命令“查询”→“运行查询”,查询结果将自动保存到数据表v2中。
(2)具体步骤如下:
① 在“命令”窗口输入命令:CREATE MENU filemenu,系统弹出一个“新建”对话框,在该对话框中单击“菜单”图标按钮。
② 进入菜单设计器,根据题目要求,输入两个主菜单名称“文件”和“帮助”,在“结果”下拉列表框
中全部选择“子菜单”选项,
③ 单击“文件”名行中的“创建”按钮进入下级菜单的设计界面,编写每个子菜单项的名称“打开”、“存为”和“关闭”,然后在3个子菜单的“结果”对话框中选择“过程”或“命令”。
④ 在“关闭”菜单项的“命令”文本框中编写程序代码:SET SYSMENU TO DEFAULT。
⑤ 选择菜单命令“菜单”→“生成”,生成一个菜单文件filemenu.mpr,
【试题解析】
本试题(1)小题考查的主要是视图的建立及查询,可以在视图设计器中根据题意为自由表建立一个视图文件score_view,并在视图设计器的对应选项卡中为视图设置条件,然后通过查询设计器完成视图的查询,并决定输出去向为表。(2)小题中主要是考查菜单设计器的“结果”下拉列表框中各项的使用功能,例如要建立下级菜单,在“结果”下拉列表框中就必须选择“子菜单”选项,而要执行某条菜单命令,就应该选择“命令”或“过程”选项。
3.综合应用题
(1)请编写名称为change_c的程序并执行。该程序实现下面的功能:将雇员工资表salarys进行备份,备份文件名为baksals.dbf。利用“人事部”向“财务部”提供的雇员工资调整表c_salary1的“工资”,对salarys表的“工资”进行调整(请注意:按“雇员号”相同进行调整,并且只是部分雇员的工资进行了调整,其他雇员的工资不动)。最后将salarys表中的记录存储到od_new表中(表结构与salarys表完全相同)。
(2)设计一个文件名为form2的表单,其中包含“调整”(名称Command1)和“退出”(名称Command2)两个命令按钮。
单击“调整”命令按钮时,调用change_c命令程序实现工资调整。
单击“退出”命令按钮时,关闭表单。
注意:在两个命令按钮中均只有一条命令,不可以有多余命令。
【参考答案】
(1)具体步骤如下:
① 在“命令”窗口输入命令:MODIFY COMMAND change_c。
② 进入程序编辑器,编写如下程序段:
****change_c.prg文件中的程序段****
SET TALK OFF
SET SAFETY OFF
SELECT * FROM salarys INTO TABLE baksals
USE c_salary1
DO WHILE NOT EOF()
UPDATE salarys SET工资=c_salary1.工资;
WHERE salarys雇员号=c_salary1.雇员号
SKIP
ENDDO
SELECT * FROM SALARYS INTO TABLE od_new
CLOSE ALL
SET TALK ON
SET SAFETY ON
*****************************
③ 保存文件,在“命令”窗口输入命令:DO change_c,运行该文件。
(2)具体步骤如下:
① 在“命令”窗口输入命令:CREATE FORM form2。
② 进入表单设计器,根据题意,在表单中添加两个命令按钮,并在属性面板中,分别修改两个命令按钮的Caption属性值为“调整”和“退出”,
③ 双击“调整”(Command1)命令按钮,进入事件编辑窗口,在CLICK事件中编写如下代码:
****“调整”命令按钮的Click事件代码****
DO change_c
************************************
④ 以同样的方法为“退出”命令按钮编写Click事件代码:
****“退出”命令按钮的Click事件代码****
ThisForm.Release
*************************************
⑤ 保存表单完成设计。
【试题解析】
本试题(1)小题主要是考查SQL的查询、定义和更新语句,在更新数据表中的记录时,可利用DO循环对表中的记录进行逐条更新;(2)小题为表单的基本设计,在命令按钮中调用程序的命令,直接通过DO命令来实现。