计算机二级Access 第八章同步练习题.docx
《计算机二级Access 第八章同步练习题.docx》由会员分享,可在线阅读,更多相关《计算机二级Access 第八章同步练习题.docx(37页珍藏版)》请在冰豆网上搜索。
计算机二级Access第八章同步练习题
第8章模块与VBA编程基础
一、选择题
(1)下列能够交换变量X和Y值的程序段是()。
A)Y=X:
X=Y
B)Z=X:
Y=Z:
X=Y
C)Z=X:
X=Y:
Y=Z
D)Z=X:
W=Y:
Y=Z:
X=Y
(2)在VBA中,下列关于过程的描述正确的是()。
A)过程的定义可以嵌套,但过程的调用不能嵌套
B)过程的定义不可以嵌套,但过程的调用可以嵌套
C)过程的定义和过程的调用均可以嵌套
D)过程的定义和过程的调用均不能嵌套
(3)若要在子过程Proc1调用后返回两个变量的结果,下列过程定义语句中有效的是()。
A)SubProc1(n,m)
B)SubProcl(ByValn,m)
C)SubProc1(n,BYValm)
D)SubProc1(ByValn,ByValm)
(4)Sub过程与Function过程最根本的区别是()。
A)Sub过程的过程名不能返回值,而Function的过程名可以返回值
B)Sub过程可以使用Call语句或直接使用过程名调用,而Function过程不可以
C)两种过程参数的传递方式不同
D)Function过程可以有参数,Sub过程不可以有参数
(5)能被"对象所识别的动作"和"对象可执行的活动"分别称为对象的()。
A)方法和事件
B)事件和方法
C)事件和属性
D)过程和方法
(6)键盘事件是操作键盘所引发的事件,下列不属于键盘事件的是()。
A)"击键"事件
B)"键按下"事件
C)"键释放"事件
D)"键锁定"事件
(7)VBA程序的多条语句可以写在一行中,其分隔符必须使用符号()。
A):
B)'
C);
D),
(8)下列数据类型中,不属于VBA数据类型的是()。
A)长整型
B)布尔型
C)变体型
D)指针型
9)如下程序段定义了学生成绩的记录类型,由学号、姓名和三门课程成绩(百分制)组成。
TypeStud
noAsInteger
nameAsString
score(1to3)AsSingle
EndType
若对某个学生的各个数据项进行赋值,下列程序段正确的是()。
A)DimSAsStud
Stud.no=1001
Stud.name="舒宜"
Stud.score=78,88,96
B)DimSAsStud
S.no=1001
S.name="舒宜"
S.score=78,88,96
C)DimSAsStud
Stud.no=1001
Stud.name="舒宜"
Stud.score
(1)=78
Stud.score
(2)=88
Stud.score(3)=96
D)DimSAsStud
S.no=1001
S.name="舒宜"
S.score
(1)=78
S.score
(1)=88
S.score
(1)=96
(10)下列给出的选项中,非法的变量名是()。
A)Sum
B)Integer_2
C)Dim
D)Form1
(11)在模块的声明部分使用"OptionBase1"语句,然后定义二维数组A(2to5,5),则该数组的元素个数为()。
A)20
B)24
C)25
D)36
(12)在Access中,如果变量定义在模块的过程内部,当过程代码执行时才可见,则这种变量的作用域为()。
A)程序范围
B)全局范围
C)模块范围
D)局部范围
(13)语句DimNewArray(10)AsInteger的含义是()。
A)定义了一个整型变量且初值为10
B)定义了10个整数构成的数组
C)定义了11个整数构成的数组
D)将数组的第10个元素设置为整型
(14)要将一个数字字符串转换成对应的数值,应使用的函数是()。
A)Val
B)Single
C)Asc
D)Space
(15)能够实现从指定记录集里检索特定字段值的函数是()。
A)Nz
B)Find
C)Lookup
D)Dlookup
(16)如果X是一个正的实数,保留两位小数且将千分位四舍五入的表达式是()。
A)0.01*Int(x+0.05)
B)0.01*Int(100*(X+0.005))
C)0.01*Int(x+0.005)
D)0.01*Int(100*(X+0.05))
(17)在窗体上有一个命令按钮Command1,编写事件代码如下:
PrivateSubCommand1_Click()
Dimd1AsDate
Dimd2AsDate
d1=#12/25/2009#
d2=#1/5/2010#
MsgBoxDateDiff("ww",d1,d2)
EndSub
打开窗体运行后单击命令按钮,消息框中输出的结果是()。
A)1
B)2
C)10
D)11
(18)用于获得字符串S最左边4个字符的函数是()。
A)Left(S,4)
B)Left(S,1,4)
C)Leftstr(S,4)
D)Leftstr(S,0,4)
(19)表达式Fix(-3.25)和Fix(3.75)的结果分别是()。
A)-3,3
B)-4,3
C)-3,4
D)-4,4
(20)从字符串s中的第2个字符开始获得4个字符的子字符串函数是()。
A)Mid(s,2,4)
B)Left$(s,2,4)
C)Right(s,4)
D)Left$(s,4)
(21)有如下语句:
s=Int(100*Rnd)
执行完毕后,s的值是()。
A)[0,99]的随机整数
B)[0,100]的随机整数
C)[1,99]的随机整数
D)[1,100]的随机整数
(22)在窗体上添加一个命令按钮(名为Command1)和一个文本框(名为Text1),并在命令按钮中编写如下事件代码:
PrivateSubCommand1_Click()
m=2.17
n=Len(Str$(m)+Space(5))
Me!
Text1=n
EndSub
打开窗体运行后,单击命令按钮,在文本框中显示的内容为()。
A)5
B)8
C)9
D)10
(23)在窗体中添加一个名称为Command1的命令按钮,然后编写如下事件代码:
PrivateSubCommand1_Click()
s="ABBACDDCBA"
ForI=6To2Step-2
x=Mid(s,I,I)
y=Left(s,I)
z=Right(s,I)
z=x&y&z
NextI
MsgBoxz
EndSub
窗体打开运行后,单击命令按钮,则消息框的输出结果是()。
A)AABAAB
B)ABBABA
C)BABBA
D)BBABBA
(24)表达式"B=INT(A+0.5)"的功能是()。
A)将变量A保留小数点后1位
B)将变量A四舍五入取整
C)将变量A保留小数点后5位
D)舍去变量A的小数部分
(25)下列表达式计算结果为数值类型的是()。
A)#5/5/2010#-#5/1/2010#
B)"102">"11"
C)102=98+4
D)#5/1/2010#+5
(26)在窗体上有一个命令按钮Command1,编写事件代码如下:
PrivateSubCommand1_Click()
DimxAsInteger,yAsInteger
x=12:
y=32
CallProc(x,y)
Debug.Printx,y
EndSub
PublicSubProc(nAsInteger,ByValmAsInteger)
n=nMod10
m=mMod10
EndSub
打开窗体运行后,单击命令按钮,立即窗口上输出的结果是()。
A)232
B)123
C)22
D)1232
(27)在窗体中添加一个命令按钮(名称为Command1),然后编写如下代码:
PrivateSubCommand1_Click()
a=0:
b=5:
c=6
MsgBoxa=b+c
EndSub
窗体打开运行后,如果单击命令按钮,则消息框的输出结果为()。
A)11
B)a=11
C)0
D)False
(28)VBA表达式"3*3\3/3"的输出结果是()。
A)0
B)1
C)3
D)9
(29)下列逻辑表达式中,能正确表示条件"x和y都是奇数"的是()。
A)xMod2=1OryMod2=1
B)xMod2=0OryMod2=0
C)xMod2=1AndyMod2=1
D)xMod2=0AndyMod2=0
(30)有如下事件程序,运行该程序后输出结果是()。
PrivateSubCommand3_Click()
DimxAsInteger,yAsInteger
x=1:
y=0
DoUntily<=25
y=y+x*x
x=x+1
Loop
MsgBox"x="&x&",y="&y
EndSub
A)x=1,y=0
B)x=4,y=25
C)x=5,y=30
D)以上结果都不对
(31)下列程序的功能是计算sum=1+(1+3)+(1+3+5)+…+(1+3+5+…+39)。
PrivateSubCommand34_Click()
t=0
m=1
sum=0
Do
t=t+m
sum=sum+t
m=_________
LoopWhilem<=39
MsgBox"sum="&sum
EndSub
为保证程序能正确完成上述功能,空白处应填入的语句是()。
A)m+1
B)m+2
C)t+1
D)t+2
(32)若变量i的初值为8,则下列循环语句中循环体的执行次数为()。
DoWhilei<=17
i=i+2
Loop
A)3次
B)4次
C)5次
D)6次
(33)窗体中有命令按钮Command1和文本框Text1,事件过程如下:
Functionresult(ByValxAsInteger)AsBoolean
IfxMod2=0Then
result=True
Else
result=False
EndIf
EndFunction
PrivateSubCommand1_Click()
x=Val(InputBox("请输入一个整数"))
If__________Then
Text1=Str(x)&"是偶数"
Else
Text1=Str(x)&"是奇数"
EndIf
EndSub
运行程序,单击命令按钮,输入19,在Text1中会显示"19是奇数",那么在程序的空白处应填写()。
A)result(x)="偶数"
B)result(x)
C)result(x)="奇数"
D)NOTresult(x)
(34)窗体中有命令按钮run34,对应的事件代码如下:
PrivateSubrun34_Enter()
DimnumAsInteger,aAsInteger,bAsInteger,iAsInteger
Fori=1To10
num=InputBox("请输入数据:
","输入")
IfInt(num/2)=num/2Then
a=a+1
Else
b=b+1
EndIf
Nexti
MsgBox("运行结果:
a="&Str(a)&",b="&Str(b))
EndSub
运行以上事件过程,所完成的功能是()。
A)对输入的10个数据求累加和
B)对输入的10个数据求各自的余数,然后再进行累加
C)对输入的10个数据分别统计偶数和奇数的个数
D)对输入的10个数据分别统计整数和非整数的个数
(35)在窗体上有一个命令按钮Command1和一个文本框Text1,编写事件代码如下:
PrivateSubCommand1_Click()
Dimi,j,x
Fori=1To20step2
x=0
Forj=2To20step3
x=x+1
Nextj
Nexti
Text1.Value=Str(x)
EndSub
打开窗体运行后,单击命令按钮,文本框中显示的结果是()。
A)1
B)7
C)17
D)400
(36)在窗体中有一个文本框Text1,编写事件代码如下:
PrivateSubForm_Click()
X=val(Inputbox("输入x的值"))
Y=1
IfX<>0ThenY=2
Text1.Value=Y
EndSub
打开窗体运行后,在输入框中输入整数12,文本框Text1中输出的结果是()。
A)1
B)2
C)3
D)4
(37)在窗体中有一个命令按钮Command1和一个文本框Text1,编写事件代码如下:
PrivateSubCommand1_Click()
ForI=1To4
x=3
Forj=1To3
Fork=1To2
x=x+3
Nextk
Nextj
NextI
Text1.value=Str(x)
EndSub
打开窗体运行后,单击命令按钮,文本框Text1输出的结果是()。
A)6
B)12
C)18
D)21
(38)下列四个选项中,不是VBA条件函数的是()。
A)Choose
B)If
C)Iif
D)Switch
(39)设有如下过程:
x=1
Do
x=x+2
LoopUntil__________
运行程序,要求循环体执行3次后结束循环,空白处应填入的语句是()。
A)x<=7
B)x<7
C)x>=7
D)x>7
(40)在窗体中添加一个名称为Command1的命令按钮,然后编写如下事件代码:
PrivateSubCommand1_Click()
MsgBoxf(24,18)
EndSub
PublicFunctionf(mAsInteger,nAsInteger)AsInteger
DoWhilem<>n
DoWhilem>n
m=m-n
Loop
DoWhilemn=n-m
Loop
Loop
f=m
EndFunction
窗体打开运行后,单击命令按钮,则消息框的输出结果是()。
A)2
B)4
C)6
D)8
(41)在窗体中有一个命令按钮(名称为run34),对应的事件代码如下:
PrivateSubrun34_Click()
sum=0
Fori=10To1Step-2
sum=sum+i
Nexti
MsgBoxsum
EndSub
运行以上事件,程序的输出结果是()。
A)10
B)30
C)55
D)其他结果
(42)VBA程序流程控制的方式是()。
A)顺序控制和分支控制
B)顺序控制和循环控制
C)循环控制和分支控制
D)顺序控制、分支控制和循环控制
(43)在Access中,如果要处理具有复杂条件或循环结构的操作,则应该使用的对象是()。
A)窗体
B)模块
C)宏
D)报表
(44)下列4种形式的循环设计中,循环次数最少的是()。
A)a=5:
b=8
Do
A=a+1
LoopWhilea
B)a=5:
b=8
Do
a=a+1
LoopUntila
C)a=5:
b=8
DoUntila
b=b+1
Loop
D)a=5:
b=8
DoUntila>b
a=a+1
Loop
(45)下列不是分支结构的语句是()。
A)If…Then…EndIF
B)While…Wend
C)If…Then…Else…EndIf
D)Select…Case…EndSelect
(46)在窗体中使用一个文本框(名为n)接收输入的值,有一个命令按钮run,事件代码如下:
PrivateSubrun_Click()
result=""
Fori=1ToMe!
n
Forj=1ToMe!
n
result=result+"*"
Nextj
result=result+Chr(13)+Chr(10)
Nexti
MsgBoxresult
EndSub
打开窗体后,如果通过文本框输入的值为4,单击命令按钮后输出的图形是()。
A)****
****
****
****
B)*
***
*****
*******
C)****
******
********
**********
D)****
****
****
****
(47)在窗体中添加一个名称为Command1的命令按钮,然后编写如下事件代码:
PrivateSubCommand1_Click()
a=75
Ifa>60Then
k=1
ElseIfa>70Then
k=2
ElseIfa>80Then
k=3
ElseIfa>90Then
k=4
EndIf
MsgBoxk
EndSub
窗体打开运行后,单击命令按钮,则消息框的输出结果是()。
A)1
B)2
C)3
D)4
(48)设有如下窗体单击事件过程:
PrivateSubForm_Click()
a=1
Fori=1To3
SelectCasei
Case1,3
a=a+1
Case2,4
a=a+2
EndSelect
Nexti
MsgBoxa
EndSub
打开窗体运行后,单击窗体,则消息框的输出结果是()。
A)3
B)4
C)5
D)6
(49)设有如下程序:
PrivateSubCommand1_Click()
DimsumAsDouble,xAsDouble
sum=0
n=0
Fori=1To5
x=n/i
n=n+1
sum=sum+x
Nexti
EndSub
该程序通过For循环来计算一个表达式的值,这个表达式是()。
A)1+1/2+2/3+3/4+4/5
B)1+1/2+1/3+1/4+1/5
C)1/2+2/3+3/4+4/5
D)1/2+1/3+1/4+1/5
(50)下列Case语句中错误的是()。
A)Case0To10
B)CaseIs>10
C)CaseIs>10AndIs<50
D)Case3,5Is>10
(51)在窗体中添加一个名称为Command1的命令按钮,然后编写如下事件代码:
PrivateSubCommand1_Click()
Dima(10,10)
Form=2To4
Forn=4To5
a(m,n)=m*n
Nextn
Nextm
MsgBoxa(2,5)+a(3,4)+a(4,5)
EndSub
窗体打开运行后,单击命令按钮,则消息框的输出结果是()。
A)22
B)32
C)42
D)52
(52)在窗体上添加一个命令按钮(名为Command1),然后编写如下事件过程:
PrivateSubCommand1_Click()
Fori=1To4
x=4
Forj=1To3
x=3
Fork=1To2
x=x+6
Nextk
Nextj
Nexti
MsgBoxx
EndSub
打开窗体后,单击命令按钮,消息框的输出结果是()。
A)7
B)15
C)157
D)528
(53)假定有以下循环结构:
DoUntil条件
循环体
Loop
则正确的叙述是()。
A)如果"条件"值为0,则一次循环体也不执行
B)如果"条件"值为0,则至少执行一次循环体
C)如果"条件"值不为0,则至少执行一次循环体
D)不论"条件"是否为"真",至少要执行一次循环体
(54)假定有以下程序段:
n=0
fori=1to3
forj=-4to-1
n=n+1
nextj
nexti
运行完毕后,n的值是()。
A)0
B)30
C)4
D)12
(55)执行下面的程序段后,x的值为()。
x=5
ForI=1To20Step2
x=x+I\5
NextI
A)21
B)22
C)23
D)24
(56)已知程序段:
s=0
Fori=1To10Step2
s=s+1
i=i*2
Nexti
当循环结束后,变量i、s的值各为()。
A)10,4
B)11,3
C)22,3
D)16,4
(57)运行下面的程序段:
Fork=5TO10Step2
k=k*2
Nextk
则循环次数为()。
A)1
B)2
C)3
D)4
(58)在窗体中添加一个名称为Command1的命令按钮,然后编写如下程序:
PublicxAsInteger
PrivateSubCommand1_Click()
x=10
Calls1
Calls2
MsgBoxx
EndSub
PrivateSubs1()
x=x+20
EndSub
PrivateSubs2()
DimxAsInteger
x=x+20
EndSub
窗体打开运行后,单击命令按钮,则消息框的输出结果为()。
A)10
B)30
C)40
D)50
(59)下面程序:
PrivateSubForm_Click()
Dimx,y,zAsInteger
x=5
y=7
z=0
CallP1(x,y,z)
Debug.PrintStr(z)
EndSub
SubP1(ByValaAsInteger,ByVa