资源描述
2023年3月全国计算机等级考试二级Access数据库程序设计笔试真题
一、选择题(本大题共35小题,每小题2分,共70分) 在每小题列出的四个备选项中只有一个是符合题目规定的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1. 下列关于栈叙述对的的是
A. 栈顶元素最先能被删除
B. 栈顶元素最后才干被删除
C. 栈底元素永远不能被删除
D. 上述三种说法都不对
答案:A
解析:在栈中,允许插入与删除的一端称为栈顶,而不允许插入与删除的另一端称为栈底。栈顶元素总是最后被插入的元素,从而也是最先能被删除的元素;栈底元素总是最先被插入的元素,从而也是最后才干被删除的元素。故本题选A。
2. 下列叙述中对的的是
A. 有一个以上根结点的数据结构不一定是非线性结构
B. 只有一个根结点的数据结构不一定是线性结构
C. 循环链表是非线性结构
D. 双向链表是非线性结构
答案:B
解析:假如一个非空的数据结构满足以下两个条件:(1)有且只有一个根结点;(2)每个结点最多有一个前件,也最多有一个后件。则称该数据结构为线性结构。假如一个数据结构不是线性结构,则称之为非线性结构,故A项错误。有一个根结点的数据结构不一定是线性结构,如二叉树,B项说法对的。循环链表和双向链表都属于线性链表,故C、D项错误。
3. 某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)
A. 3
B. 4
C. 6
D. 7
答案:D
解析:根据二叉树的性质:在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。所以n2=0,由n=n0+n1+n2可得n1=6,即该二叉树有6个度为1的结点,可推出该二叉树的深度为7。
4. 在软件开发中,需求分析阶段产生的重要文档是
A. 软件集成测试计划
B. 软件具体设计说明书
C. 用户手册
D. 软件需求规格说明书
答案:D
解析:软件需求规格说明书是需求分析阶段的最后成果,是软件开发中的重要文档之一。
5. 结构化程序所规定的基本结构不涉及
A. 顺序结构
B. GOTO跳转
C. 选择(分支)结构
D. 反复(循环)结构
答案:B
解析:结构化程序设计的三种基本控制结构为:顺序结构、选择结构和反复结构。
6. 下面描述中错误的是
A. 系统总体结构图支持软件系统的具体设计
B. 软件设计是将软件需求转换为软件表达的过程
C. 数据结构与数据库设计是软件设计的任务之一
D. PAD图是软件具体设计的表达工具
答案:A
7. 负责数据库中查询操作的数据库语言是
A. 数据定义语言
B. 数据管理语言
C. 数据操纵语言
D. 数据控制语言
答案:C
解析:数据操纵语言负责数据的操纵,涉及查询及增、删、改等操作。
8. 一个教师可讲授多门课程,一门课程可由多个教师讲授。则实体教师和课程间的联系是
A. 1∶1联系
B. 1∶m联系
C. m∶1联系
D. m∶n联系
答案:D
9. 有三个关系R、S和T如下:
A. 自然连接
B. 交
C. 除
D. 并
答案:C
10. 定义无符号整数类为UInt,下面可以作为类UInt实例化值的是
A. -369
B. 369
C. 0.369
D. 整数集合{1,2,3,4,5}
答案:B
解析:A项为有符号型,C项为实型常量,D项为整数集合,只有B项符合,故本题选B。
11. 在学生表中要查找所有年龄大于30岁姓王的男同学,应当采用的关系运算是
A. 选择
B. 投影
C. 联接
D. 自然联接
答案:A
解析:从关系中找出满足给定条件的元组的操作称为选择。
12. 下列可以建立索引的数据类型是
A. 文本
B. 超级链接
C. 备注
D. OLE对象
答案:A
解析:备注、超级链接和OLE对象数据类型不能建立索引。
13. 下列关于字段属性的叙述中,对的的是
A. 可对任意类型的字段设立"默认值"属性
B. 定义字段默认值的含义是该字段值不允许为空
C. 只有"文本"型数据可以使用"输入掩码向导"
D. "有效性规则"属性只允许定义一个条件表达式
答案:D
解析:不可以对“自动编号”和“OLE对象”类型的字段设立“默认值”属性;定义字段默认值的含义是在生成新记录时,自动将默认值插入到相应的字段中,从而减少数据输入量;输入掩码只为“文本”型和“日期/时间”型字段提供向导,其他数据类型没有向导帮助。
14. 查询"书名"字段中包含"等级考试"字样的记录,应当使用的条件是
A. Like "等级考试"
B. Like "*等级考试"
C. Like "等级考试*"
D. Like "*等级考试*"
答案:D
解析:选项A表达查询书名是“等级考试”的记录;选项B表达查询书名以“等级考试”结尾的记录;选项C表达查询书名以“等级考试”开头的记录。
15. 在Access中对表进行"筛选"操作的结果是
A. 从数据中挑选出满足条件的记录
B. 从数据中挑选出满足条件的记录并生成一个新表
C. 从数据中挑选出满足条件的记录并输出到一个报表中
D. 从数据中挑选出满足条件的记录并显示在一个窗体中
答案:A
16. 在学生表中使用"照片"字段存放相片,当使用向导为该表创建窗体时,照片字段使用的默认控件是
A. 图形
B. 图像
C. 绑定对象框
D. 未绑定对象框
答案:C
解析:绑定对象框用于在窗体或报表上显示OLE对象,该控件针对的是保存在窗体或报表基础记录源字段中的对象。
17. 下列表达式计算结果为日期类型的是
A. #2023123#-#202323#
B. year(#202323#)
C. DateValue("202323")
D. Len("202323")
答案:C
解析: A选项中表达式计算结果为数字类型,B选项中表达式计算结果为数字类型,D选项中表达式计算结果为数字类型。
18. 若要将"产品"表中所有供货商是"ABC"的产品单价下调50,则对的的SQL语句是
A. UPDATE产品SET单价=50 WHERE供货商="ABC"
B. UPDATE产品SET单价=单价-50 WHERE供货商="ABC"
C. UPDATE FROM产品SET单价=50 WHERE供货商="ABC"
D. UPDATE FROM产品SET单价=单价-50 WHERE供货商="ABC"
答案:B
解析:UPDATE语句的格式为:
UPDATE <表名>
SET <字段名1>=<表达式1> [,<字段名2>=<表达式2>]…
[WHERE <条件>];
19. 若查询的设计如下,则查询的功能是
A. 设计尚未完毕,无法进行记录
B. 记录班级信息仅含Null(空)值的记录个数
C. 记录班级信息不涉及Null(空)值的记录个数
D. 记录班级信息涉及Null(空)值所有记录个数
答案:C
解析:“计数”总计项的功能是求某字段中非空值数。
20. 在教师信息输入窗体中,为职称字段提供"专家"、"副专家"、"讲师"等选项供用户直接选择,应使用的控件是
A. 标签
B. 复选框
C. 文本框
D. 组合框
答案:D
解析:假如在窗体上输入的数据总是取自某一个表或查询中记录的数据,或者取自某固定内容的数据,可以使用组合框或列表框控件来完毕。使用组合框,既可以进行选择,也可以输入数据。
21. 在报表中要显示格式为"共N页,第N页"的页码,对的的页码格式设立是
A. ="共"+Pages+"页,第"+Page+"页"
B. ="共"+[Pages]+"页,第"+[Page]+"页"
C. ="共"&Pages&"页,第"&Page&"页"
D. ="共"&[Pages]&"页,第"&[Page]&"页"
答案:D
22. 某窗体上有一个命令按钮,规定单击该按钮后调用宏打开应用程序Word,则设计该宏时应选择的宏命令是
A. RunApp
B. RunCode
C. RunMacro
D. RunCommand
答案:A
解析:宏操作RunApp的功能是打开指定的外部应用程序。
23. 下列表达式中,能对的表达条件"x和y都是奇数"的是
A. x Mod 2=0 And y Mod 2=0
B. x Mod 2=0 Or y Mod 2=0
C. x Mod 2=1 And y Mod 2=1
D. x Mod 2=1 Or y Mod 2=1
答案:C
解析:假如某数是奇数,则该数对2进行求余运算的结果是1。
24. 若在窗体设计过程中,命令按钮Command0的事件属性设立如下图所示,则含义是
A. 只能为"进入"事件和"单击"事件编写事件过程
B. 不能为"进入"事件和"单击"事件编写事件过程
C. "进入"事件和"单击"事件执行的是同一事件过程
D. 已经为"进入"事件和"单击"事件编写了事件过程
答案:D
25. 若窗体Frm1中有一个命令按钮Cmd1,则窗体和命令按钮的Click事件过程名分别为
A. Form_Click() Command1_Click()
B. Frm1_Click() Commamd1_Click()
C. Form_Click() Cmd1_Click()
D. Frm1_Click() Cmd1_Click()
答案:C
26. 在VBA中,能自动检查出来的错误是
A. 语法错误
B. 逻辑错误
C. 运营错误
D. 注释错误
答案:A
27. 下列给出的选项中,非法的变量名是
A. Sum
B. Integer_2
C. Rem
D. Form1
答案:C
解析:变量命名不能包具有空格或除了下划线字符(_)外的任何其他的标点符号,其长度不得超过255个字符。此外,变量命名不能使用VBA的关键字。
28. 假如在被调用的过程中改变了形参变量的值,但又不影响实参变量自身,这种参数传递方式称为
A. 按值传递
B. 按地址传递
C. ByRef传递
D. 按形参传递
答案:A
解析:过程定义时,假如形式参数被说明为传值(ByVal项),则过程调用只是相应位置实参的值“单向”传送给形参解决,而被调用过程内部对形参的任何操作引起的形参值的变化均不会反馈、影响实参的值。
29. 表达式"B=INT(A+0.5)"的功能是
A. 将变量A保存小数点后1位
B. 将变量A四舍五入取整
C. 将变量A保存小数点后5位
D. 舍去变量A的小数部分
答案:B
30. VBA语句"Dim NewArray(10) as Integer"的含义是
A. 定义10个整型数构成的数组NewArray
B. 定义11个整型数构成的数组NewArray
C. 定义1个值为整型数的变量NewArray(10)
D. 定义1个值为10的变量NewArray
答案:B
解析:数组的定义格式为:Dim 数组名([下标下限 to] 下标上限),缺省情况下,下标下限为0,数组元素从“数组名(0)”至“数组名(下标上限)”。
31. 运营下列程序段,结果是
For m=10 to 1 step 0
k=k+3
Next m
A. 形成死循环
B. 循环体不执行即结束循环
C. 出现语法错误
D. 循环体执行一次后结束循环
答案:B
解析:在For-Next语句中,当步长=0时,假如循环变量值<=终值,死循环;假如循环变量值>终值,一次也不执行循环。
32. 运营下列程序,结果是
Private Sub Command32_Click()
f0=1:f1=1:k=1
Do While k<=5
f=f0+f1
f0=f1
f1=f
k=k+1
Loop
MsgBox "f="&f
End Sub
A. f=5
B. f=7
C. f=8
D. f=13
答案:D
解析:当k=1时,f=2,f0=1,f1=2;当k=2时,f=3,f0=2,f1=3;当k=3时
,f=5,f0=3,f1=5;当k=4时,f=8,f=5,f1=8;当k=5时,f=13,f0=8,f1=13。
33. 有如下事件限度,运营该程序后输出结果是
Private Sub Command33_Click()
Dim x As Integer,y As Integer
x=1:y=0
Do Until y<=25
y=y+x*x
x=x+1
Loop
MsgBox "x=" & x & ",y=" & y
End Sub
A. x=1,y=0
B. x=4,y=25
C. x=5,y=30
D. 输出其他结果
答案:A
解析:Do Until-Loop结构是条件式值为假时,反复执行循环,直至条件式值为真,结束循环。
34. 下列程序的功能是计算sum=1+(1+3)+(1+3+5)+……+(1+3+5+……+39)
Private Sub Command34_Click()
t=0
m=1
sum=0
Do
t=t+m
sum=sum+t
m=_____
Loop While m<=39
MsgBox "Sum" & sum
End Sub
为保证程序对的完毕上述功能,空白处应填入的语句是
A. m+1
B. m+2
C. t+1
D. t+2
答案:B
35. 下列程序的功能是返回当前窗体的记录集
Sub GetRecNum()
Dim rs As Object
Set rs=______
MsgBox rs.RecordCount
End Sub
为保证程序输出记录集(窗体记录源)的记录数,空白处应填入的语句是
A. Recordset
B. Me.Recordset
C. RecordSource
D. Me.RecordSource
答案:B
二、填空题(本大题共15小题,每小题2分,共30分)请在每小题的空格上填上对的的
答案。错填、不填均无分。
1. 有序线性表能进行二分查找的前提是该线性表必须是【1_______】存储的。
答案:【1】顺序【解析】二分查找只合用于顺序存储的有序线性表。
2. 一棵二叉树的中序遍历结果为DBEAFC,前序遍历结果为ABDECF,则后序遍历结果为【
2_______】。
答案:【2】DEBFCA
3. 对软件设计的最小单位(模块或程序单元)进行的测试通常称为【3_______】测试。
答案:【3】单元【解析】单元测试是对软件设计的最小单位——模块(程序单元)进行对的性检查的测试。单元测试的目的是发现各模块内部也许存在的各种错误。
4. 实体完整性约束规定关系数据库中元组的【4_______】属性值不能为空。
答案:【4】主键【解析】实体完整性约束规定关系的主键中属性值不能为空值,由于主键是惟一决定元组的,如为空值则其惟一性就成为不也许的了。
5. 在关系A(S,SN,D)和关系B(D,CN,NM)中,A的主关键字是S,B的主关键字是D,则称【5_______】是关系A的外码。
答案:【5】D【解析】假如表A中的某属性集是某表B的键,则称该属性集为A的外键或外码。
6. 在Access查询的条件表达式中要表达任意单个字符,应使用通配符【6_______】。
答案:【6】?【解析】 通配符“?”通配任何单个字符。
7. 在SELECT语句中,HAVING子句必须与【7_______】子句一起使用。
答案:【7】GROUP BY【解析】HAVING必须跟随GROUP BY使用,它用来限定分组必须满足的条件。
8. 若要在宏中打开某个数据表,应使用的宏命令是【8_______】。
答案:【8】OpenTable【解析】宏操作OpenTable的功能是打开指定的表。
9. 在VBA中要将数值表达式的值转换为字符串,应使用函数【9_______】。
答案:【9】Str【解析】Str函数的功能是将数值表达式转换成字符串。
10. 运营下列程序,输入如下两行:
Hi,I am here.
弹出的窗体中的显示结果是【10_______】。
Private Sub Command11_Click()
Dim abc As String,sum As String
sum=""
Do
abc=InputBox("输入abc")
If Right(abc,1)="." Then Exit Do
sum=sum+abc
Loop
MsgBox sum
End Sub
答案:【10】Hi,
11. 运营下列程序,窗体中的显示结果是:x=【11_______】。
Option Compare Database
Dim x As Integer
Private Sub Form_Load()
x=3
End Sub
Private Sub Command11_Click()
Static a As Integer
Dim b As Integer
b=x^2
fun1 x,b
fun1 x,b
MsgBox "x="&x
End Sub
Sub fun1(ByRef y As Integer,ByVal z As Integer)
y=y+z
z=y-z
End Sub
答案:【11】21
12. “秒表”窗体中有两个按钮(“开始/停止”按钮bOK,“暂停/继续”按钮bPus);一个显示计时的标签lNum;窗体的“计时器间隔”设为100,计时精度为0.1秒。
规定:打开窗体如图1所示;第一次单击“开始/停止”按钮,从0开始滚动显示计时(见图
2);10秒时单击“暂停/继续”按钮,显示暂停(见图3),但计时还在继续;若20秒后再次单击“暂停/继续”按钮,计时会从30秒开始继续滚动显示;第二次单击“开始/停止”按钮,计时停止,显示最终时间(见图4)。若再次单击“开始/停止”按钮可重新从0开始计时。相关的事件程序如下。请在空白处填入适当的语句,使程序可以完毕指定的功能。
Option Compare Database
Dim flag,pause As Boolean
Private Sub bOK_Click()
flag=【12_______】
Me!bOK.Enabled=True
Me!bPus.Enabled=flag
End Sub
Private Sub bPus_Click()
pause=Not pause
Me!bOK.Enabled=Not Me!bOK.Enabled
End Sub
Private Sub Form_Open(Cancel As Integer)
flag=False
pause=False
Me!bOK.Enabled=True
Me!bPus.Enabled=False
End Sub
Private Sub Form_Timer()
Static count As Single
If flag=True Then
If pause=False Then
Me!lNum.Caption=Round(count,1)
End If
count=【13_______】
Else
count=0
End If
End Sub
答案:【12】Not flag
【13】count+0.1【解析】由于题目规定的计时精度为0.1秒,所以每次count变量的值加0.1。
13. 数据库中有“学生成绩表”,涉及“姓名”、“平时成绩”、“考试成绩”和“期末总评”等字段,现要根据“平时成绩”和“考试成绩”对学生进行“期末总评”。规定:“平时成绩”加“考试成绩”大于等于85分,则期末总评为“优”,“平时成绩”加“考试成绩”小于60分,则期末总评为“不及格”,其他情况期末总评为“合格”。
下面的程序按照上述规定计算每名学生的期末总评。请在空白处填入适当的语句,使程序可以完毕指定的功能。
Private Sub Command0_Click()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim pscj,kscj,qmzp As DAO.Field
Dim count As Integer
Set db=CurrentDb()
Set rs=d
B.OpenRecordset("学生成绩表")
Set pscj=rs.Fields("平时成绩")
Set kscj=rs.Fields("考试成绩")
Set qmzp=rs.Fields("期末总评")
count=0
Do While Not rs.EOF
【14_______】
If pscj+kscj>=85 Then
qmzp="优"
ElseIf pscj+kscj<60 Then
qmzp="不及格"
Else
qmzp="合格"
End If
rs.Update
count=count+1
【15_______】
Loop
rs.Close
d
B.Close
Set rs=Nothing
Set db=Nothing
MsgBox "学生人数:"&count
End Sub
答案:【14】rs.Edit【解析】表达设立为编辑状态。
展开阅读全文