2010年计算机等级考试二级VB模拟试题及参考答案(11)
编辑推荐:
2010年全国计算机二级考试各科模拟试题冲刺专题
全国计算机等级考试二级笔试样卷VisualBasic语言程序设计
全国计算机等级考试二级VB模拟试题及答案解析
更多考试大信息:
考试大教育全国计算机等级考试在线测试平台
全国计算机等级考试论坛
笔试部分
一、选择题
1.Visual FoxPro DBMS是( )
A.操作系统的一部分
B.操作系统支持下的系统软件
C.一种编译程序
D.一种操作系统
【参考答案】 B
2.Visual FoxPro DBMS基于的数据模型是( )
A.层次型 B.关系型 C.网状型 D.混合型
【参考答案】 B
3.设有部门和职员两个实体,每个职员只能属于一个部门,
一个部门可以有多名职员,则部门与职员实体之间的联系类型是( )
A.m:n B.1:m C.m:k D.1:1
【参考答案】 B
4.在Visual FoxPro中,调用表设计器建立数据库表STUDENT.DBF的命令是( )
A.MODIFY STRUCTURE STUDENT B.MODIFY COMMAND STUDENT
C.CREATE STUDENT D.CREATE TABLE STUDENT
【参考答案】 C
5.在Visual FoxPro中,关于自由表叙述正确的是( )
A.自由表和数据库表是完全相同的
B.自由表不能建立字段级规则和约束
C.自由表不能建立候选索引
D.自由表不可以加入到数据库中
【参考答案】 B
6.在Visual FoxPro中,建立数据库表时,将年龄字段值限制在12~40岁之间的这种约束属于( )
A.实体完整性约束 B.域完整性约束 C.参照完整性约束 D.视图完整性约束
【参考答案】 B
7.在Visual FoxPro中,运行表单T1.SCX的命令是( )
A.DO T1 B.RUN FORM T1 C.DO FORM T1 D.DO FROM T1
【参考答案】 C
8.使用SQL语句进行分组检索时,为了去掉不满足条件的分组,应当( )
A.使用WHERE子句
B.在GROUP BY后面使用HAVING子句
C.先使用WHERE子句,再使用HAVING子句
D.先使用HAVING子句,再使用WHERE子句
【参考答案】 B
9.VisualFoxPro的参照完整性规则不包括()
A.更新规则 B.删除规则
C.查询规则 D.插入规则
【参考答案】 C
10.在Visual FoxPro中,表结构中的逻辑型、通用型、日期型字段的宽度由系统自动给出,它们分别为:( )
A.1、4、8 B.4、4、10 C.1、10、8 D.2、8、8
【参考答案】 A
11.在Visual FoxPro中,学生表STUDENT中包含有通用型字段,表中通用型字段中的数据均存储到另一个文件中,该文件名为( )
A.STUDENT.DOC B.STUDENT.MEM C.STUDENT.DBT D.STUDENT.FTP
【参考答案】 D
12. VisualFoxPro中使用“菜单设计器”定义菜单,最后生成的菜单程序扩展名是( )
A.MNX B.PRG C.MPR D.SPR
【参考答案】 C
13.在Visual FoxPro中,使用SQL命令将学生表STUDENT中的学生年龄AGE字段的值增加1岁,应该使用的命令是( )
A.REPLACE AGE WITH AGE+1 B.UPDATE STUDENT AGE WITH AGE+1
C.UPDATE SET AGE WITH AGE+1 D.UPDATE STUDENT SET AGE=AGE+1
【参考答案】 D
14.调用报表文件PP1预览报表的命令是( )
A.REPORT FROM PP1 PREVIEW
B.DO FROM PP1 PREVIEW
C.REPORT FORM PP1 PREVIEW
D.DO FORM PP1 PREVIEW
【参考答案】 C
15.在Visual FoxPro中,建立索引的作用之一是( )
A.节省存储空间 B.便于管理 C.提高查询速度 D.提高查询和更新的速度
【参考答案】 C
16.在Visual FoxPro中,相当于主关键字的索引是( )
A.主索引 B.普通索引 C.惟一索引 D.排序索引
【参考答案】 A
17.在Visual FoxPro中,为了将表单从内存中释放(清除),可将表单中退出命令按钮的Click事件代码设置为( )
A.ThisForm.Refresh
B.ThisForm.Delete
C.ThisForm.Hide
D.ThisForm.Release
【参考答案】 D
18.假定一个表单里有一个文本框Text1和一个命令按钮组CommandGroup1,命令按钮组是一个容器对象,其中包含Command1和Command2两个命令按钮。如果要在Command1命令按钮的某个方法中访问文本框的Value属性值,哪个式子是正确的?( )
A.ThisForm.Text1.Value
B.This.Parent.Value
C.Parent.Text1.Value
D.This.Parent.Text1.Value
【参考答案】 A
19.在Visual FoxPro中,创建一个名为SDB.DBC的数据库文件,使用的命令是( )
A.CREATE B.CREATE SDB
C.CREATE TABLE SDB D.CREATE DATABASE SDB
【参考答案】 D
20.在Visual FoxPro中,存储图像的字段类型应该是( )
A.备注型 B.通用型 C.字符型 D.双精度型
【参考答案】 B
21.在Visual FoxPro中,下面4个关于日期或日期时间的表达式中,错误的是( )
A.{^2002.09.01 11:10:10AM}-{^2001.09.01 11:10:10AM}
B.{^01/01/2002}+20
C.{^2002.02.01}+{^2001.02.01}
D.{^2000/02/01}-{^2001/02/01}
【参考答案】 C
22.在Visual FoxPro中,关于过程调用叙述正确的是( )
A.当实参的数量少于形参的数量时,多余的形参初值取逻辑假
B.当实参的数量多于形参的数量时,多余的实参被忽略
C.实参与形参的数量必须相等
D.上面的A和B都正确
【参考答案】 A
23.下面是关于表单数据环境的叙述,其中错误的是( )
A.可以在数据环境中加入与表单操作有关的表
B.数据环境是表单的容器
C.可以在数据环境中建立表之间的联系
D.表单运行时自动打开其数据环境中的表
【参考答案】 B
24.在Visual FoxPro中,如果希望一个内存变量只限于在本过程中使用,说明这种内存变量的命令是( )
A.PRIVATE B.PUBLIC
C.LOCAL D.在程序中直接使用的内存变量(不通过A、B、C说明)
【参考答案】 C
25.在DO WHILE … ENDDO循环结构中,LOOP命令的作用是( )
A.退出过程,返回程序开始处
B.转移到DO WHILE语句行,开始下一个判断和循环
C.终止循环,将控制转移到本循环结构ENDDO后面的第一条语句继续执行
D.终止程序执行
【参考答案】 B
26.在Visual FoxPro中,关于视图的正确叙述是( )
A.视图与数据库表相同,用来存储数据
B.视图不能同数据库表进行连接操作
C.在视图上不能进行更新操作
D.视图是从一个或多个数据库表导出的虚拟表
【参考答案】 D
27.SQL是哪几个英文单词的缩写( )
A.Standard Query Language B.Structured Query Language
C.Select Query Language D.以上都不是
【参考答案】 B
28.如果学生表STUDENT是使用下面的SQL语句创建的
CREATE TABLE STUDENT( SNO C(4)PRIMARY KEY NOT NULL,;
SN C(8),;
SEX C(2),;
AGE N(2)CHECK(AGE>15 AND AGE<30))
下面的SQL语句中可以正确执行的是( )
A.INSERT INTO STUDENT(SNO,SEX,AGE) VALUES (”S9”,”男 ”,17)
B.INSERT INTO STUDENT(SN,SEX,AGE) VALUES (”李安琦”,”男 ”,20)
C.INSERT INTO STUDENT(SEX,AGE) VALUES (”男 ”,20)
D.INSERT INTO STUDENT(STO,SN) VALUES (”S9”,”安琦 ”,16)
【参考答案】 A
29.使用SQL语句从表STUDENT中查询所有姓王的同学的信息,正确的命令是( )
A.SELECT*FROM STUDENT WHERE [WTFZ]LEFT[WT](姓名,2)=”王”
B.SELECT*FROM STUDENT WHERE [WTFZ]RIGHT[WT](姓名,2)=”王”
C.SELECT*FROM STUDENT WHERE [WTFZ]TRIM[WT](姓名,2)=”王”
D.SELECT*FROM STUDENT WHERE [WTFZ]STR[WT](姓名,2)=”王”
【参考答案】 A
30.连编后可以脱离开Visual FoxPro独立运行的程序是( )
A.APP程序 B.EXE程序 C.FXP程序 D.PRG程序
【参考答案】 B
第31-35题使用如下表的数据:
部门表
部门号 部门名称
40 家用电器部
10 电视录摄像机部
20 电话手机部
30 计算机部
商品表
部门号 商品号 商品名称 单价 数量 产地
40 0101 A牌电风扇 200.00 10 广东
40 0104 A牌微波炉 350.00 10 广东
40 0105 B牌微波炉 600.00 10 广东
20 1032 C牌传真机 1000.00 20 上海
40 0107 D牌微波炉-A 420.00 10 北京
20 0110 A牌电话机 200.00 50 广东
20 0112 B牌手机 2000.00 10 广东
40 0202 A牌电冰箱 3000.00 2 广东
30 1041 B牌计算机 6000.00 10 广东
30 0204 C牌计算机 10000.00 10 上海
31.SQL语句 SELECT部门号,MAX(单价*数量) FROM 商品表 GROUP BY 部门号查询结果有几条记录?( )
A.1 B.4 C.3 D.10
【参考答案】 C
32.SQL语句
SELECT 产地,COUNT(*)提供的商品种类数;
FROM 商品表;
WHERE 单价>200;
GROUP BY 产地 HAVING COUNT(*)>=2;
ORDER BY 2 DESC
查询结果的第一条记录的产地和提供的商品种类数是( )
A.北京,1 B.上海,2 C.广东,5 D.广东,7
【参考答案】 C
33.SQL语句
SELECT 部门表.部门号,部门名称,SUM(单价*数量);
FROM 部门表,商品表;
WHERE 部门表.部门号=商品表.部门号;
GROUP BY 部门表.部门号
查询结果是( )
A.各部门商品数量合计 B.各部门商品金额合计
C.所有商品金额合计 D.各部门商品金额平均值
【参考答案】 B
34.SQL语句
SELECT部门表.部门号,部门名称,商品号,商品名称,单价;
FROM 部门表,商品表;
WHERE 部门表.部门号=商品表.部门号;
ORDER BY 部门表.部门号 DESC,单价
查询结果的第一条记录的商品号是( )
A.0101 B.0202 C.0110 D.0112
【参考答案】 A
35.SQL语句
SELECT 部门名称 FROM 部门表 WHERE 部门号 IN;
(SELECT 部门号 FROM 商品表 WHERE 单价 BETWEEN 420 AND 1000)
查询结果是( )
A.家用电器部、电话手机部 B.家用电器部、计算机部
C.电话手机部、电视录摄像机部 D.家用电器部、电视录摄像机部
【参考答案】 A
二、填空题
1.某二叉树中度为2的结点有18个,则该二叉树中有【1】个叶子结点。
【参考答案】
【1】19
2.在面向对象方法中,类的实例称为【2】。
【参考答案】
【2】对象
3.诊断和改正程序中错误的工作通常称为【3】。
【参考答案】
【3】程序调试
4.在关系数据库中,把数据表示成二维表,每一个二维表称为【4】。
【参考答案】
【4】关系
5.问题处理方案的正确而完整的描述称为【5】。
【参考答案】
【5】算法
6.在奥运会游泳比赛中,一个游泳运动员可以参加多项比赛,一个游泳比赛项目可以有多个运动员参加,游泳运动员与游泳比赛项目两个实体之间的联系是【6】联系。
【参考答案】
【6】多对多
7.执行命令A=2005/4/2之后,内存变量A的数据类型是【7】型。
【参考答案】
【7】数值
8.如下程序显示的结果是【8】。
s=1
i=0
do while i<8
s=s+i
i=i+2
enddo
?s
【参考答案】
【8】13
9.在Visual FoxPro中,可以在表设计器中为字段设置默认值的表是【9】表。
【参考答案】
【9】数据库表
10.Visual FoxPro中数据库文件的扩展名(后缀)是【10】。
【参考答案】
【10】DBC
11-13题使用如下三个数据库表:
金牌榜.DBF 国家代码 C(3),金牌数 I,银牌数 I,铜牌数 I
获奖牌情况.DBF 国家代码 C(3),运动员名称 C(20),项目名称 C(3),名次 I
国家.DBF 国家代码 C(3),国家名称 C(20)
"金牌榜"表中一个国家一条记录;"获奖牌情况"表中每个项目中的各个名次都有一条记录,名次只取前3名,例如:
国家代码 运动员名称 项目名称 名次
001 刘翔 男子110米栏 1
001 李小鹏 男子双杠 3
002 菲尔普斯 游泳男子200米自由泳 3
002 菲尔普斯 游泳男子400米个人混合泳 1
001 郭晶晶 女子三米板跳板 1
001 李婷/孙甜甜 网球女子双打 1
11.为表"金牌榜"增加一个字段"奖牌总数",同时为该字段设置有效性规则:奖牌总数>=0,应使用SQL语句
ALTER TABLE 金牌榜【11】奖牌总数I【12】奖牌总数>=0
【参考答案】
【11】ADD 【12】CHECK
12.使用"获奖牌情况"和"国家"两个表查询"中国"所获金牌(名次为1)的数量,应使用SQL语句
SELECT COUNT(*) FROM 国家 INNER JOIN 获奖牌情况;
【13】国家.国家代码=获奖牌情况.国家代码;
WHERE 国家.国家名称="中国" AND 名次=1
【参考答案】
【13】ON
13.将金牌榜.DBF中的新增加的字段奖牌总数设置为金牌数、银牌数、铜牌数三项的和,应使用SQL语句【14】金牌榜【15】奖牌总数=金牌数+银牌数+铜牌数。
【参考答案】
【14】UPDATE 【15】SET
上机部分1.基本操作题
在考生文件夹下完成下列基本操作:
(1)用SQL INSERT语句插入元组("p7","pN7",1020)到“零件信息”表(注意不要重复执行插入操作),并将相应的SQL语句存放在文件one.prg中。
(2)用SQL DELETE语句从“零件信息”表中删除单价小于1000的所有记录,并将相应的SQL 语句存放在文件two.prg中。
(3)用SQL UPDATE语句将“零件信息”表中零件号为“p4”的零件单价更改为1090,并将相应的SQL语句存放在文件three.prg中。
(4)打开菜单文件mymenu.mnx,然后生成可执行的菜单程序mymenu.mpr。
【参考答案】
(1)具体步骤如下:
① 在“命令”窗口输入命令:MODIFY COMMAND one。
② 进入文件编辑器,输入如下语句:
INSERT INTO 零件信息 VALUES("p7","PN7",1020)
③ 在“命令”窗口再次输入命令:DO one,执行文件。
(2)具体步骤如下:
① 在“命令”窗口输入命令:MODIFY COMMAND two。
② 进入文件编辑器,输入如下语句:
DELETE FROM 零件信息 WHERE 单价<1000
③ 在“命令”窗口再次输入命令:DO two,执行文件。
(3)具体步骤如下:
① 在“命令”窗口输入命令:MODIFY COMMAND three。
② 进入文件编辑器,输入如下语句:
UPDATE 零件信息SET单价=1090 WHERE 零件号="p4"
③ 在“命令”窗口再次输入命令:DO three,执行文件。
(4)具体步骤如下:
① 在“命令“窗口输入命令:MODIFY MENU mymenu。
② 进入菜单设计器,选择菜单命令“菜单”→“生成”命令,生成一个可执行菜单文件,并保存到考生文件夹下。
【试题解析】
本试题主要考查的是SQL的操作功能,包括数据的插入(INSERT)、更新(UPDATE)和删除(DELETE)功能。生成可执行菜单文件,应该首先打开菜单数据库文件,然后通过菜单命令“菜单”→“生成”,才可以运行菜单。
2.简单应用题
(1)以数据库score建立视图new_view,该视图含有选修了课程但没有参加考试(成绩字段值为NULL)的学生信息(包括“学号”、“姓名”和“系部”3个字段)。
(2)建立表单myform3,在表单上添加表格控件(名称为grdCourse),并通过该控件显示表course的内容(要求RecordSourceType属性必须为0)。
【参考答案】
(1)具体步骤如下:
① 在“命令”窗口输入命令:OPEN DATABASE score,打开考生文件夹下的数据库。
② 通过菜单命令,打开“新建”对话框,选中视图并单击“新建文件”按钮,以打开视图设计器。
③ 按系统要求,先将数据库中的3个表添加到视图设计器中。
④ 在视图设计器中的“字段”选项卡中,将“可用字段”列表框中的student.学号,student.姓名,student.系部3个字段添加到右边的“选定字段”列表框中,
⑤ 在“筛选”选项卡中,选择字段名course.课程号,选中“否”复选框,在条件下拉列表框中选择IS NULL,逻辑条件选择AND,接着设置第二个筛选条件,选择字段scorel.成绩,在条件下拉列表框中选择IS NULL。
⑥ 完成视图设计,将视图以new_view文件名保存在考生文件夹下。
(2)具体步骤如下:
① 在“命令”窗口输入命令:CREATE FORM myform3,进入“表单设计器”。
② 在表单设计器中放置一个表格控件,并将表格控件的Name属性值改为grdCourse。
③ 右击表单空白处,选择“数据环境”快捷菜单命令。
④ 弹出“添加表或视图”对话框,选择score数据库下的course表,添加到数据环境中。
⑤ 在表单设计器中对grdCourse表格控件的RecordSourceType和RecordSource属性分别设为0-表和course。
⑥ 保存表单在考生文件夹下。
【试题解析】
本试题(1)小题考查了视图的建立,要注意的是在定义视图之前,应该首先打开相应的数据库文件,因为视图文件保存在数据库中,在磁盘上找不到该文件;(2)小题中,表格数据源类型规定为表,在设计表单的同时,应该将相应的数据表文件添加到表单的数据环境中。
3.综合应用题
设计名为mysupply的表单(表单的控件名和文件名均为mysupply)。表单的标题为“零件供应情况”。表单中有一个表格控件、两个命令按钮“查询”(名称为Command1)和“退出”(名称为Command2)。
运行表单时,单击“查询”命令按钮后,表格控件(名称grid1)中显示了工程号J4所使用零件的零件名、颜色和重量。
单击“退出”按钮关闭表单。
【参考答案】
具体步骤如下:
① 在“命令”窗口输入命令:CREATE FORM mysupply。
② 进入表单设计器,通过“常用工具栏”向表单添加一个表格和两个命令按钮。
③ 选中表单(Form1),在属性面板中修改Name的属性值为mysupply,Caption的属性值为“零件供应情况”。
④ 在属性面板顶端的下拉列表框中选择Commandl选项,修改该命令按钮控件的Caption属性值为“查询”。
⑤ 以同样的方法将第二个命令按钮的Caption属性值改为“退出”。
⑥ 双击命令按钮Command1(查询),编写该控件的Click事件,程序代码如下:
****“查询”命令按钮的Click事件代码****
SELECT零件.零件名,零件.颜色,零件.重量;
FROM供应零件!零件INNER JOIN供应零件!供应;
ON零件.零件号=供应.零件号;
WHERE供应.工程号="J4";
INTO CURSOR temp
ThisForm.Grid1.RecordSourceType=1
ThisForm.Grid1.RecordSource="temp"
************************************
⑦ 以同样的方法为“退出”命令按钮编写Click事件代码:
****“退出”命令按钮的Click事件代码****
ThisForm.Release
************************************
⑧ 保存表单完成设计。
【试题解析】
本试题考查的是表单设计,在设计控件属性中,不要将控件的标题(Caption)和名称(Name)属性弄混淆了,名称属性是该控件的一个内部名称,而标题属性是用来显示的一个标签名称。程序部分属于SQL的简单联接查询,在显示查询结果时,首先可用一个临时表保存查询结果,然后将表格控件中,用于显示数据的属性值设置为该临时表,以显示查询结果。