1、计算机国考二级辅导AccessVBA其它编程题及参考答案VBA编程的真题链接一、选择题(1)在窗体中有一个文本框Text1,编写事件代码如下:Private Sub Form_Click() X=val(Inputbox(输入x的值) Y=1 If X0 Then Y = 2 Text1.Value = YEnd Sub打开窗体运行后,在输入框中输入整数12,文本框Text1中输出的结果是_。A)1 B)2 C)3 D)4(2)在窗体中有一个命令按钮Command1,编写事件代码如下:Private Sub Command1_Click() Dim s As Integer s = P(1)+
2、P(2) +P(3) +P(4) debug.Print sEnd SubPublic Function P(N As Integer) Dim Sum As Integer Sum = 0 For i = 1 To N Sum = Sum + i Next i P = SumEnd Function打开窗体运行后,单击命令按钮,输出结果是_。A)15 B)20 C)25 D)35(3)下列过程的功能是:通过对象变量返回当前窗体的Recordset属性记录集引用,消息框中输出记录集的记录(即窗体记录源)个数。Sub GetRecNum() Dim rs As Object Set rs = M
3、e.Recordset MsgBox _End Sub程序空白处应填写的是_。A)Count B)rs.Count C)RecordCount D)rs.RecordCount(4)在窗体上有一个命令按钮Command1和一个文本框Text1,编写事件代码如下: Private Sub Command1_Click() Dim i, j, x For i = 1 To 20 Step 2 x = 0 For j = i To 20 Step 3 x = x + 1 Next j Next i Text1.Value = Str(x) End Sub打开窗体运行后,单击命令按钮,文本框中显示的结
4、果是_。A)1 B)7 C)17 D)400(5)在窗体上有一个命令按钮Command1,编写事件代码如下:Private Sub Command1_Click() Dim d1 As Date Dim 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(6)下列程序段的功能是实现“学生”表中“年龄”字段值加1Dim Str As StringStr=_Docmd.RunSQL Str空白处应填入的程
5、序代码是_。A)年龄=年龄+1 B)Update 学生 Set 年龄=年龄+1C)Set 年龄=年龄+1 D)Edit 学生 Set 年龄=年龄+1(7)窗体中有命令按钮Command1和文本框Text1,事件过程如下: Function result(ByVal x As Integer) As Boolean If x Mod 2=0 Then result=True Else result=False End If End Function Private Sub Command1_Click() x=Val(InputBox(请输入一个整数) If _ Then Text1=Str(x
6、) & 是偶数. Else Text1=Str(x) & 是奇数. End If End Sub运行程序,单击命令按钮,输入19,在Text1中会显示“19是奇数.”。那么在程序的空白处应填写_。A)result(x)= 偶数 B)result(x)C)result(x)= 奇数 D)NOT result(x)(8)窗体中有命令按钮run34,对应的事件代码如下: Private Sub run34_Enter() Dim num As Integer,a As Integer,b As Integer,i As Integer For i=1 To 10 num=InputBox(请输入数据
7、:,输入) If Int(num/2)=num/2 Then a=a+1 Else b=b+1 End If Next i MsgBox(运行结果:a= & Str(a) & ,b= & Str(b) End Sub运行以上事件过程,所完成的功能是_。A)对输入的10个数据求累加和B)对输入的10个数据求各自的余数,然后再进行累加C)对输入的10个数据分别统计奇数和偶数的个数D)对输入的10个数据分别统计整数和非整数的个数(9)运行下列程序,输入数据8、9、3、0后,窗体中显示结果是_。 Private Sub Form_click() Dim sum As Integer,m As Inte
8、ger sum=0 Do m=InputBox(输入m) sum=sum+m Loop Until m=0 MsgBox sum End SubA)0 B)17 C)20 D)21(10)运行下列程序,结果是( )。Private sub Command32_click()f0 = 1: f1 = 1: k = 1Do While k = 5f = f0 + f1f0 = f1f1 = fk=k+1LoopMsgbox f= & fend subA) f=5 B) f=7 C) f=8 D) f=13(11)有如下事件程序,运行该程序后输出结果是( )。Private Sub command3
9、3_click()Dim y As Integer, y As Integerx = 1: y = 0Do Until y = 25y = y + x * xx = x + 1LoopMsgBox x= & x & ,y= & yEnd SubA) x = 1, y = 0 B) x = 4, y = 25 C) x = 5, y = 30 D) 输出其他结果(12)下列程序的功能是计算sum=1+(1+3)+(1+3+5)+(1+3+5+39),为保证程序正确完成上述功能,空白处应填入的语句是( )。Private Sub Command34_click()t = 0: m = 1: sum
10、 = 0Dot = t + msum = sum + tm=( )Loop While m i B)i max D) num max(16)若有如下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 a As Single Dim b As Single a = 5 : b = 4 sfun( a, b ) MsgBox a & chr(10) + chr
11、 (13) & b End Sub打开窗体运行后,单击命令按钮,消息框中有两行输出,内容分别为A) 1和1 B)1.25和1 C)1.25和4 D)5和4(17)运行下列程序,显示的结果是 Private Sub Command34_Click() i = 0 Do i = i + 1 Loop While i sqr(I) Then Debug.Print I; Next IEnd SubA) 1 5 7 9 B)4 6 8 C) 3 5 7 9 D) 2 3 5 7二、填空题(1)子过程Test显示一个如下所示44的乘法表。1*1=1 1*2=2 1*3=3 1*4=42*2=4 2*3=
12、6 2*4=83*3=9 3*4=124*4=16请在空白处填入适当的语句使子过程完成指定的功能。Sub Text() Dim i,j As Integer For i=1 To 4 For j=1 To 4 If 【1】 Then Debug.Print i & * & j & = & i*j & Space(2), End If Next j Debug.Print Next iEnd sub(2)有“数字时钟”窗体如下:在窗口中有按钮“开/关时钟”,单击该按钮可以显示或隐藏时钟。其中按钮的名称为“开关”,显示时间的文本框名称为“时钟”,计时器间隔已设置为500。请在空白处填入适当的语句,
13、使程序可以完成指定的功能。Dim flag As IntegerPrivate Sub Form_Load() flag=1End SubPrivate Sub Timer1_Timer() “计时器触发”事件过程 时钟=Time 在“时钟”文本框中显示当前时间End SubPrivate Sub 开关_Click() “开关”按钮的单击事件过程 If 【2】 Then 时钟.Visible=False flag=0 Else 时钟.Visible=True flag=1 End IfEnd Sub(3)窗体中有两个命令铵钮:“显示”(控件名为cmdDisplay)和“测试”(控件名为cmdT
14、est)。当单击“测试”按钮时,执行的事件功能是:首先弹出消息框,若单击其中的“确定”按钮,则隐藏窗体上的“显示”按钮;否则直接返回到窗体中。请在空白处填入适当的语句,使程序可以完成指定的功能。 Private Sub cmdTest_Click() Answer= 【3】 (隐藏按钮?,vbOKCancel+vbQuestion, Msg) If Answer=vbOK Then Me!cmdDisplay.Visible= 【4】 End If End Sub(4)对窗体test上文本框控件txtAge中输入的学生年龄数据进行验证。要求:该文本框中只接受大于等于15且小于等于30的数值数据
15、,若输入超出范围则给出提示信息。该文本控件的BeforeUpdate事件过程代码如下,请在空白处填入适当的语句,使程序可以完成指定的功能。Private Sub txtAge_BeforeUpdate(Cancel As Integer) If Me!txtAge=or 【5】 (Me!txtAge) Then 数据为空时的验证 MsgBox 年龄不能为空!,vbCritical, 警告 Cancel=True 取消BeforeUpdate事件 ElseIf IsNumeric(Me!txtAge)=False Then 非数值数据输入的验证 MsgBox 年龄必须输入数值数据!, vbCri
16、tical, 警告 Cancel=True 取消BeforeUpdate事件 ElseIf Me!txtAge15 Or Me!txtAge 【6】 Then 非法范围数据输入的验证 MsgBox 年龄为15-30范围数据!, vbCritical, 警告 Cancel=True 取消BeforeUpdate事件 Else 数据验证通过 MsgBox 数据验证OK!,vbInformation, 通告 End IfEnd Sub(5)在窗体中有两个文本框分别为Text1和Text2,一个命令按钮Command1,编写如下两个事件过程:Private Sub Command1_Click() a
17、 = Text1.Value + Text2.Value MsgBox aEnd SubPrivate Sub Form_Load() Text1.Value = Text2.Value = End Sub程序运行时,在文本框Text1中输入78,在文本框Text2中输入87,单击命令按钮,消息框中输出的结果为_【7】 。(6)某次大奖赛有7个评委同时为一位选手打分,去掉一个最高分和一个最低分,其余5个分数的平均值为该名参赛者的最后得分。请填空完成规定的功能。sub command1_click() Dim mark!, aver!, i%, max1!, min1! aver = 0 For
18、 i =1 To 7 mark = InputBox(请输入第&i&位评委的打分) If i = 1 Then max1 = mark : min1 = mark Else If mark max1 Then 【8】 End If End If 【9】 Next i aver = (aver - max1 - min1) / 5 MsgBox aver End Sub(7)在窗体文本框Text1中输入“456AbC”后,立即窗口上输出的结果是 【10】 。 Private Sub Text1_KeyPress(KeyAscii As Integer) Select Case KeyAscii
19、Case 97 To 122 Debug.Print UCase(Chr(KeyAscii); Case 65 To 90 Debug.Print LCase(Chr(KeyAscii); Case 48 To 57 Debug.Print Chr(KeyAscii); Case Else KeyAscii = 0 End Select End Sub(8)在窗体上有一个命令按钮Command1,编写事件代码如下: Private Sub Command1_Click() Dim a(10), p(3) As Integer k = 5 For i = 1 To 10 a(i) = i * i
20、 Next i For i = 1 To 3 p(i) = a(i * i) Next i For i = 1 To 3 k = k + p(i) * 2 Next i MsgBox k End Sub打开窗体运行后,单击命令按钮,消息框中输出的结果是 【11】 。(9)下列程序的功能是找出被5、7除,余数为1的最小的5个正整数。请在程序空白处填入适当的语句,使程序可以完成指定的功能。 Private Sub Form_Click() Dim Ncount%, n% Ncount = 0 n = 1 Do n = n + 1 If 【12】 Then Debug.Print n Ncount
21、= Ncount + 1 End If Loop Until Ncount = 5 End Sub(10)以下程序的功能是在立即窗口中输出100到200之间所有的素数,并统计输出素数的个数。请在程序空白处填入适当的语句,使程序可以完成指定的功能。 Private Sub Command2_Click() Dim i%, j%, k%, t% t为统计素数的个数 Dim b As Boolean For i = 100 To 200 b = True k = 2 j = Int(Sqr(i) Do While k = j And b If i Mod k = 0 Then b = 【13】 En
22、d If k = 【14】 Loop If b = True Then t = t + 1 Debug.Print i End If Next i Debug.Print t=; t End Sub(11)下列程序的功能是求方程:x2+y2=1000的所有整数解。请在空白处填入适当的语句,使程序完成指定的功能。 Private Sub command1_Click() Dim x as integer, y as integer For x=-34 To 34 For y=-34 To 34 If 【15】 Then Debug.Print x,y End If Next y Next x E
23、nd Sub(12)下列程序的功能是求算式:1+1/2!+1/3!+1/4!+前10项的和(其中n!的含义是n的阶乘)。请在空白处填入适当的语句,使程序完成指定的功能。 Private Sub Command1_Click() Dim i as integer,s as single,a as single a=1:s=0 For i=1 To 10 a= 【16】 s=s+a Next i Debug. Print 1+1/2!+1/3!+.=;s End Sub(13)在窗体中有一个名为Command12的命令按钮,Click事件功能是:接收从键盘输入的10个大于0的不同整数,找出其中的最
24、大值和对应的输入位置。请在空白处填入适当语句,使程序可以完成指定的功能。 Private Sub Command12_Click() max=0 maxn=0 For i=1 To 10 num=Val(InputBox(请输入第 & i & 个大于0的整数:) If 【17】 Then max=num maxn= 【18】 End If Next i MsgBox(最大值为第 & maxn & 个输入的 & max) End Sub(14)运行下列程序,输入如下两行:Hi,I am here.弹出的窗体中的显示结果是 【19】 。 Private Sub Command11_click()D
25、im abc As String, sumAs Stringsum = Doabc = inputbox(请输入abc)If Right(abc, 1) = . Then Exit Dosum = sum + abcLoopMsgBox sumEnd Sub(15)运行下列程序,窗体中的显示结果是:x= 【20】 。Option Compare DatabaseDim x As IntegerPrivate Sub Form_load()x = 3End SubPrivate Sub Command11_click()Static a As IntegerDim b As Integerb = x 2fun1 x, bfun1 x, bMsgBox x= & xEnd SubSub fun1(ByRef y As Integer, ByVal z As Integer)y = y + zz =
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1