Access数据库第7章 VBA编程基础习题 2.docx
- 文档编号:20181237
- 上传时间:2023-04-25
- 格式:DOCX
- 页数:34
- 大小:54.33KB
Access数据库第7章 VBA编程基础习题 2.docx
《Access数据库第7章 VBA编程基础习题 2.docx》由会员分享,可在线阅读,更多相关《Access数据库第7章 VBA编程基础习题 2.docx(34页珍藏版)》请在冰豆网上搜索。
Access数据库第7章VBA编程基础习题2
第7章VBA编程基础
1一、选择题
11、能被“对象所识别的动作”和“对象可执行的活动”分别称为对象的()。
A:
方法和事件B:
事件和方法
C:
事件和属性D:
过程和方法
12、下列数据类型中,不属于VBA的是()。
A:
长整型B:
布尔型C:
变体型D:
指针型
13、VBA程序的多条语句可以写在一行中,其分隔符必须使用符号()。
A:
:
B:
’C:
;D:
,
14、在调试VBA程序时,能自动被检查出来的错误是()。
A:
语法错误B:
逻辑错误
C:
运行错误D:
语法错误和逻辑错误
15、如果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))
16、用于获得字符串Str从第2个字符开始的3个字符的函数是()。
A:
Mid(Str,2,3)B:
Middle(Str,2,3)
C:
Right(Str,2,3)D:
Left(Str,2,3)
17、用于获得字符串S最左边4个字符的函数是()。
A:
Left(S,4)B:
Left(S,1,4)
C:
Leftstr(S,4)D:
Leftstr(S,0,4)
18、有如下语句
s=Int(100*Rnd)
执行完毕后,s的值是()。
A:
[0,99]的随机整数B:
[0,100]的随机整数
C:
[1,99]的随机整数D:
[1,100]的随机整数
19、VBA表达式3*3\3/3的输出结果是()。
A:
0B:
1C:
3D:
9
110、下列逻辑表达式中,能正确表示条件“x和y都是奇数”的是()。
A:
xMod2=1OryMod2=1B:
xMod2=0OryMod2=0
C:
xMod2=1AndyMod2=1D:
xMod2=0AndyMod2=0
111、在使用Dim语句定义数组时,在缺省情况下数组下标的下限为()。
A:
1B:
0C:
任意数D:
系统自定义
112、下列数组声明语句中,正确的是()。
A:
DimA[3,4]AsIntegerB:
DimA(3,4)AsInteger
C:
DimA[3;4]AsIntegerD:
DimA(3;4)AsInteger
113、在模块的声明部分使用“OptionBase1”语句,然后定义二维数组A(2to5,5),则该数组的元素个数为()。
A:
20B:
24C:
25D:
36
114、窗体Caption属性的作用是()。
A:
确定窗体的标题B:
确定窗体的名称
C:
确定窗体的边界类型D:
确定窗体的字体
115、Access的控件对象可以设置某个属性来控制对象是否可用(不可用时显示为灰色状态)。
需要设置的属性是()。
A:
DefaultB:
Cancel
C:
EnabledD:
Visible
116、假定窗体的名称为fmTest,则把窗体的标题设置为"AccessTest"的语句是()。
A:
Me="AccessTest"B:
Me.Caption="AccessTest"
C:
Me.Text="AccessTest"D:
Me.Name="AccessTest"
117、在窗体中有两个文本框分别为Text1和Text2,一个命令按钮Command1,编写如下两个事件过程:
PrivateSubCommand1_Click()
a=Text1.Value+Text2.Value
MsgBoxa
EndSub
PrivateSubForm_Load()
Text1.Value=""
Text2.Value=""
EndSub
程序运行时,在文本框Text1中输入78,在文本框Text2中输入87,单击命令按钮,消息框中输出的结果为:
()。
A:
165B:
7887C:
8778D:
空
118、在窗体中添加了一个文本框和一个命令按钮(名称分别为tText和bCommand),并编写了相应的事件过程。
运行此窗体后,在文本框中输入一个字符,则命令按钮上的标题变为“计算机等级考试”。
以下能实现上述操作的事件过程是()。
A:
PrivateSubbCommand_Click()
Caption=”计算机等级考试”
EndSub
B:
PrivateSubtText_Click()
bCommand.Caption=”计算机等级考试”
EndSub
C:
PrivateSubbCommand_Change()
Caption=”计算机等级考试”
EndSub
D:
PrivateSubtText_Change()
bCommand.Caption=”计算机等级考试”
EndSub
119、在窗体中有一个文本框Text1,编写事件代码如下:
PrivateSubForm_Click()
x=val(Inputbox(“输入x的值”))
Y=1
Ifx<>0ThenY=2
Text1.Value=Y
EndSub
打开窗体运行后,在输入框中输入整数12,文本框Text1中输出的结果是()。
A:
1B:
2C:
3D:
4
120、下列Case语句中错误的是()。
A:
Case0to10B:
CaseIs>10
C:
CaseIs>10AndIs<50D:
Case3,5,Is>10
121、在VBA中,错误的循环结构是()。
A)DoWhile条件式B)DoUntil条件式
循环体循环体
LoopLoop
C)DoUntilD)Do
循环体循环体
Loop条件式LoopWhile条件式
122、某个窗体已编写以下事件过程。
打开窗体运行后,单击窗体,消息框的输出结果为()。
PrivateSubForm_Click()
DimkAsInteger,nAsInteger,mAsInteger
n=10:
m=1:
k=1
DoWhilek<=n
m=m*2
k=k+1
Loop
MsgBoxm
EndSub
A:
20B:
40C:
1024D:
2048
123、由“Fori=1To9Step-3”决定的循环结构,其循环体将被执行()。
A:
0次B:
1次C:
4次D:
5次
124、在窗体中使用一个文本框(名为x)接受输入值,有一个命令按钮test,事件代码如下:
PrivateSubtest_Click()
y=0
Fori=0ToMe!
x
y=y+2*i+1
Nexti
MsgBoxy
EndSub
打开窗体后,若通过文本框输入值为3,单击命令按钮,输出的结果是()。
A:
9B:
16C:
15D:
20
125、下面VBA程序段运行时,内层循环的循环次数是()。
Form=0to7step3
Forn=m-1tom+1
Nextn
Nextm
A:
9B:
6C:
3D:
5
126、设有如下过程:
x=1
Do
x=x+2
LoopUntil______
运行程序,要求循环体执行3次后结束循环,空白处应填的语句是()。
A:
x<=7B:
x<7C:
x>=7D:
x>7
127、在窗体上有一个命令按钮Commandl和一个文本框Textl,编写事件代码如下:
PrivateSubCommand1_Click()
Dimi,j,x
Fori=1To20step2
x=0
Forj=iTo20step3
x=x+1
Nextj
Nexti
Text1.Value=Str(x)
EndSub
打开窗体运行后,单击命令按钮,文本框中显示的结果是()。
A:
1B:
7C:
17D:
400
128、在过程定义中有语句:
PrivateSubGetData(ByValdataASInteger)
其中,“ByVal”的含义是()。
A:
传值调用B:
传址调用
C:
形式参数D:
实际参数
129、要想在过程Froc调用后返回形参x和y的变化结果,下列定义语句中正确的是()。
A:
SubProc(xasInteger,yasInteger)
B:
SubProc(ByValxasInteger,yasInteger)
C:
SubProc(xasInteger,ByValyasInteger)
D:
SubProc(ByValxasInteger,ByValyasInteger)
130、如下程序段定义了学生成绩的记录类型,由学号、姓名和三门课程成绩(百分制)组成。
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
(2)=88
S.score(3)=96
1二、判断题
11、()在代码调试时,使用Debug.Print语句显示指定变量结果的窗口是立即窗口。
12、()类模块是包含类的定义的模块,包含其属性和方法的定义。
13、()VBA包含长整型、布尔型、变体型和指针型等数据类型。
14、()Access数据库中的字节(Byte)数值类型在数据库中占1字节。
15、()函数Mid(“学生信息管理系统”,3,2)的结果是信息。
16、()在VBA中要判断一个字段的值是否为Nulll,应该使用的函数是isNull()。
17、()过程的定义不可以嵌套,但过程的调用可以嵌套。
18、()将一个数转换成相应字符串的函数是String。
19、()由“Fori=1To9Step-3”决定的循环结构,其循环体将被执行1次。
110、()如果在被调用的过程中改变了形参变量的值;但又不能影响实参变量本身,这种参数传递方式成为按值传递。
1三、填空题
11、Access的窗体或报表事件可以有两种方法来响应:
宏对象和。
12、模块包含了一个声明区域和一个或多个子过程(以开头)或函数过程(以开头)。
13、表达式3*3\3/3的结果为;表达式3*3/3\3的结果为。
14、若窗体名称为Forml,则将该窗体标题设置为“Access窗体”的语句是。
15、说明变量最长用的方法,是使用结构。
16、在VBA中要判断一个字段的值是否为Null,应该使用的函数是。
17、VBA中变量作用域分为3个层次,这2个层次是、和。
18、在模块的说明区域中,用关键字说明的变量是模块范围的变量;而用或关键字说明的变量是属于全局范围的变量。
19、要在程序或函数的实例间保留局部变量的值,可以用关键字代替Dim。
110、OnErrorResumeNext语句的含义是。
1四、简答题
1、请描绘出一个循环的执行流程图。
For循环变量=初值To终值[Step步长]
循环体
Next[循环变量]
2、请写出InputBox(提示信息[,标题][,默认值][,左边距][,上边距])语句个组成部分的含义。
五、案例题
考生文件夹下存在一个数据库文件"samp3.mdb",里面已经设计好表对象"tUser",同时还设计出窗体对象"fEdit"和"fUser"。
请在此基础上按照以下要求补充"fEdit"窗体的设计:
(1)将窗体中名称为"lRemark"的标签控件上的文字颜色改为"棕色"(棕色代码为128)、字体粗细改为"加粗"。
(2)将窗体边框改为"对话框边框"样式,取消窗体中的水平和垂直滚动条、记录选择器、导航按钮和分隔线;将窗体标题设置为"修改用户口令"。
(3)将窗体中名称为"tPass"和"tEnter"文本框中的内容以密码方式显示。
(4)按如下控件顺序设置Tab键次序:
"CmdEdit"→"tUser_1"→"tRemark_1"→"tPass"→"tEnter"
→"CmdSave"→"cmdquit"→窗体右侧列表(标题是修改系统用户)。
(5)按照以下窗体功能,补充事件代码设计。
窗体运行后,在窗体右侧显示可以修改的用户名、密码等内容的列表,同时在窗体左侧显示列表中所指用户的信息。
另外,在窗体中还有"修改"、"保存"和"退出"三个命令按钮,名称分别为"CmdEdit"、"CmdSave"和"cmdquit"。
当单击"修改"按钮后,在窗体左侧显示出该窗体右侧光标所指用户的口令信息,同时"保存"按钮变为可用;在"口令"和"确认口令"文本框中输入口令信息后,单击"保存"按钮,若在两个文本框中输入的信息相同,则保存修改后的信息,并先将"保存"命令按钮变为不可用,再将除用户名外的其他文本框控件和标签控件全部隐藏,最后将用户名以只读方式显示;若在两个文本框中输入的信息不同,则显示提示框,显示内容为"请重新输入口令!
",提示框中只有一个"确定"按钮。
单击窗体上的"退出"按钮,关闭当前窗体。
注意:
不允许修改窗体对象"fEdit"和"fUser"中未涉及的控件、属性和任何VBA代码;不允许修改表对象"tUser"。
只允许在"*****Add*****"与"*****Add*****"之间的空行内补充一条语句,不允许增删和修改其它位置已存在的语句。
第1章****习题解析与答案
15一、选择题
151、能被“对象所识别的动作”和“对象可执行的活动”分别称为对象的(B)。
A:
方法和事件B:
事件和方法
C:
事件和属性D:
过程和方法
解析:
事件是Access窗体或报表及其上的控件等对象可以“辨识”的动作:
方法描述了对象的行为。
关键字:
动作、活动、事件、属性、过程
152、下列数据类型中,不属于VBA的是(D)。
A:
长整型B:
布尔型C:
变体型D:
指针型
解析:
VBA基本数据类型的类型名称、类型标识和符号
数据类型
类型标识
符号
字节
Byte
整型
Integer
%
长整型
Long
&
单精度
Single
!
双精度
Double
#
货币
Currency
@
字符串
String
$
布尔
Boolean
日期
Date
变体
Variant
关键字:
数据、VBA、类型、符号
153、VBA程序的多条语句可以写在一行中,其分隔符必须使用符号(A)。
A:
:
B:
’C:
;D:
,
解析:
书写VBA语句时,若多句写在一行,则用:
隔开,若一句写在多行则用_(下划线)作为续行符。
关键字:
程序、多条语句、分隔符、符号
154、在调试VBA程序时,能自动被检查出来的错误是(A)。
A:
语法错误B:
逻辑错误
C:
运行错误D:
语法错误和逻辑错误
解析:
只能检查出语法错误,但逻辑错误是不能检查的。
例如,当输入了if和then,但如果没有endif,则会提示错误,但如果本应该是在i>10时运行循环体,但如果用了dountili>10…Loop,则循环体不会按要求运行。
关键字:
调试、自动、检查、错误
155、如果X是一个正的实数,保留两位小数、将千分位四舍五入的表达式是(B)。
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))
解析:
需要在千分位进行四舍五入操作,则最后结果肯定是精确到百分位的。
而Int只能取整,无法取小数部分,因此,必须对转换对象进行一个先乘以一百,再除以一百的操作。
而如果想在千分位进行四舍五入,又必须对于千分位上进行加5的操作。
这样,千分位上为4和4以下的,百分位不变,而千分位上5及5以上的,百分位将被加1。
关键字:
实数、保留、小数、四舍五入
156、用于获得字符串Str从第2个字符开始的3个字符的函数是(A)。
A:
Mid(Str,2,3)B:
Middle(Str,2,3)
C:
Right(Str,2,3)D:
Left(Str,2,3)
解析:
本题考察的是子串截取函数的用法,本题选A。
选项B:
ACCESS数据库中没有提供标准的库函数Middle;选项C、D:
Right和Left用法错误,这两个函数只有两个参数。
关键字:
获得、字符串、函数、子串截取函数
157、用于获得字符串S最左边4个字符的函数是(A)。
A:
Left(S,4)B:
Left(S,1,4)
C:
Leftstr(S,4)D:
Leftstr(S,0,4)
解析:
对字符串从左端取子串的函数是Left,Left函数的使用格式为Left(字符串,个数),故选A。
选项B:
函数引用错误;选项C:
ACCESS系统中没有Leftstr标准函数选项D:
ACCESS系统中没有Leftstr标准函数。
关键字:
获得、字符串、字符、函数
158、有如下语句
s=Int(100*Rnd)
执行完毕后,s的值是(A)。
A:
[0,99]的随机整数B:
[0,100]的随机整数
C:
[1,99]的随机整数D:
[1,100]的随机整数
解析:
int(m*rnd)(m为正整数)的取值范围为[0,m-1]
关键字:
语句、执行、随机整数
159、VBA表达式3*3\3/3的输出结果是(D)。
A:
0B:
1C:
3D:
9
解析:
VBA数学运算符的优先级如下:
+-Mod\*、/-(取负)
关键字:
VBA表达式、输出结果
1510、下列逻辑表达式中,能正确表示条件“x和y都是奇数”的是(C)。
A:
xMod2=1OryMod2=1B:
xMod2=0OryMod2=0
C:
xMod2=1AndyMod2=1D:
xMod2=0AndyMod2=0
解析:
要使x和y都是奇数,则x和y除以2的余数都必须是1。
关键字:
逻辑、表达式、正确、奇数、条件
1511、在使用Dim语句定义数组时,在缺省情况下数组下标的下限为(B)。
A:
1B:
0C:
任意数D:
系统自定义
解析:
不管建立一维数组还是二维数组,数组的下标下限总是0
关键字:
使用、定义、缺省、数组、下标
1512、下列数组声明语句中,正确的是(B)。
A:
DimA[3,4]AsIntegerB:
DimA(3,4)AsInteger
C:
DimA[3;4]AsIntegerD:
DimA(3;4)AsInteger
解析:
ACCESS定义二维数组的格式为Dim数组名([下标下限1to]下标上限1,[下标下限2to]下标上限2)as类型标识“下标下限to”可以省略,默认则以0为下限。
因此本题选B。
选项A:
定义数组应该用小括号不是方括号,故A错;选项C:
定义数组应该用小括号不是方括号,并且下标之间用逗号不是分号,故C错;选项D:
定义数组下标之间用逗号不是分号,故D错。
关键字:
数组、声明、语句、下限、标识
1513、在模块的声明部分使用“OptionBase1”语句,然后定义二维数组A(2to5,5),则该数组的元素个数为(A)。
A:
20B:
24C:
25D:
36
解析:
A(2to5,5)第一个元素为A(2,0),最后一个元素是A(5,5),第一维上有2~5四种变化,而第二维上有1~5五种变化,因素元素数为4×5,为20个。
关键字:
模块、声明、局域、二维数组、元素
1514、窗体Caption属性的作用是(A)。
A:
确定窗体的标题B:
确定窗体的名称
C:
确定窗体的边界类型D:
确定窗体的字体
解析:
对象常用属性:
标题:
Caption
控件来源:
ControlSource
是否可用:
Enabled
前景色:
Forecolor
图片:
Picture
控件值:
Value
记录源:
RecordSource
是否可见:
Visible
背景色:
BackColor
是否定:
Locked
上边距:
top
左边距:
Left
宽度:
Width
高度:
Height
字号:
FontSize
关键字:
窗体、属性、标题、名称、字体
1515、Access的控件对象可以设置某个属性来控制对象是否可用(不可用时显示为灰色状态)。
需要设置的属性是(C)。
A:
DefaultB:
Cancel
C:
EnabledD:
Visible
解析:
窗体或控件常用属性:
是否可用为enabled是否可见为visible。
关键字:
控件、对象、属性、控制
1516、假定窗体的名称为fmTest,则把窗体的标题设置为"AccessTest"的语句是(B)。
A:
Me="AccessTest"B:
Me.Caption="AccessTest"
C:
Me.Text="AccessTest"D:
Me.Name="AccessTest"
解析:
该题考察的是用代码动态设置对象属性,这需要ACCESS用户需要记住对象属性的的英文名称,以及对象属性的引用格式。
对于窗体的属性引用格式为:
格式1:
Form.属性名;格式2:
Me.属性名标题属性的英文名称是Caption;因此,把窗体的标题设置为"AccessTest"的语句是:
Me.Caption="AccessTest"或Form.Caption=="AccessTest",所以本题选B。
关键字:
窗
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Access数据库第7章 VBA编程基础习题 Access 数据库 VBA 编程 基础 习题