vba编程练习题+近年真题.doc_第1页
vba编程练习题+近年真题.doc_第2页
vba编程练习题+近年真题.doc_第3页
vba编程练习题+近年真题.doc_第4页
vba编程练习题+近年真题.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VBA编程练习题1、假定有以下循环结构Do Until 条件循环体Loop则正确的叙述是A)如果“条件”值为0,则一次循环体也不执行B)如果“条件”值为0,则至少执行一次循环体C)如果“条件”值不为0,则至少执行一次循环体D)不论“条件”是否为“真”,至少要执行一次循环体2.设有以下窗体单击事件过程:Private Sub Form_Click( )a = 1For i = 1 To 3Select Case iCase 1, 3a = a + 1Case 2, 4a = a + 2End SelectNext iMsgBox aEnd Sub打开窗体运行后,单击窗体,则消息框的输出内容是 5 。3. 在窗体中添加一个命令按钮(名为Command1)和一个文本框(名为text1),然后编写如下事件过程:Private Sub Command1_Click( )Dim x As Integer, y As Integer, z As Integerx = 5 : y = 7 : z = 0Me!Text1= Call p1(x, y, z)Me!Text1 =zEnd SubSub p1(a As Integer, b As Integer, ByVal c As Integer)c = a + bEnd Sub打开窗体运行后,单击命令按钮,文本框中显示的内容是 。4. 以下程序段运行结束后,变量x的值为 x=2 y=4 Do x=x*y y=y+1 Loop While y=10 或7 运行程序,要求循环体执行3次后结束循环,在空白处填入适当语句。7. 在Access中,DAO的含义是: A. 开放数据库互连应用编程接口 B. 数据库访问对象 C. Active数据对象 D. 数据库动态链接库8. 在Access中,ADO的含义是: A. 开放数据库互连应用编程接口 B. 数据库访问对象 C. Active数据对象 D. 数据库动态链接库9. 在窗体中有一个标签Lb1和一个命令按钮Command1,事件代码如下: Option Compare Database Dim a As String*10 Private Sub Command1_Click() a=1234 b=Len(a) Me.Lb1.Caption=b End Sub 打开窗体后单击命令按钮,窗体中显示的内容是 A. 4 B. 5 C. 10 D. 4010. 在窗体中使有一个文本框(名为n)接受输入的值,有一个命令按钮run,事件 代码 如下: Private Sub run_Click() result= For i=1 To Me!n For j=1 To(Me!n)+1-i result=result+* Next j result=result+Chr(13)+Chr(10) Next i MsgBox result End Sub 打开窗体后,如果通过文本框输入的值为4,单击命令按钮后输出的图型是 D 11. 在VBA中双精度的类型标识是 A. Integer B. Single C. Double D. Variant12. 运行下列过程,当输入一组数据:10,20,50,80,40,30,90,100,60,70,输出的结果应该是Sub p1( ) Dim i, j, arr(11) As Integer k = 1 while k arr(j) Then temp = arr(i) arr(i) = arr(j) arr(j) = temp End If Debug.Print arr(i) Next i End SubA)无序数列 B)升序数列 C)降序数列 D)原输入数列13. 下列程序的功能是计算N = 2+(2+4)+(2+4+6)+(2+4+6+40)的值。Private Sub Command34_Click( ) t = 0 m = 0 sum = 0 Dot = t+msum = sum + t m = Loop while m 41 MsgBox “Sum = “ & sum End Sub空白处应该填写的语句是A)t + 2 B)t + 1 C)m + 2 D)m + 114. 已知:Dim rs As new ADODB.RecordSet, 在程序中为了得到记录集的下一条记录,应该使用的方法是rs.MoveNext。15.在VBA中,没有显式声明或使用符号来定义的变量,其数据类型默认是 Variant。16.下列程序的功能是:输入10个整数,逆序后输出,请在程序空白处填入适当语句使程序完成指定的功能。Private Sub Command2_Click( ) Dim i, j, k, temp, arr(11) As Integer Dim result As String For k = 1 To 10 arr(k) = Val(InputBox(“请输入第” &k&“个数:”, “数据输入窗口”) Next k i = 1 j = 10 Do temp = arr(i) arr(i) = arr(j) arr(j) = temp i = i + 1 j = j-1 Loop While ij result = “” For k = 1 To 10 result = result & arr(k)&Chr(13) Next k MsgBox resultEnd Sub17.已经设计出一个表格式窗体,可以输出教师表的相关字段信息,请按照以下功能要求补充设计:改变当前记录,消息框弹出提示“是否删除该记录?”,单击“是”,则直接删除该当前记录;单击“否”,则什么都不做,其效果图如下:单击“退出”按钮,关闭窗体Private Sub btnCancel_Click( ) Docmd.close End Sub表格式窗体当前记录变化时触发Private Sub Form_Current( ) If MsgBox(是否删除该记录?, vbQuestion + vbYesNo, 确认 ) = vbYes Then Me.recordset.delete End IfEnd Sub18. 如果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)2011.03(27)下列给出的选项中,非法的变量名是 A)Sum1 B)Integer_2 C)Rem D)Form1 (28)如果在被调用的过程中改变了形参变量的值;但又不影响实参变量本身,这种参数传递方式称为 A)按值传递 B)按地址传递 C)ByRef传递 D)按形参传递(29)表达式“B=INT(A+0.5)”的功能是 A)将变量A保留小数点后1位 B)将变量A四舍五入取整 C)将变量A保留小数点后5位 D)舍去变量A的小数部分 (30)VBA语句“Dim NewArray(10) as Integer”的含义是 A)定义10个整型数构成的数组NewArray B)定义11个整型数构成的数组NewArray C)定义1个值为整型数的变量NewArray(10) D)定义1个值为10的变量NewArray(31)运行下列程序段,结果是 For m=10 to 1 step 0 k=k+3 Next m A)形成死循环 B)循环体不执行即结束循环 C)出现语法错误 D)循环体执行一次后结束循环 (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 (33)有如下事件程序,运行该程序后输出结果是 Private Sub Command33_Click() Dim x As Integer,y As Integer x=1:y=0 Do Until y=25 y=y+x*x 1,5,14,30x=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)输出其他结果 (35)下列程序的功能是返回当前窗体的记录集 Sub GetRecNum() Dim rs As Object Set rs=_ MsgBox rs.RecordCount End Sub 为保证程序输出记录集(窗体记录源)的记录数,空白处应填入的A)Recordset B)Me.Recordset C)RecordSource D)Me.RecordSource (8)运行下列程序,窗体中的显示结果是:x=_。Option Compare DatabaseDim x As IntegerPrivate Sub Form_Load() x = 3End SubPrivate Sub Command11_Click() Static a As Integer Dim b As Integer b = x 2 fun1 x, b 3+9,9 fun1 x, b 12+9,9 MsgBox x = & xEnd SubSub fun1(ByRef y As Integer, ByVal z As Integer) y = y + z z = y - zEnd Sub(13)秒表窗体中有两个按钮(开始/停止按钮bOK,暂停/继续按钮bPus);一个显示计时的标签lNum;窗体的计时器间隔设为100,计时精度为0.1秒。 要求:打开窗体如图1所示:第一次单击开始/停止按钮,从0开始滚动显示计时(见图2);10秒时单击暂停/继续按钮,显示暂停(见图3),但计时还在继续;若20秒后再次单击暂停/继续按钮,计时会从30秒开始继续滚动显示;第二次单击开始/停止按钮,计时停止,显示最终时间(见图4)。若再次单击开始/停止按钮可重新从0开始计时。相关的事件程序如下。请在空白处填入适当的语句,使程序可以完成指定的功能。Option Compare DatabaseDim flag, pause As BooleanPrivate Sub bOK_Click() flag = _ not flag _ Me!bOK.Enabled = True Me!bPus.Enabled = flagEnd SubPrivate Sub bpus_Click() pause = Not pause Me!bOK.Enabled = Not Me!bOK.EnabledEnd SubPrivate Sub Form_Open(Cancel As Integer) flag = False pause = False Me!bOK.Enabled = True Me!bPus.Enabled = FalseEnd SubPrivate Sub Form_Timer() Static count As Single If flag = True Then If pause = False Then Me!lNum.Caption = Round(count, 1) End If count = _ count+0.1 _ Else count = 0 End IfEnd Sub2012.0329)下列关于VBA事件的叙述中,正确的是A)触发相同的事件可以执行不同的事件过程B)每个对象的事件都是不相同的C)事件都是由用户操作触发的D)事件可以由程序员定义(30)下列不属于类模块对象基本特征的是A)事件 B)属性 C)方法 D)函数(31)用来测试当前读写位置是否达到文件末尾的函数是A)EOF B)FileLen C)Len D)LOF(32)下列表达式中,能够保留变量x整数部分并进行四舍五入的是A)Fix(x) B)Rnd(x) C)Round(x) D)Int(x)(33)运行下列过程,当输入一组数据:10,20,50,80,40,30,90,100,60,70,输出的结果应该是Sub p1( ) Dim i, j, arr(11) As Integer k = 1 while k arr(j) Then temp = arr(i) arr(i) = arr(j) arr(j) = temp End If Debug.Print arr(i) Next i End SubA)无序数列 B)升序数列 C)降序数列 D)原输入数列(34)下列程序的功能是计算N = 2+(2+4)+(2+4+6)+(2+4+6+40)的值。Private Sub Command34_Click( ) t = 0 m = 0 sum = 0 Dot = t+msum = sum + t m = Loop while m 0 n=n*10+m Mod 10 取个位 个位*10+十位,(个位*10+十位)*10+百位, m=m10 去掉个位 留下前面的, Loop I

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论