[计算机类试卷]国家二级ACCESS机试选择题(模块与VBA编程基础)模拟试卷16及答案与解析.doc

上传人:proposalcash356 文档编号:496320 上传时间:2018-11-30 格式:DOC 页数:23 大小:85.50KB
下载 相关 举报
[计算机类试卷]国家二级ACCESS机试选择题(模块与VBA编程基础)模拟试卷16及答案与解析.doc_第1页
第1页 / 共23页
[计算机类试卷]国家二级ACCESS机试选择题(模块与VBA编程基础)模拟试卷16及答案与解析.doc_第2页
第2页 / 共23页
[计算机类试卷]国家二级ACCESS机试选择题(模块与VBA编程基础)模拟试卷16及答案与解析.doc_第3页
第3页 / 共23页
[计算机类试卷]国家二级ACCESS机试选择题(模块与VBA编程基础)模拟试卷16及答案与解析.doc_第4页
第4页 / 共23页
[计算机类试卷]国家二级ACCESS机试选择题(模块与VBA编程基础)模拟试卷16及答案与解析.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、国家二级 ACCESS机试选择题(模块与 VBA编程基础)模拟试卷 16及答案与解析 一、选择题 1 若有如下 sub过程: Sub sfun(x As Single, Y As Single) t=x: x=t y y=t Mod y End Sub 在窗体中添加一个命令按钮 command33,对应的事件过程如下: Private Sub Command33 Click() Dim aAs Single, b As Single a=5: b=4 sfun(a, b) MsgBox a&chr(10)+chr(13) b End Sub 打开窗体运行后,单击命令按钮,消息框中有两行输出,内

2、容分别为 ( A) 1和 1 ( B) 1 25和 1 ( C) 1 25和 4 ( D) 5和 4 2 运行下列程序,显示的结果是 Private Sub Command34_Click() i=0 Do i=i+1 Loop While isqr(I)Then Debug Print I; Next 1 End Sub ( A) 1 5 7 9 ( B) 4 6 8 ( C) 3 5 7 9 ( D) 2 3 5 7 4 运行下列过程,当输入一组数据: 10, 20, 50, 80, 40, 30, 90, 100, 60,70,输出的结果应该是 Sub p10 Dim ij, arr(1

3、 1)As Integer k=1 While karr(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)原输入数列 5 下列程序的功能是计算 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 m41 MsgBox“sum=”&sum

4、 End Sub 空白处应该填写的语句是 ( A) t+2 ( B) t+1 ( C) m+2 ( D) m+1 6 在窗体中有一个名为 Command1的命令按钮,事件代码如下: Private Sub Commandl Click() Dim m(10) For k=1 To 10 m(k)=1 1-k Next k x=6 MsgBox m(2+m(x) End Sub 打开窗体,单击命令按钮,消息框的输出结果是 ( A) 2 ( B) 3 ( C) 4 ( D) 5 7 在窗体中有一个名为 run34的命令按钮,事件代码如下: Private Sub run34 Click() f1=

5、1: f2=1 For n=3 To 7 f=f1+f2 : m f1=f2: f2=f Next n MsgBox f End Sub 打开窗体,单击命令按钮,消息框的输出结果是 ( A) 8 ( B) 13 ( C) 21 ( D)其他结果 8 假定有如下的 Sub过程: Sub sfun(x As Single, Y As Single) t=x: x=t y y=t Mod y End Sub 在窗体上添加一个命令按钮 (名为 Commandl),然后编写如下事件过程: Private Sub Command lClick() Dim a as single, b as single

6、a=5: b=4 sfun a,b MsgBox a&chr(10)+chr(13)&b End Sub 打开窗体运行后,单击命令按钮,消息框的两行输出内容分别为 ( A) 1和 1 ( B) 1 25和 1 ( C) 1 25和 4 ( D) 5和 4 9 Sub过程与 Function过程最根本的区别是 ( A) Sub过程的过程名不能返回值,而 Function过程能通过过程名返回值 ( B) Sub过程可以使用 Call语句或直接使用过程名调用,而 Function过程不可以 ( C)两种过程参数的传递方式不同 ( D) Function过程可以有参数, Sub过程不可以 10 在窗体

7、中添加一个名称为 Commandl的命令按钮,然后编写如下程序: Public x As Integer Private Sub Command l_Click() X=10 Call S1 Call s2 MsgBox x End Sub Private Sub S1() x=x+20 End Sub Private Sub s2() Dim x As Integer x=x+20 End Sub 窗体打开运行后,单击命令按钮,则消息框的输出结果为 ( A) 10 ( B) 30 ( C) 40 ( D) 50 11 在过程定义中有语句: Private Sub GetData(ByRef

8、f As Integer)其中 “ByRef”的含义是 ( A)传值调用 ( B)传址调用 ( C)形式参数 ( D)实际参数 12 若要在子过程 Procl调用后返回两个变量的结果,下列过程定义语句中有效的是 ( A) Sub Proc 1(n, m) ( B) Sub Procl(ByVal n, m) ( C) Sub Procl(n, BYVal m) ( D) Sub Procl(ByVal n, ByVal m) 13 在过程定义中有语句: Private Sub GetData(ByVal data As Integer)其中 “ByVal”的含义是 ( A)传值调用 ( B)传

9、址调用 ( C)形式参数 ( D)实际参数 14 要想在过程 Proc调用后返回形参 x和 Y的变化结果,下列定义语句中正确的是 ( A) Sub Proc(x as Integer, y as Integer) ( B) Sub Proc(ByVal z as Integer, y as Integer) ( C) Sub Proc(x as Integer, ByVal y as Integer) ( D) Sub Proc(ByVal z as Integer, ByVal y as Integer) 15 在 VBA中,下列关于过程的描述中正确的是 ( A)过程的定义可以嵌套,但过程的

10、调用不能嵌套 ( B)过程的定义不可以嵌套,但过程的调用可以嵌套 ( C)过程的定义和过程的调用均可以 嵌套 ( D)过程的定义和过程的调用均不能嵌套 16 在窗体上有一个命令按钮 Command1,编写事件代码如下: Private Sub CommandI_Click() Dim x As Integer,y As Integer x=12: y=32 Call Proc(x, y) End Sub Public Sub Proch As Integer,ByVal m As Integer n=n Mod 10 m=m Mod 10 End Sub 打开窗体运 行后,单击命令按钮,立即窗

11、口上输出的结果是 ( A) 2 32 ( B) 12 3 ( C) 2 2 ( D) 12 32 17 窗体中有命令按钮 Commandl,事件过程如下: Public Function f(x As Integer)As Integer Dim yAs Integer x=20: y=2 f=x*y End Function Private Sub Command l Click() Dim y As Integer Static x As Integer x=10: y=5 y=f(x) Debug Print x; y End Sub 运行程序,单击命令按钮,则立即窗口中显示的内容是 (

12、 A) 10 5 ( B) 10 40 ( C) 20 5 ( D) 20 40 18 如果在被调用的过程中改变了形参变量的值,但又不影响实参变量本身,这种参数传递方式称为 ( A)按值传递 ( B)按地址传递 ( C) ByRef传递 ( D)按形参传递 19 在代码中定义了一个子过程: Sub P(a, b) End sub 下列调用该过程的形式中 ,正确的是 ( A) P(10, 20) ( B) Call P ( C) Call P 10, 20 ( D) Call p(10, 20) 20 不属于 VBA提供的程序运行错误处理的语句结构是 ( A) On Error Then标号 (

13、 B) On Error Goto标号 ( C) On Error Resume Next ( D) On Error Goto 0 21 在调试 VBA程序时,能自动被查出来的错误是 ( A)语法错误 ( B)逻辑错误 ( C)运行错误 ( D)语法错误和逻辑错误 22 下列属于 通知或警告用户的命令是 ( A) PrintOut ( B) OutputTo ( C) MsgBox ( D) Set Warnings 23 在 VBA中,能自动检查出来的错误是 ( A)语法错误 ( B)逻辑错误 ( C)运行错误 ( D)注释错误 24 要显示当前过程中的所有变量及对象的取值,可以利用的调试

14、窗口是 ( A)监视窗口 ( B)调用堆栈 ( C)立即窗口 ( D)本地窗口 25 在代码调试时,使用 Debug Print语句显示指定变量结果的窗口是 ( A)立即窗口 ( B)监视窗口 ( C)本地窗口 ( D)属性窗口 26 现有一个已经建好的窗体,窗体中有一命令按钮,单击此按钮,将打开“tEmployee”表,如果采用 VBA代码完成,下面语句正确的是 ( A) docmd openform“tEmployee” ( B) docmd openview“tEmployee” ( C) docmd opentable“tEmployee” ( D) docmd openreport“

15、tEmployee” 27 在 VBA中,实现窗体打开操作的命令是 ( A) DoCmd OpenForm ( B) OpenForm ( C) Do OpenForm ( D) DoOpcn Form 28 在 VBA中要打开名为 “学生信息录入 ”的窗体,应使用的语句是 ( A) DoCmd openForm”学生信息录入 ” ( B) OpenForm“学生信息录入 ” ( C) DoCmd openWindow”学生信息录入 ” ( D) OpenWindow“学生信息录入 ” 29 下列过程的功能是:通过对象变量返回当前窗体的 Recordset属性记录集引用,消息框中输出记录集的记

16、录 (即窗体记录源 )个数。 Sub GetRecNum() Dim rsAs Object Set rs=Me Recordset MsgBox_ End Sub 程序空白处应填写的是 ( A) Count ( B) rs Count ( C) RecordCount ( D) rs RecordCount 30 下列程序段的功能是实现 “学生 ”表中 “年龄 ”字段值加 1 Dim Str As String Str=“_” Docmd RunSQL Str 空白处应填入的程序代码是 ( A)年龄 =年龄 +1 ( B) Update学生 Set年龄 =年龄 +1 ( C) Set年龄 =

17、年龄 +1 ( D) Edit学生 Set年龄 =年龄 +1 31 下列程序的功能是返回当前窗体的记录集 Sub GetRecNum0 Dim rsAs Object Set rS= MsgBox r8 RecordC0unt End Sub 为保证程序输出记录集 (窗体记录源 )的记录数,空白处应填入的语句是 ( A) Recordset ( B) Me Recordset ( C) RecordSource ( D) Me RecordSource 32 在 Access中, DA0的含义是 ( A)开放数据库互连应用编辑接口 ( B)数据库访问对象 ( C) Active数据对象 ( D

18、)数据库动态链接库 33 ADO的含义是 ( A)开放数据库互连应用编程接口 ( B)数据库访问对象 ( C)动态链接库 ( D) Active数据对象 34 利用 ADO访问数据库的步骤是: 定义和创建 ADO对象实例变量; 设置连续参数并打开连接; 设置命令参数并执行命令; 设置查询参数并打开记录集; 操作记录集; 关闭、回收有关对象。这些步骤的执行顺序应该是 ( A) ( B) ( C) ( D) 35 ADO对象模型包括 5个对象,分别是 Connection、 Command、 Field Error和 ( A) Database ( B) Workspace ( C) Record

19、Set ( D) DBEngine 36 DAO层次对象模型的项层对象是 ( A) DBEngine ( B) Workspace ( C) Database ( D) RecordSet 国家二级 ACCESS机试选择题(模块与 VBA编程基础)模拟试卷 16答案与解析 一、选择题 1 【正确答案】 B 【试题解析】 由题意可知 sfun函数实现求除数和求余数的功能,所以最终结果是 1 25和 1。 【知识模块】 模块与 VBA编程基础 2 【正确答案】 C 【试题解析】 依据题意可知,当执行完第 10次循环体后,此时 i的值为 10,while的条件为假,所以跳出循环,所以最终的结果为 1

20、0。 【知识模块】 模块与 VBA编程 基础 3 【正确答案】 D 【试题解析】 根据题意,两个 For执行的过程中,各变量的值如下所示:由上表可知,当 i为 2、 3、 5、 7时,在立即窗口中显示 i的值。 【知识模块】 模块与 VBA编程基础 4 【正确答案】 A 【试题解析】 本段代码段是一个单重循环,对于数组中的每一个元素,依次与后面的元素进行比较,较大的数放在前面。运行这个过程,返回序列为: 10、 20、50、 40、 30、 80、 90、 60、 70、 100,表明是一个无序序列。 【知识模块】 模块与 VBA编程基础 5 【正 确答案】 C 【试题解析】 m每次递增加 2

21、,得到的数值为 2、 4、 6等,在每次循环的开始,则 t的值为 2、 (2+4)、 (2+4+6)等, sum的值为 2, 2+(2+4), 2+(2+4)+(2+4+6)等符合要求。 【知识模块】 模块与 VBA编程基础 6 【正确答案】 C 【试题解析】 由题意可知, m(6)的值为 5, m(7)=4,所以 m(2+m(6)=m(7)=4。 【知识模块】 模块与 VBA编程基础 7 【正确答案】 B 【试题解析】 根据题意,执行的过程中,各变量的值如下所示 :【知识模块】 模块与 VBA编程基础 8 【正确答案】 B 【试题解析】 本题考查 V: BA中参数传递的知识。在 VBA的过程

22、调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时没有说明传递类型,则默认为传址传递,即形参的结果会传递给实参。本例就是传址传递,所以过程调用时 x=a,也就是 5: y=b,也就是 4。在过程内 x的值变为 5 4也就是1 25, y的值变为 5Mod4也就是 1。过程调用结束时 x和 y的值分别回送给 a和b,所以选项 B正确。 【知识模块】 模块与 VBA编程基础 9 【正确答案】 A 【试题解析】 本题考查函数过程和子过程的知识。函数过程和子过程都是过程,都可以使用 Call语句进行调用,都可以指定参数,并且都可以指定用传址还是传值的方式进行参数传递。它们除了定义的关键字

23、不同外的根本区别是:函数过程最终会通过过程名返回一个函数值,而子过程不会。 【知识模块】 模块与 VBA编程基础 10 【正确答案】 B 【试题解析】 本题考查变量作用域的知识。在整个程序中定义了一个全局变量x,在命令按钮的单击事件中对这个 x赋值为 10,然后依次调用 s1和 s2;在 sl中对 x自加了 20;在 s2中用 Dim定义了一个局部变量 x,按照局部覆盖全局的原则,在 s2中的操作都是基于局部变量 x而不是全局变量 x。故此最终的输出结果为 30。 【知识模块】 模块与 VBA编程基础 11 【正确答案】 B 【试题解析】 本题考查 VBA中参数传递的知识。在 VBA的过程调用

24、时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用 ByVal声明,说明此参数为传值调用;若用 ByRef声明,说明此参数为传址调用;没有说明传递类型,则默认为传址传递。即形参的结果会传递给实参。 【知识模块】 模块与 VBA编程基础 12 【正确答案】 A 【试题解析】 本题考查 VBA中参数传递的知识。在 VBA的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用 ByVal声明,说明此参数为传值调用,此时形参的变化不会返回到实参;若用 ByRef声明,说明此参数为传址调用,此时形参的变化将会返回到实参;没有说明传递类型,则默认为传址传递。 【知识模

25、块】 模块与 VBA编程基础 13 【正确答案】 A 【试题解析】 参数有两种传递方式:传址传递和传值传递。 如果在过程声明时形参用 ByVal声明,说明此参数为传值调用,此时形参的变化不会返回到实参;若用 ByRef声明,说明此参数为传址调用,此时形参的变化将会返回到实参;没有说明传递类型,则默认为传址传递。 【知识模块】 模块与 VBA编程基础 14 【正确答案】 A 【试题解析】 本题考查 V BA中参数传递的知识。在 VBA的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用 ByVal声明,说明此参数为传值调用;若用: ByRef声明,说明此参数为传址调用;没

26、有说明传递类型,则默 认为传址传递。即形参的结果会传递给实参。 【知识模块】 模块与 VBA编程基础 15 【正确答案】 B 【试题解析】 本题考查过程的知识。过程可以嵌套调用,但是不得嵌套定义。 【知识模块】 模块与 VBA编程基础 16 【正确答案】 A 【试题解析】 在 VBA的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用 ByVal声明,说明此参数为传值调用,此时形参的变化不会返回到实参;若用 ByRef声明,说明此参数为传址调用,此时形参的变化将会返回到实参;没有说明 传递类型,则默认为传址传递。因此调用函数实参 x是传址方式传递,实参 y为传值方式传递

27、,调用函数后 x值在函数中随形参改变,即 x=x mod 10=12 mod 10=2,而 y不随之改变。 【知识模块】 模块与 VBA编程基础 17 【正确答案】 B 【试题解析】 static为静态变量,要在过程的实例间保留局部变量的值,用此变量,它的持续时间是整个模块执行的时间,但它的有效作用范围是由其定义位置决定的。 【知识模块】 模块与 VBA编程基础 18 【正确答案】 A 【试题解析】 在 VBA的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用 ByVal声明,说明此参数为传值调用,此时形参的变化不会返回到实参;若用 ByRef声明,说明此参数为传址调

28、用,此时形参的变化将会返回到实参;没有说明传递类型,则默认为传址传递。 【知识模块】 模块与 VBA编程基础 19 【正确答案】 D 【试题解析】 子过程的调用形式有两种: Call 子过程名 (实参 )或 子过程名 实参 说明:用 Call关键字调用子过程时,若有实参,则多个实参之间必须用逗号分隔,并把 实参用圆括号括起,无实参时可省略圆括号;不使用 Call关键字,若有实参,也不需用圆括号括起;若实参要获得子过程的返回值,则实参只能是变量,不能是常量、表达式或控件名。 【知识模块】 模块与 VBA编程基础 20 【正确答案】 A 【试题解析】 本题考查 VBA中程序运行错误处理的知识。在

29、VBA中,程序运行错误处理的语句有三种,分别是: On Error Go To,在遇到错误发生时程序转移到标号所指位置代码执行; On Error Resume Next,在遇到错误发生时不会考虑错误并继续执行下一条 语句; On Error Go To 0,关闭错误处理。 【知识模块】 模块与 VBA编程基础 21 【正确答案】 A 【试题解析】 在调试 VBA程序时,通过语法分析能自动检查语法是否错误,而不能检查逻辑错误。 【知识模块】 模块与 VBA编程基础 22 【正确答案】 C 【试题解析】 PrintOtlt:打印打开的数据库中的活动对象,也可以打印数据表、窗体、报表、数据访问页和

30、模块。 OutputTo:可将 Access数据库对象中的数据输出到: Excel、 MS-DOS文本文件或多信息 文件格式及其他格式的文件中:MsgBox:显示包含警告信息或其他信息的消息框。 【知识模块】 模块与 VBA编程基础 23 【正确答案】 A 【试题解析】 在 VBA中,能自动检查出来的错误是语法错误,如有语法错误则程序不会继续运行,逻辑错误、注释错误是不能自动检查出来的,逻辑错误需要调试,对结果进行分析,需要人为检查,注释错误不影响程序执行。 【知识模块】 模块与 VBA编程基础 24 【正确答案】 D 【试题解析】 本题考查程序调试的知识。程序调试的时候可以利用几种辅助窗口来

31、辅 助调试,它们分别是: “本地 ”窗口一一显示当前过程中变量的值; “立即 ”窗口一一当应用程序处于中断模式时,允许运行代码或查询变量值; “监视 ”窗口一一显示选定表达式的值;快速监视一一当应用程序处于中断模式时,列出表达式的当前值;调用堆栈在一一中断模式中,显示一个对话框,其中列出所有被调用且未完成运行的过程。 【知识模块】 模块与 VBA编程基础 25 【正确答案】 A 【试题解析】 立即窗口是用来进行快速的表达式计算、简单方法的操作及进行程序测试的工作窗口。在代码窗口编写代码时,要在立即窗口打印变量 或表达式的值,可使用 Debug Print语句。 【知识模块】 模块与 VBA编程

32、基础 26 【正确答案】 C 【试题解析】 本题考查 VBA中如何打开对象的知识。在 VBA中,打开表的命令格式为: DoCmd OpenTable表名。另外还需知道打开查询使用DoCmd OpenQuery;打开窗体使用 DoCmd OpenForm;打开报表使用DoCmd OpenReports;打开视图使用 DoCmd OpenView;关闭窗体和报表使用 DoCmd Close等。 【知识模块】 模块与 VBA编 程基础 27 【正确答案】 A 【试题解析】 DoCmd OpenForm为打开窗体命令。 【知识模块】 模块与 VBA编程基础 28 【正确答案】 A 【试题解析】 本题考

33、查 VBA中如何打开对象的知识。在 vBA中,打开窗体的命令为: Docmd Open: Form。另外还需知道打开表使用命令Docmd OpenTable;打开报表使用命令 Docmd OpenReport;打开查询使用命令 Docmd OpenQuery;关闭窗体和报表使用命令 Docmd Close。 【知识模 块】 模块与 VBA编程基础 29 【正确答案】 D 【试题解析】 RecordCount属性返回 Long值,指示 Recordset中的记录数目。由于对象变量 rs返回当前窗体的 RecordSet属性记录集引用,所以输出记录个数时的代码写成 rs RecordCount。

34、【知识模块】 模块与 VBA编程基础 30 【正确答案】 B 【试题解析】 在 SOL语句中 UPDATE可以更新数据表,格式 UPDATE数据表名 SET字段名 =设置结果。 【知识模块】 模块与 VBA编程基础 31 【正确答案】 B 【试题解析】 Me Recordset为记录集, Me RecordSource是记录源,本题要求输出记录集的记录数。 【知识模块】 模块与 VBA编程基础 32 【正确答案】 B 【试题解析】 本题考查 VBA中数据库访问接口的知识。在 vBA中,数据库访问接口有 3种:开放数据库互连 (ODBC)、数据访问对象 (DAO)和 Active数据对象(ADO

35、)。 【知识模块】 模块与 VBA编程基础 33 【正确答案】 D 【试题解析】 本题考查 VBA中数据库访问接口的 知识。在 VBA中,数据库访问接口有 3种:开放数据库互连 (ODBC)、数据访问对象 (DAO)和 Active数据对象 (ADO)。 【知识模块】 模块与 VBA编程基础 34 【正确答案】 D 【试题解析】 ADO访问数据库的顺序为: 定义实例变量; 使用 Connection对象连接到数据源; 设置参数并执行命令; 使用 Recordset对象打开记录集; 在程序中操作记录集; 最后关闭回收有关对象。 【知识模块】 模块与 VBA编程基础 35 【正确答案】 C 【试题

36、解析】 ADO对 象模型包括 5个对象,分别为 Connection对象、Command对象、 Recordset对象、 Field对象和 Error对象。 Connection对象:用于建立与数据库的连接。通过连接可从应用程序访问数据源,它保存诸如指针类型、连接字符串、查询超时、连接超时和缺省数据库这样的连接信息。 Command对象:在建立数据库连接后,可以发出命令操作数据源。一般情况下, Command对象可以在数据库中添加、删除或更新数据,或者在表中进行数据查询。 (30mmand对象在定义查询参数或执行存储过程时非常有 用。 Recordset对象:表示数据操作返回的记录集。这个记录集是一个连接的数据库中的表,或者是 Command对象的执行结果返回的记录集。所有对数据的操作几乎都是在 Recordset对象中完成的,可以完成指定行、移动行、添加、更改和删除记录操作。 Field对象:表示记录集中的字段数据信息。 Error对象:表示数据提供程序出错时的扩展信息。 【知识模块】 模块与 VBA编程基础 36 【正确答案】 A 【试题解析】 DAO模型的分层结构包含了一个复杂的可编程数 据关联对象的层饮,其中 DBEngine对象处于最顶层,它是模型中唯一不被其他对象所包含的数据库引擎本身。 【知识模块】 模块与 VBA编程基础

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1