2012年3月全国计算机等级考试二级笔试试卷
Access数据库程序设计
(考试时间90分钟,满分100分)
一、选择题(每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。 (1)下列叙述中正确的是
A) 循环队列是队列的一种链式存储结构 B) 循环队列是一种逻辑结构
C) 循环队列是非线性结构 D)循环队列是队列的一种顺序存储结构 (2)下列叙述中正确的是
A)栈是一种先进先出的线性表 B)队列是一种后进先出的线性表 C)栈与队列都是非线性结构 D)以上三种说法都不对
(3)一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为 A)4 B)10 C) 6 D)16
(4)下列模式中,能够给出数据库物理存储结构与物理存取方法的是 A)内模式 B)外模式 C)概念模式 D)逻辑模式 (5)在满足实体完整性结束的条件下 A)一个关系中必须有多个候选关键字 B)一个关系中只能有一个候选关键字 C)一个关系中应该有一个或多个候选关键字 D)一个关系中可以没有候选关键字 (6)有三个关系R、S和T如下:
R
a
S
T A B C a 1 2 b 2 1 c 3 1 则由关系R和S得到关系T的操作是
A)差 B)自然连接 C)交 D)并 (7)软件生命周期中的活动不包括
A)需求分析 B)市场调研 C)软件测试 D)软件维护 (8)下面不属于需求分析阶段任务的是
A)确定软件系统的功能需求 B)制定软件集成测试计划 C)确定软件系统的性能需求 D)需求规格说明书评审 (9)在黑盒测试方法中,设计测试用例的主要根据是 A)程序内部逻辑 B)程序流程图 C)程序数据结构 D)程序外部功能 (10)在软件设计中不使用的工具是 A)数据流图(DFD图) B)PAD图 C)系统结构图 D)程序流程图 (11)在Access数据库中,用来表示实体的是
A B C 1 2
d 2 1 A B C b 2 1 c 3 1
A)表 B)记录 C)字段 D)域
(12)在学生表中要查找年龄大于18岁的男学生,所进行的操作属于关系运算中的 A)投影 B)选择 C)联接 D)自然联接
(13)假设学生表已有年级、专业、学号、姓名、性别和生日6个属性,其中可以作为主关键字的是 A)姓名 B)学号 C)专业 D)年级 (14)下列关于索引的叙述中,错误的是 A)可以为所有的数据类型建立索引 B)可以提高对表中记录的查询速度 C)可以加快对表中记录的排序速度 D)可以基于单个字段或多个字段建立索引
(15)若查找某个字段中以字母A开头且以字母Z结尾的所有记录,则条件表达式应设置为 A)Like “A$Z” B)Like “A#Z” C)Like “A*Z” D)Like “A?Z”
(16)在学生表中建立查询,“姓名”字段的查询条件设置为“Is Null”,运行该查询后,显示的记录是 A)姓名字段为空的记录 B)姓名字段中包含空格的记录 C)姓名字段不为空的记录 D)姓名字段中不包含空格的记录
(17)若要在一对多的关联关系中,“一方”原始记录更改后,“多方”自动更改,应启用 A)有效性规则 B)级联删除相关记录 C)完整性规则 D)级联更新相关记录 (18)教师表的“选择查询”设计视图如下,则查询结果是
A)显示教师的职称、姓名和同名教师的人数 B)显示教师的职称、姓名和同样职称的人数 C)按职称的顺序分组显示教师的姓名 D)按职称统计各类职称的教师人数
(19)在教师表中“职称”字段可能的取值为:教授、副教授、讲师和助教,要查找职称为教授或副教授的教师,错误的语句是
A)SELECT * FROM 教师表 WHERE ( InStr([职称], “教授”) <> 0); B)SELECT * FROM 教师表 WHERE ( Right([职称], 2) = “教授” ); C)SELECT * FROM 教师表 WHERE ([职称] = “教授” );
D)SELECT * FROM 教师表 WHERE ( InStr([职称], “教授”) = 1 Or InStr([职称], “教授”) = 2 );
(20)在窗体中为了更新数据表中的字段,要选择相关的控件,正确的控件选择是 A)只能选择绑定型控件 B)只能选择计算型控件
C)可以选择绑定型或计算型控件 D)可以选择绑定型、非绑定型或计算型控件
(21)已知教师表“学历”字段的值只可能是四项(博士、硕士、本科或其他)之一,为了方便输入数据,设计窗体时,学历对应的控件应该选择
A)标签 B)文本框 C)复选框 D)组合框
(22)在报表设计的工具栏中,用于修饰版面以达到更好显示效果的控件是 A)直线和多边形 B)直线和矩形 C)直线和圆形 D)矩形和圆形
(23)要在报表中输出时间,设计报表时要添加一个控件,且需要将该控件的“控件来源”属性设置为时间表达式,最合适的控件是
A)标签 B)文本框 C)列表框 D)组合框
(24)用SQL语句将STUDENT表中字段“年龄”的值加1,可以使用的命令是 A)REPLACE STUDENT 年龄 = 年龄 + 1 B)REPLACE STUDENT 年龄 WITH 年龄 + 1 C)UPDATE STUDENT SET 年龄 = 年龄 + 1 D)UPDATE STUDENT 年龄 WITH 年龄 + 1 (25)已知学生表如下:
学号 姓名 年龄 性别 18 19 20 19 男 男 男 女 班级 计算机一班 计算机一班 计算机一班 计算机二班 20120001 张三 20120002 李四 20120003 王五 20120004 刘七 执行下列命令后,得到的记录数是
SELECT 班级,MAX(年龄) FROM 学生表 GROUP BY 班级 A)4 B)3 C)2 D)1 (26)数据库中可以被另存为数据访问页的对象
A)窗体 B)报表 C)表和查询 D)以上均可
(27)在宏设计窗口中有“宏名”、“条件”、“操作”和“备注”等列,其中不能省略的是 A)宏名 B)操作 C)条件 D)备注 (28)宏操作不能处理的是
A)打开报表 B)对错误进行处理 C)显示提示信息 D)打开和关闭窗体 (29)下列关于VBA事件的叙述中,正确的是 A)触发相同的事件可以执行不同的事件过程 B)每个对象的事件都是不相同的 C)事件都是由用户操作触发的 D)事件可以由程序员定义
(30)下列不属于类模块对象基本特征的是
A)事件 B)属性 C)方法 D)函数 (31)用来测试当前读写位置是否达到文件末尾的函数是 A)EOF B)FileLen C)Len D)LOF
(32)下列表达式中,能够保留变量x整数部分并进行四舍五入的是 A)Fix(x) B)Rnd(x) C)Round(x) D)Int(x)
(33)运行下列过程,当输入一组数据:10,20,50,80,40,30,90,100,60,70,输出的结果应该
是 Sub p1( )
Dim i, j, arr(11) As Integer k = 1 while k <= 10
arr(k) = Val(InputBox(“请输入第” & k & “个数:”, “输入窗口” )) k = k + 1
Wend For i = 1 To 9 j = i + 1
If arr(i ) > arr(j) Then temp = arr(i) arr(i) = arr(j) arr(j) = temp End If
Debug.Print arr(i) Next i End Sub
A)无序数列 B)升序数列 C)降序数列 D)原输入数列
(34)下列程序的功能是计算N = 2+(2+4)+(2+4+6)+……+(2+4+6+……+40)的值。 Private Sub Command34_Click( ) t = 0 m = 0 sum = 0 Do
t = t+m sum = sum + t m = Loop while m < 41 MsgBox “Sum = “ & sum End Sub
空白处应该填写的语句是
A)t + 2 B)t + 1 C)m + 2 D)m + 1 (35)利用ADO访问数据库的步骤是: ①定义和创建ADO实例变量 ②设置连接参数并打开连接 ③设置命令参数并执行命令 ④设置查询参数并打开记录集 ⑤操作记录集
⑥关闭、回收有关对象 这些步骤的执行顺序应该是
A)①④③②⑤⑥ B)①③④②⑤⑥ C)①③④⑤②⑥ D)①②③④⑤⑥
二、填空题(每空2分,共30分)
请将每空的正确答案写在答题卡[1]~[15]序号的横线上,答在试卷上不得分。
(1)在长度为n的顺序存储的线性表中删除一个元素,最坏情况下需要移动表中的元素个数为 [1] n-1 。 (2)设循环队列的存储空间为Q(1:30),初始状态为front = rear = 30。现经过一系列入队与退队运算后,front = 16, rear = 15, 则循环队列中有 [2] 29 个元素。
(3)数据库管理系统提供的数据语言中,负责数据的增、删、改和查询的是 [3] 数据操纵语言 。 (4)在将E-R图转换到关系模式时,实体和联系都可以表示成 [4]关系 。
(5)常见的软件工程方法有结构化方法和面向对象方法,类、继承以及多态性等概念属于 [5]面向对象方法。 (6)Access的查询分为5种类型,分别是选择查询、参数查询、操作查询、SQL查询和 [6]交叉表 查询。 (7)如果要求用户输入的值是一个3位的整数,那么其有效性规则表达式可以设置为 [7] between 100
and 999 。
(8)在工资表中有姓名和工资等字段,若要求查询结果按照工资降序排列,可使用的SQL语句是:SELECT 姓名,工资FROM 工资表 ORDER BY 工资 [8] DESC 。
(9)在宏中引用窗体控件的命令格式是 [9] forms![窗体名]![控件名] 。
(10)已知:Dim rs As new ADODB.RecordSet, 在程序中为了得到记录集的下一条记录,应该使用的方法是rs. [10] movenext 。
(11)在VBA中,没有显式声明或使用符号来定义的变量,其数据类型默认是 [11] ariant 或 变体型 。 (12)下列程序的功能是:输入10个整数,逆序后输出,请在程序空白处填入适当语句使程序完成指定的功能。
Private Sub Command2_Click( ) Dim i, j, k, temp, arr(11) As Integer Dim result As String For k = 1 To 10
arr(k) = Val(InputBox(“请输入第” &k&“个数:”, “数据输入窗口”)) Next k i = 1 j = 10 Do
temp = arr(i) arr(i) = arr(j) arr(j) = temp i = i + 1
j = [12] j-1 Loop While [13] result = “” For k = 1 To 10
result = result & arr(k)&Chr(13) Next k MsgBox result End Sub
(13)已经设计出一个表格式窗体,可以输出教师表的相关字段信息,请按照以下功能要求补充设计:改变当前记录,消息框弹出提示“是否删除该记录?”,单击“是”,则直接删除该当前记录;单击“否”,则什么都不做,其效果图如下:
i