2010 年 3 月全国计算机等级考试二级笔试试卷
Access 数据库程序设计参考答案及详解
一、选择题(每小题 2 分,共 70 分)
(1)A) 【解析】本题主要考查的知识点为查找技术。顺序查找的使用情况:①线性表为无序表;②表 采用链式存储结构。二分法查找只适用于顺序存储的有序表,并不适用于线性链表。
(2)D) 【解析】算法的时间复杂度,是指执行算法所需要的计算工作量。算法的工作量可以用算法在 执行过程中所需基本运算的执行次数来度量。
(3)B) 【解析】软件根据应用目标的不同,是多种多样的。软件按功能可以分为:应用软件、系统软 件、支撑软件(或工具软件)。应用软件是为解决特定领域的应用而开发的软件。系统软件是计算机管理自身 资源,提高计算机使用效率并为计算机用户提供各种服务的软件。支撑软件是介于系统软件和应用软件之间, 协助用户开发软件的工具性软件,包括辅助和支持开发和维护应用软件的工具软件,还包括辅助管理人员控制 开发进程和项目管理的工具软件。
(4)A) 【解析】在对程序进行了成功的测试之后将进入程序调试(通常称 Debug,即排错)。程序调 试的任务是诊断和改正程序中的错误。它与软件测试不同,软件测试是尽可能多地发现软件中的错误。先要发 现软件的错误,然后借助于一定的调试工具去执行并找出错误的具体位置。软件测试贯穿整个软件生命期,调 试主要在开发阶段。
(5)C) 【解析】本题考查数据流程图 DFD 的概念。对于面向数据流的结构化分析方法,按照 DeMarco 的定义,“结构化分析就是使用数据流图(DFD)、数据字典(DD)、结构化英语、判定表和判定树等工具,来 建立一种新的、称为结构化规格说明的目标文档”。结构化分析方法的实质是着眼于数据流,自顶向下,逐层 分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。数据流图(DFD——Data Flow Diagram)是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统的功能建模。 数据流图从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。由此可得数据流程图是结构 化方法的需求分析工具。
(6)B) 【解析】本题考查软件生命周期的相关概念。通常,将软件产品从提出、实现、使用维护到停 止使用退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的 整个时期都属于软件生命周期。一般包括可行性研究与需求分析、设计、实现、测试、交付使用以及维护等活 动。还可以将软件生命周期分为软件定义、软件开发及软件运行维护三个阶段。
(7)A) 【解析】数据库管理系统一般提供相应的数据语言,它们分别是:数据定义语言,负责数据的 模式定义与数据的物理存取构建;数据操纵语言,负责数据的操纵,包括查询及增、删、改等操作;数据控制语 言,负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。
(8)D) 【解析】本题考查关系数据库中,数据单位的相关概念。文件是指存储在外部介质上的数据的 集合。数据库是存储在计算机存储设备上,结构化的相关数据集合。它不仅包括描述事物的数据本身,而且还 包括相关事物之间的联系。在数据库中,表的“行”称为“记录”,“列”称为“字段”。由此可得,题中存取一 个学生信息的数据单位为记录。
(9)C) 【解析】E-R 模型(实体联系模型)是将现实世界的要求转化成实体、联系、属性等几个基本 概念,以及它们间的两种基本联接关系,并且可用一种图非常直观地表示出来。它属于数据库设计的概念设计 阶段。
(10)A) 【解析】由关系 R 和 T 所包含的元素可知,关系 R 经过选择操作就可以得到关系 T。 (11)D) 【解析】在关系数据库中,数据表既相互独立又相互联系。
(12)C) 【解析】在输入数据时,如果希望输入的格式标准保持一致,或希望检查输入时的错误,可以 使用 Access 提供“输入掩码向导”来设置一个输入掩码。有效性规则可以防止非法数据输入到表中。有效性
2010 年 3 月笔试真卷及答案详解 第 9 页(共 12 页)
规则的形式以及设置目的随字段的数据类型不同而不同。字段名称只是对字段所起的名字起作用,对数据的输 入并不起到约束作用。Access 中常用的数据类型有文本、备注、数字、日期/时间、货币、自动编号、是/否、 OLE 对象、超级链接、查阅向导等,不同的数据类型决定了字段能包含哪类数据。
(13)C) 【解析】主键具有惟一性,索引可以加快对数据的查询速度,索引文件作为一个独立的文件进 行存储,文件中包含指向表记录的指针,建立索引后,表中记录的物理顺序不变。主键的惟一性可自动设置为 索引。
(14)C) 【解析】在输入数据时,如果希望输入的格式标准保持一致,或希望检查输入时的错误,可以 使用 Access 提供“输入掩码向导”来设置一个输入掩码。
输入掩码属性所使用字符的含义
字 符 0 9 # L ? A a & C
说
必须输入数字(0-9) 可以选择输入数据或空格 可以选择输入数据或空格 必须输入字母(A-Z) 可以选择输入字母(A-Z) 必须输入字母或数字 可以选择输入字母或数字 必须输入任何的字符或一个空格 可以选择输入任何的字符或一个空格
明
(15)A) 【解析】选项 A)隐藏:为了查看表中的主要数据,可以将某些字段列暂时隐藏起来,需要时 再将其显示出来。选项 B)删除:表中的信息如果出现了不需要的数据就应将其删除。选项 C)冻结:在通常 的操作中,常常需要建立比较大的数据库表,由于表过宽,在数据表视图中有些关键的字段值因为水平流动后 无法看到,影响了数据的查看。可以冻结某些字段,无论用户怎样水平滚动窗囗,冻结字段总是可见的。选项 D)筛选:从许多数据中挑选出满足某种条件的数据进行处理,经过筛选后的表,只显示满足条件的记录,而 不满足条件的记录将被隐藏起来。
(16)D) 【解析】通配符#表示通配任何单个数字字符。
(17)C) 【解析】文本框中的输入掩码属性设置其属性值为密码,可达到输入密码时显示“*”的效果。 (18)D) 【解析】where 按一定的条件进行查询,like 模糊匹配查询字段,通配符*表示一个或多个字符。 (19)B) 【解析】选择查询:根据指定的查询准则,从一个或多个表中获取数据并显示结果,也可以对 记录进行总计、计数、平均以及其他类型的计算,选择查询结果是一组数据记录,即动态集。参数查询是一种 利用对话框来提示用户输入准则的查询,这种查询可以根据用户输入的准则来。操作查询包括生成表查询、追 加查询、删除查询和更新查询。SQL 查询是直接运用 SQL 语句执行查询任务的一种查询。
(20)D) 【解析】在 SQL 查询中,Group By 用来分组,Order By 用来排序。
(21)A) 【解析】在调试 VBA 程序时,通过语法分析能自动检查语法是否错误,而不能检查逻辑错误。
(22)C) 【解析】选项 A)、B)不是宏命令;alue 设置字段控件属性值;twarings 通知或警告命令,用于 关闭或打开系统消息。
(23)D) 【解析】SQL 语句是将雇员表中的所有数据查询出来,并显示在 subT 窗体上。
(24)D) 【解析】报表只能输出数据,不能输入数据,选项组控件为窗体输入数据使用,因此不适用在 报表中作为输出数据控件使用。
(25)B) 【解析】常用对象事件有“获得焦点”、“失去焦点”、“更新前”、“更新后”和“更改”等。 “更新前”事件是在控件或记录用更改了的数据更新之前发生的事件;此事件还可能在控件或记录失去焦点, 或单击“记录”菜单中的“保存记录”命令时发生;此事件也可能在新记录或已存在记录上发生。
(26)C) 【解析】PrintOut:打印打开的数据库中的活动对象,也可以打印数据表、窗体、报表、数据 访问页和模块。
OutputTo:可将 Access 数据库对象中的数据输出到 Excel、MS-DOS 文本文件或多信息文件格式及其他格 式的文件中。
2010 年 3 月笔试真卷及答案详解 第 10 页(共 12 页)
MsgBox:显示包含警告信息或其他信息的消息框。
(27)D) 【解析】Nz 函数可以将 Null 值转换为 0、空字符串(\)的指定值。Dlookup 函数是从指定记 录集里检索特定字段的值。
(28)B) 【解析】Int(<数值表达式>)函数为取整函数,返回数值表达式的整数部分。
(29)A) 【解析】Dim 数组名([下标下限 to] 下标上限)缺省情况下,下标下限为 0,元素个数=(下 标上限-下标上限+1);如果 to 选项可以安排非 0 下限,使用逗号间隔可定义多维数组。由于本题中声明了数组 下标下限从 1 开始,因此,数组 A(2 to 5,5)的元素个数=(5-2+1)*5=4*5=20。
(30)A) 【解析】循环变量 I 从 1 到 9 按递减顺序,由于 1-3=-2 不满足条件,所以一次也不执行。 (31)A) 【解析】外循环每次循环都将 x 重置为 0,所以只看外循环的最后一次即 i=20 时,此时内循环 j=i=20 开始以步长为 2 开始递增,递增一次执行 x=x+1=0+1=1 后便结束循环,所以最后文本框显示的结果为 1。
(32)D) 【解析】分析 if 语句,当计算表达式(y mod 10)+int(y/10)等于 10 时,立即窗囗显示输入 的数字。当输入第一个数字 10 时,(y mod 10)+int(y/10)=0+1=1 不等于 10,不显示;当输入第二个数字 37 时,(y mod 10)+int(y/10)=7+3=10,显示数字 37,依次类推,结果为选项 D)。
(33)A) 【解析】在 VBA 的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声 明时形参用 ByVal 声明,说明此参数为传值调用,此时形参的变化不会返回到实参;若用 ByRef 声明,说明此 参数为传址调用,此时形参的变化将会返回到实参;没有说明传递类型,则默认为传址传递。因此调用函数实 参 x 是传址方式传递,实参 y 为传值方式传递,调用函数后 x 值在函数中随形参改变,即 x=x mod 10 = 12 mod 10 = 2,而 y 不随之改变。
(34)B) 【解析】DateDiff 函数返回变量型(长型),指定两个指定的日期之间的时间间隔数。 语法:DateDiff(interval, date1, date2 [, firstdayofweek] [, firstweekofyear] )
(35)B) 【解析】在 SQL 语句中 UPDATE 可以更新数据表,格式 UPDATE 数据表名 SET 字段名=设 置结果。
二、填空题(每空 2 分,共 30 分)
(1)ABCDEF54321
【解析】在队列这种数据结构中,最先插入的元素将最先被删除,所以队列又称为“先进先出”的线性表。 在本题,根据队列先进先出特点,元素退队的顺序与进队顺序相同,即 A,B,C,D,E,F,5,4,3,2,1。
(2)15
【解析】本题考查队列个数的计算方法。因为循环队列个数 =循环队列的容量 -头指针 +尾指针,即 50-45+10=15。
(3)EDBGHFCA
【解析】对于二叉树的后序遍历,其规则是,首先遍历左子树,然后遍历右子树,最后访问根结点,并且
遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后访问根结点。依据此规则,对于题目给出的二 叉树,后序遍历的结果为 EDBGHFCA。
(4)程序
【解析】本题考查软件的概念。计算机软件是计算机系统中与硬件相互依存的另一部分,是包括程序、数 据及相关文档的完整集合。其中,程序是软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计 算机执行的指令(语句)序列。数据是使程序能正常操纵信息的数据结构。文档是与程序开发、维护和使用有 关的图文资料。可见软件由两部分组成:一是机器可执行的程序和数据;二是机器不可执行的,与软件开发、 运行、维护、使用等有关的文档。
(5)课号
【解析】本题考查关系模式的相关内容。因为两个关系模式的键分别是学号和课号。 (6)Label1.Caption = \性别\
【解析】由于修改的是选项组上的显示文本标签,即页面显示的文字是“Frame1”,这个文本标签控件名 为 Label1,所以修改的是文本标签的属性值,即 Label1.Caption = \性别\。
(7)GoToControl
2010 年 3 月笔试真卷及答案详解 第 11 页(共 12 页)
【解析】在 Access 中,宏命令一共有 53 个,其中把焦点移到特定字段或控件上的宏命令为 GoToControl。 (8)4
【解析】在使用向导创建数据访问页时,最多可设置 4 个分组字段进行排序。 (9)456aBc
【解析】在文本框输入的字符转换为整型,当在 97 到 122 之间时,将整型转换为字符再转换为大写字母 输出到立即窗囗中,当在 65 到 90 之间时,将整型转换为字符再转换为小写字母输出到立即窗囗中,当在 48 到 57 之间时,将整型转换为字符输出到立即窗囗中,否则立即窗囗不显示任何信息。因为数字 0~9 的 ASCII 码值在 48~57 之间,因此,当输入 456 时执行第 3 个条件,立即窗囗原样输出这个 3 个数字;当输入字符 A 时,将 A 转换整型为 ASCII 码的 65,再 lcase(chr(65))=a,立即窗囗输出 a;同理,当输入字符 b 时,将 b 转换 整型为 ASCII 码的 98,再 ucase(chr(98))=B,立即窗囗输出 B;同理,当输入字符 C 时,立即窗囗输出 c。
(10)201 【解析】k = k +p(i)*2 而 p(i) = a(i*i) a(i) = I * I 一步一步向前分析,先看第一个循环,a(1) = 1*1=1;a(2)
再 看 第 二 个 循 环 p(1) = a(1*1)=a(1) =1 ;
= 2*2=4 ; a(3)=3*3=9 ; 依 次 类 推 a(10)=10*10=100 ; k = 7+p(2)*2=7+16*2=39;k=39+p(3)*2=39+81*2=201。
(11)n mod 5 =1 and n mod 7=1
【解析】if…then 为条件语句,依题所示条件为被 5、7 除且余数为 1。 (12)false
k+1
【解析】此题外循环是从 100 循环到 200,而内循环则判断每个整数是否能被除 1 与自身外的整数整除, 如果能整除,则这个数不是素数,跳出内循环,继续判断下一个整数。变量 b 是一个布尔类型,取得的值只有 true 或 false,当内循环整数 I mod k 为 0 时即可以被整除,则应跳出循环,当 b=false 时使用内循环条件不成立 将跳出内循环;当内循环整数 I mod k 不为 0 时即不能被整除,则看下一个整数是否能被整除,所以 k = k+1。
(13)rs.eof rs.update
【解析】因要对每位职工的工资进行调整,因此循环语句的条件应为记录集末结束时循环遍历每条记录, 即 do while not rs.eof 循环结构遍历整个记录集直至末尾。当调整完工资后要更新记录,即 rs.update,再调整下 一位职工的工资。
p(2)=a(2*2)=a(4)=4*4=16;p(3)=a(3*3)=a(9)=9*9=81;最后看第三个循环,循环三次:k = 5+p(1)*2=5+1*2=7;
2010 年 3 月笔试真卷及答案详解 第 12 页(共 12 页)