1、国家二级 ACCESS机试选择题(模块与 VBA编程基础)模拟试卷 14及答案与解析 一、选择题 1 在窗体上有一个命令按钮 Command1,编写事件代码如下: Private Sub CommandI_Click() Dim d1 As Date, d2 As Date d1=#12 25 2009# d2=#1 5 2010# MsgBox DateDiff(“ww”, d1, d2) End Sub 打开窗体运行后,单击命令按钮,立即窗口上输出的结果是 ( A) 1 ( B) 2 ( C) 10 ( D) 11 2 要将一个数字字符串转换成对应的数值,应使用的函数是 ( A) Val
2、( B) Single ( C) Asc ( D) Space 3 下列变量名中,合法的是 ( A) 4A ( B) A1 ( C) ABC_1 ( D) private 4 下列表达式中,能正确表示条件 “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 5 下列给出的选项中,非法的变量名是 ( A) Sum ( B) Integer 2 ( C) Rem ( D) Forml 6 表达式
3、“B=INT(A+0, 5)”的功能是 ( A)将变量 A保留小数点后 1位 ( B)将变量 A四舍五入取整 ( C)将变量 A保留小数点后 5位 ( D)舍去变量 A的小数部分 7 VBA语句 “Dim NewArray(10)as Integer”的含义是 ( A)定义 10个整型数构成的数组 NewArray ( B)定义 11个整型数构成的数组 NewArray ( C)定义 1个值为整型数的变量 NewArray(10) ( D)定义 1个值为 10的变量 NewArray 8 将一个数转换成相应字符串的函数是 ( A) Str ( B) String ( C) Asc ( D) C
4、hr 9 VBA中定义符号常量使用的关键字是 ( A) Const ( B) Dim ( C) Public ( D) Static 10 可以用 InputBox函数产生 “输入对话框 ”。执行语句: st=InputBox(“请输入字符串 ”, “字符串对话框 ”, “aaaa”)当用户输入字符串 “bbbb”,按 OK按钮后,变量 st的内容是 ( A) aaaa ( B)请输入字符串 ( C)字符串对话框 ( D) bbbb 11 下列不属于 VBA函数的是 ( A) Choose ( B) If ( C) IIf ( D) Switch 12 下列关于 VBA事件的叙述中,正确的是
5、( A)触发相同的事件可以执行不同的事件过程 ( B)每个对象的事件都是不相同的 ( C)事件都是由用户操作触发的 ( D)事件可以由程序定义 13 用来测试当前读写位置是否达到文件末尾的函数是 ( A) EOF ( B) FileLen ( C) Len ( D) LOF 14 下列表达式中,能够保留变量 X整数部分并进行四舍五入的是 ( A) Fix(x) ( B) Rnd(x) ( C) Round(x) ( D) Int(X) 15 VBA程序中,可以实现代码注释功能的是 ( A)方括号 () ( B)冒号 (: ) ( C)双引号 (”) ( D)单引号 () 16 在窗口中有一个标
6、签 Label0和一个命令按钮 Commandl, Commandl的事件代码如下: Private Sub Command lClick() Label0 Left=Label0 Left+100 End Sub 打开窗口,单击命令按钮,结果是 ( A)标签向左加宽 ( B)标签向右加宽 ( C)标签向左移动 ( D)标签向右移动 17 假定有以下循环结构 Do Until条件 循环体 Loop 则正确的叙述是 ( A)如果 “条件 ”值为 0,则一次循环体也不执行 ( B)如果 “条件 ”值为 0,则至少执行一次循环体 ( C)如果 “条件 ”值不为 0,则至少执行一次循环体 ( D)不论
7、 “条件 ”是否为 “真 ”,至少要执行一次循环体 18 假定有以下程序段 n=0 for i=1 to 3 for i=-4 to-1 n=n+1 nextj next i 运行完毕后, n的值是 ( A) 0 ( B) 3 ( C) 4 ( D) 12 19 以下程序段运行结束后,变量 X的值为 X=2 : Y=4 Do X=x*y:y=y+1 Loop While y60 Then I=1 IfA70 Then I=2 IfA80 111en I=3 IfA90 Then I=4 MsgBox 1 End Sub 窗体打开运行后,单击命令按钮,则消息框的输出结果是 ( A) 1 ( B)
8、 2 ( C) 3 ( D) 4 23 在窗体中添加一个名 称为 Commandl的命令按钮,然后编写如下事件代码: Private Sub Commandl Click() s=“ABBACDDCBA” For 1=6 To 2 Step-2 x=Mid(s, 1, 1): y=Left(s, 1) z=Right(s, 1) z=x&Y&z Next 1 MsgBox z End Sub 窗体打开运行后,单击命令按钮,则消息框的输出结果是 ( A) AABAAB ( B) ABBABA ( C) BABBA ( D) BBABBA 24 在窗体中添加一个名称为 Commandl的命令按钮,
9、然后编写如下事件代码: Private Sub Command1 Click() a=75 If a60 Then k=1 Elself a70 Then k=2 Elself a80 Then k=3 Elself a90 Then k=4 Endlf MsgBoxk End Sub 窗体 打开运行后,单击命令按钮,则消息框的输出结果是 ( A) 1 ( B) 2 ( C) 3 ( D) 4 25 设有如下窗体单击事件过程: Private Sub Form_Click() a=1 For i=1 To 3 Select Case i Case 1-3 a=a+1 Case 2, 4 a=a
10、+2 End Select Next i MsgBox a End Sub 打开窗体运行后,单击窗体,则消息 框的输出的结果是 ( A) 3 ( B) 4 ( C) 5 ( D) 6 26 设有如下程序: Private Sub Command lClick() Dim sum As Double x As Double Sum=0 n=0 For i=1 To 5 x=n i n=n+l sum=sum+X Next 1 EndSub 该程序通过 For循环来计算一个表达式的值,这个表达式是 ( A) 1+1 2+2 3+3 4+4 5 ( B) 1+1 2+1 3+1 4+1 5 ( C)
11、 l1 2+2 3+3 4+4 5 ( D) 1 2+1 3+1 4+1 5 27 下列 Case语句中错误的是 ( A) Case 0 To 10 ( B) Case Is10 ( C) Case Is10 And Is10 28 下列不是分支结构的语句是 ( A) IfThenEndlF ( B) WhileWend ( C) IfThenElseEndlf ( D) SelectCaseEnd S elect 29 在窗体中使用一个文本框 (名为 n)接受输入的值,有一个命令按钮 run,事件代码如下: Private Sub run Click() result=“” For i=l
12、To Me!n For j=1 To Me!n result=result+“*” Nextj result=result+Chr(13)+Chr(10) Next i MesgBox result End Sub 打开窗体后,如果通过文本框 输入的的值为 4,单击命令按钮后输出的图型是 ( A) * * * * * * * * * * * * * * * * ( B) * * * * * * * * * * * * * * * * ( C) * * * * * * * * * * * * * * * * * * * * * * * * * * * * ( D) * * * * * * * *
13、 * * * * * * * * 30 VBA程序流程控制的方式是 ( A)顺序控制和分支控制 ( B)顺序控制和循环控制 ( C)循环控制和分支控制 ( D)顺序、分支和循环控制 国家二级 ACCESS机试选择题(模块与 VBA编程基础)模拟试卷 14答案与解析 一、选择题 1 【正确答案】 B 【试题解析】 DateDiff函数返回变量型 (长型 ),指定两个指定的日期之间的时间间隔数。 语法: DateDiffinterval, datel, date2, firstdayofweek, firstweekofyear) 【知识模块】 模块与 VBA编程基础 2 【正确答案】 A 【试题
14、解析】 Val函数:返回包含于字符串内的数字,将其作为适当类型的数字值: Asc函数:返回与字符串的第一个字母对应的 ANSI字符代码; Space函数:返回指定空格的字符串; Single为数据类型,不是函数。 【知识模块】 模块与 VBA编程基础 3 【正确答案】 C 【试题解析】 变量名必须以字母开头,大小写等价,不能包括空格或除下划线“一 ”之外的其他字符,不能使用 VBA的关键字,变量名长度小于 255个字符。 【知识模块】 模块与 VBA编程基础 4 【正确答案】 C 【试题解析】 Mod取余函数,奇数 mod2=l偶数 mod2=0证明 x、 y都是奇数,即用 AND(与 )操作
15、符。 【知识模块】 模块与 VBA编程基础 5 【正确答案】 C 【试题解析】 变量名必须以字母开头,大小写等价,不能包括空格或除下划线“一 ”之外的其他字符,不能使用 VBA的关键字,变量名长度小于 255个字符,本题中选项 C为关键字,不能作为变量名使用。 【知识模块】 模块与 VBA编程基础 6 【正确答案】 B 【试题解析】 Int()函数为取整函数,返回数值表达式的整数部分。参数为负值时,返回小于等于参数值的第一个负数。 【知识模块】 模块与 VBA编程基础 7 【正确答案】 B 【试题解析】 dim newarray(10)as integer表示定义了 11个整型数构成的数组,数
16、组元素为 newarray(0)至 newarray(10)。 【知识模块】 模块与 VBA编程基础 8 【正确答案】 A 【试题解析】 各函数的功能如下表所示:而选项 C)的 Asc只是在 SOL语句中实现排序为升序的功能。 【知识模块】 模块与 VBA编程基础 9 【正确答案】 A 【试题解析】 在 VBA编程过程中,如果在代码中要反复使用相同的值,或者代表一些具有特定意义的数字或字符串,可以用符号常量形式来表示,符号常量使用关 键字 Const来定义,格式: Const 符号常量名称常量值 【知识模块】 模块与 VBA编程基础 10 【正确答案】 D 【试题解析】 输入框用于在一个对话框
17、中显示提示,等待用户输入正文并按下按钮、返回包含文本框内容的字符串数据信息。它的功能在 VBA中是以函数的形式调用,其使用格式如下: Input Box (prompt,title,default,xpos,helofile,conrext) InputBox有关参数说明如下表所示。【知识模块】 模块与 VBA编程基础 11 【正确答案】 B 【试题解析】 IIf()函数,该函数可用于选择操作。调用格式为: nf(条件表达式,表达式 1:表达式 2) 功能:函数根据 “条件表达式 ”的值来决定返回值。如果 “条件表达式 ”的值为“真 ”(True),函数返回 “表达式 l”的值; “条件表达式
18、 ”的值为 “假 ”(Flase),函数返回 “表达式 2”的值。 Switch(1函数,该函数可用于多条件选择操作。调用格式为:SWitch(条件式 l,表达式 l条件式 2,一达式 2.,条件式 n,表达式 n) 功能:函数分别根据 “条 件式 1”、 “条件式 2”“ 条件式 n”的值来决定返回值。条件式是由左至右进行计算判断的,函数将返回第一个条件式为 True的对应 “表达式 ”的值。 Choose()函数,调用格式为: Choose(数值表达式,表达式 1,表达式 2f ,表达式 n) 功能:函数根据 “数值表达式 ”的值决定返同值。若不考虑变量的小数的定义位数,当 “数值表达式
19、”值大于 1、小于 2时,函数将返同 “表达式 1”的值;值大于2、小于 3,返回 “表达式 2”的值,依此类推。以上 3种函数均为 VBA的函数。 【知识模块】 模块与 VBA编程基础 12 【正确答案】 A 【试题解析】 事件是由系统定义的,事件的过程是由程序员定义的,因此触发相同的事件可以执行不同的事件过程;不同的对象可能有相同的实现,如很多控件都具有 “获取焦点 ”事件。有些事件并不是用户触发的,如 Resize事件。事件是由系统定义供程序员使用的,并不能由程序员定义。 【知识模块】 模块与 VBA编程基础 13 【正确答案】 A 【试题解析】 在到达文件末尾之前, EOF函数一直返回
20、 False,到达文件末尾时, EOF返回 True: FileL,en函数返回一 个文件的长度,单位为字节; Len返回文本串的字符数; LOF函数返回某文件的字节数。 【知识模块】 模块与 VBA编程基础 14 【正确答案】 C 【试题解析】 Fix(x)和 Int(x)返回 x的整数部分,对于小数部分完全舍弃。 Rnd(x)返回一个随机数, Round(X)保留 x的整数部分并进行四舍五入。 【知识模块】 模块与 VBA编程基础 15 【正确答案】 D 【试题解析】 一个好的程序一般都有注释语句。这对程序的维护有很大的好处。在 VBA程序中,注释可以通过以下两种方式实现: 使用 Rem语
21、句,格式为: Rem注释语句 用单引号 “*”,格式为: 注释语句 【知识模块】 模块与 VBA编程基础 16 【正确答案】 D 【试题解析】 Left表示的是控件的左边距,所以 left+100表示控件向右移动。 【知识模块】 模块与 VBA编程基础 17 【正确答案】 B 【试题解析】 本题考查 VBA中: Do untilLoop 循环的知识。对于这种循环结构,首先看条件判断在循环体的前面还是后面,如果是先判断条件,则有可能一次也不执行 循环体;如果是后判断条件,则无论条件如何至少执行一次循环体。在 Unti1循环中条件为 False时执行循环体,条件为 True时退出循环;在 Whil
22、e循环中条件为 True时执行循环体,条件为 False时退出循环,这一点要注意区分清楚。本题中是先判断条件,条件值为 0表示条件是 False,则至少执行一次循环体。 【知识模块】 模块与 VBA编程基础 18 【正确答案】 D 【试题解析】 本题考查 vBA中嵌套 For循环的知识。这种问题要注意分析清楚每次循环的变化以及循环的次数。在这个循环中,内循环执行 4次,外循环执行 3次,所以里面的循环体语句 n=n+1共执行 12次,所以最终 n的值为 12。 【知识模块】 模块与 VBA编程基础 19 【正确答案】 C 【试题解析】 本题考查 vBA中循环的知识。在本题中用了 DoLoop
23、While 循环,先运行循环体后判断条件,当条件满足时继续循环,条件不满足时退出循环体。在本题中第一次循环结束后 y的值为 5已经不满足条件,故此本循环只执行一次, x的值为 2*4=8。 【知识模块】 模块与 VBA编程基础 20 【正确答案】 B 【试题解析】 本题考查 vBA中多重循环的知识。见到多重循环的问题不要害怕,认真地分析清楚每一次循环这种问题就迎刃而解了。比如这个例子,我们看到,在每一次外循环开始的时候都把 x的值置为 4,所以我们只分析最后一次循环就可以了;同理中层循环每一次开始前都把 x置为 3,所以这个问题最后实际上就是 x的初值为 3,执行最内层循环直到结束就可以了。根
24、据程序内循环执行两次,最后 x=3+6+6=1 5a 【知识模块】 模块与 VBA编程基础 21 【正确答案】 C 【试题解析】 本题考查数组和二重循环的知识。在这个问题 中,我们实际上可以分析出,数组元素的值就是该元素的两个下标之积 (循环范围内 )。所以最后的三个数组元素的和也就是 2*5+3*4+4*5=42。 【知识模块】 模块与 VBA编程基础 22 【正确答案】 B 【试题解析】 本题考查 vBA中选择结构的知识。在本题中用了多个 If分支结构,这些结构是顺序的而不是嵌套的,所以会顺序执行判断是否满足条件。首先75大于 60。所以 i=1,然后再判断 75大于 70。所以 i=2,
25、再接着判断 75既不大于80也不大于 90,所以最后消息框里输出的 i值为 2。 【知识模块】 模块与 VBA编程基础 23 【正确答案】 D 【试题解析】 本题考查 VBA中循环和取子串函数的知识。在 VBA中有三种取子串函数: Left函数用于在字符串左端开始取 n个字符; Right函数用于在字符串右端开始取 n个字符 (注意子串中字符的顺序与母串中相同 ); Mid函数可以实现在任何位置取任何长度的子串。在本题中由于循环每次都会为 z赋一个新的值Right(s,i),所以只有最后一次循环中的 z值才有意义。最后一次循环时 i=2,所以D选项正确。 【知识模块】 模块与 VBA编程基础
26、24 【正确答案】 A 【试题解析】 本题考查多分支选择的知识。这个问题比较简单,只要知道这是一个多分支选择结构,当执行某分支后就会退出分支执行分支下面的语句就可以做对。本题中第一个分支条件就得到满足,所以执行 k=1后退出分支结构,最终结果 k=1。 【知识模块】 模块与 VBA编程基础 25 【正确答案】 C 【试题解析】 本题考查 VBA程序设计中的多分支选择和循环的知识。在本题的程序中,共循环三次,第一次 i的值为 1,故此执行 Case语句中的 a=a+1;第二次 i的值为 2,故此执行 Case语句中的 a=a+2;第一次 i的值为 3,故此执行 Case语句中的 a=a+1。所以
27、最后 a的值为 l+1+2+1=5。 【知识模块】 模块与 VBA编程基础 26 【正确答案】 C 【试题解析】 本题考查 VBA中循环结构的知识。这类问题需要分析出每一次循环所做的操作。第一次循环时, i=1, n=0, x=0 1,所以累加上去的是 0 1;第二次循环时, i: 2, n=1, x=1 2,所以累加上去的是 1 2;第三次循环时,i=3, n=2, x=2 3,所以累加上去的是 2 3;循环 5次后累加的应该是 0 1+12+2 3+3 4+4 5。 【知识模块】 模块与 VBA编程基础 27 【正确答案】 C 【试题解析】 本题考查 Select Case语句的知识。 C
28、ase语句的后面可以包含一个值、一组枚举值、一个值的范围以及比较运算符。但是当 Case语句使用 Is关键字的时候就不能再加入逻辑运算符如 And等。 【知识模块】 模块与 VBA编程基础 28 【正确答案】 B 【试题解析】 本题考查控制结构的知识。选项 A是一个单分支选择结构;选项C是一个双分支选择结构;选项 D是一个多分支选择结构;选项 B是一个循环结构。 【知识模 块】 模块与 VBA编程基础 29 【正确答案】 A 【试题解析】 本题考查二重循环的知识。在这个二重循环中,外循环的执行次数为 4,内循环的执行次数也为 4,并且每次内循环退出后都要换行,所以最后结果为一个 4*4的矩阵,矩阵的每个元素都为 “*”。 【知识模块】 模块与 VBA编程基础 30 【正确答案】 D 【试题解析】 本题考查结构化程序设计的知识。 VBA是一种结构化的程序设计方式,结构化的程序设计方式要求程序只能由顺序、分支和循环三种基本控制结构组成。 【知识模块】 模块与 VBA编程基础