【计算机类职业资格】国家二级VB机试(过程)模拟试卷7及答案解析.doc
《【计算机类职业资格】国家二级VB机试(过程)模拟试卷7及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级VB机试(过程)模拟试卷7及答案解析.doc(17页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 VB 机试(过程)模拟试卷 7 及答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:43,分数:86.00)1.假定有如下事件过程: Private Sub Form Click() Dim X As Integer,n As Integer x=1:n=0 Do While xA.81 4B.56 3C.28 1D.243 52.以下叙述中错误的是(分数:2.00)A.标准模块文件的扩展名是basB.标准模块文件是纯代码文件C.在标准模块中声明的全局变量可以在整个工程中使用D.在标准模块中不能定义过程3.下面不能在信息框中输出“VB”的是(分数:2.00)A.M
2、sgBox“VB“B.x=MagBox(”VB”)C.MsgBox(“VB“)D.Call MsgBox”VB”4.以下关于过程的叙述中,错误的是(分数:2.00)A.在 Sub 过程中不能再定义 Sub 过程B.事件过程也是 Sub 过程C.过程调用语句的形参个数必须与实参个数相同D.函数过程一定有返回值5.设子程序过程定义的首部为:Public Sub S(X As Integer,YAs Single)则以下正确的调用形式为(分数:2.00)A.Call S 5,48B.Call Sub(5,48)C.Sub 5,48D.S 5;486.在窗体上画两个标签和一个命令按钮,其名称分别为 L
3、abel1、Label2 和 command1,然后编写如下程序:Private Sub func(L As Label) LCaption=”1234”End SubPrivate Sub Form Load() Label1Caption=”ABCDE” Label2Caption=10End SubPrivate Sub Commandl_Click() a=Val(Label2Caption) Call func(Labell) Label2Caption=aEnd Sub 程序运行后,单击命令按钮,则在两个标签中显示的内容分别为(分数:2.00)A.ABCD 和 10B.1234 和
4、 100C.ABCD 和 100D.1234 和 107.设有如下 Commandl 的单击事件过程及 fun 过程:Private Sub Command1_Click() Dim X As Integer x=Val(InputBox(”请输入一个整数”) fun(x)End SubPrivate Sub fun(x As Integer) Ifx Mod 2=0 Then fun(x2) Print x;End Sub 执行上述程序,输入 6,结果是(分数:2.00)A.3 6B.6 3C.6D.程序死循环8.编写如下程序: Private Sub Commandl_Click() Di
5、m str1 As String,str2 As String str1=InputBox(”输入一个字符串”) subf str1,str2:Print str2 End Sub Sub subf(s1 As String,s2 As String) Dim temp As String Static i As Integer i=i+1 temp=Mid(sl,i,1) Iftemp=10 Then t=x+1 Else t=x+2 End If f=tEnd Function 运行程序,则窗体上显示的是(分数:2.00)A.38B.49C.61D.7014.假定有以下通用过程: Func
6、tion Fun(n As Integer)As Integer x=n*n:Fun=x-11 End Function 在窗体上画一个命令按钮,其名称为 Commandl,然后编写如下事件过程: Private Sub Commandl_Click() Dim i As Integer For i=1 To 2 y=Fun(i)Print y: Next i End Sub 程序运行后,单击命令按钮,在窗体上显示的内容是(分数:2.00)A.1 3B.10 8C.-10 7D.0 515.求 1!+2!+10!的程序如下:Private Function s(x As Integer) f=
7、1 For i=1 To x f=f*i Next s=fEnd FunctionPrivate Sub Commandl_Click() Dim i As Integer,y As Long For i=1 To 10 ( ) Next Print yEnd Sub 为实现功能要求,程序的括号中应该填入的内容是(分数:2.00)A.Call s(i)B.Call sC.y=y+s(i)D.y=y+s16.在窗体上画一个名称为 Commandl 的命令按钮,并编写如下程序:Function Fun(x) y=0 If xA.10B.100C.110D.出错信息17.设有如下事件过程:Priva
8、te Sub Commandl_Click()Dim a a=Array(12,3,8,5,10,3,5,9,2,4) For k=1 To 9 Print fun(a(k-1),a(k);”; Next kEnd SubPrivate Function fun(x,y)As Integer Do While x=y x=x-y Loop fun=xEnd Function 程序运行时的输出结果是(分数:2.00)A.4 0 1 0 3 0 0 4 0B.0 3 3 5 1 3 5 1 2C.9 -5 3 -5 7 -2 -4 7 -2D.9 3 3 5 7 3 5 7 218.设有如下函数:
9、 Function DelSpace(ch As String)As Integer Dim n,st$,c$ st=”:n=0 For k=1 To Len(ch) c=Mid(ch,k,1) If c0 Then P=True Else P=False End If End Function 关于上述程序,以下叙述中正确的是(分数:2.00)A.程序功能是统计 1-500 范围内能被 7 整除的整数个数B.Commandl_Click 事件过程中 If 语句的条件表达式不完整C.Function 过程定义有误,函数过程 P 的名称与该过程中的变量名 P 相同D.函数过程 P 的返回值为 B
10、oolean 类型20.设有下面程序代码: Private Sub Command1_Click() Dim str As String,ch As String str=”Visual Basic Programming”:ch=”a” n=fun(ch,str):Print str,n End Sub Private Function fun(ch As String,str As String)As Integer Dim strbuf As String,c As String,n As Integer For k=1 To Len(str) c=Mid$(str,k,1) Ifc0)
11、 Print n Mod 10:n=n10 Wend PrintEnd Sub 此程序功能是:输入 2 个正整数,反序输出这 2 个数的每一位数字,再反序输出这 2 个数之和的每一位数字。例如:若输入 123 和 234,则应该输出: 3 2 1 4 3 2 7 5 3 但调试时发现只输出了前 2 行(即 2 个数的反序),而未输出第 3 行(即 2 个数之和的反序),程序需要修改。下面的修改方案中正确的是(分数:2.00)A.把过程 pro 的形式参数 n As Integer 改为 ByVal n As IntegerB.把 Call pro(a+b)改为 pro a+bC.把 n=n10
12、 改为 n=n10D.在 pro b 语句之后增加语句 c=a+b再把 Call pro(a+b)改为 pro c27.有下面程序代码: Private Sub Commandl_Click() Dim x As Integer,s As Integer x=1 For k=1 To 3 x=x+1:proc x:s=s+x Next k Print s End SubPrivate Sub proc(ByVal a As Integer) Static x As Integer x=x+1:a=a+xEnd Sub 程序运行后,单击命令按钮 Commandl,输出结果是(分数:2.00)A.
13、6B.9C.15D.1928.编写如下程序: Private Sub Commandl_Click()Dim x As Integer x=10 Print funl(x,12)+x End Sub Private Function fun l(m As Integer,n As Integer)As Integer Ifn10 Then m=n fun1=m+n End Function 程序运行后,单击命令按钮 Commandl,输出结果为(分数:2.00)A.30B.32C.34D.3629.在窗体上画一个名称为 Commandl 的命令按钮,再画两个名称分别为 Label1、Label
14、2 的标签,然后编写如下程序代码:Private X As IntegerPrivate Sub Commandl_Click() X=5:Y=3 Call proc(X,Y) LabellCaption=XPrivate Sub proc(a As Integer, ByVal b As Integer) X=a*a:Y=b+bEnd Sub Label2Caption=Y End Sub 程序运行后,单击命令按钮,则两个标签中显示的内容分别是(分数:2.00)A.25 和 3B.5 和 3C.25 和 6D.5 和 630.设有如下通用过程: Public Function f(x As
15、Integer) Dim YAs Integer x=20:y=2:f=x*y End Function 在窗体上画一个命令按钮,其名称为 Commandl,然后编写如下事件过程: Private Sub Commandl_Click() Static x As Integer x=10:y=5:y=f(x)Print x:y End Sub 程序运行后,如果单击命令按钮,则在窗体上显示的内容是(分数:2.00)A.10 5B.20 40C.20 5D.10 4031.命任何一个滚动条滚动框件过程如下:Private Sub Commandl_Click() x=10 Print fix)En
16、d SubPrivate Function f(y As Integer) f=y*yEnd Function 运行上述程序,如下叙述中正确的是:(分数:2.00)A.程序运行出错,x 变量的类型与函数参数的类型不符B.在窗体上显示 100C.函数定义错,函数名 f 不能又作为变量名D.在窗体上显示 1032.编写如下程序: Private Sub Commandl_Click() Dim x As Integer,y As Integer x=InputBox(”输入第一个数”):y=InputBox(”输入第二个数”) Call f(x,y) Print x,y End Sub Sub f
17、(a As Integer,ByVal b As Integer) a=a*2:x=a+b:b=b+100 End Sub 程序运行后,单击命令按钮Command1,并输入数值 10 和 15,则输出结果为(分数:2.00)A.10 115B.20 115C.35 15D.20 1533.现有程序如下:Option Base 1Private Sub Form_Click() Dim x(5,6)As Integer,y(5)As Integer For i=1 To 5 For i=1 To 6 x(i,j)=Int(Rnd*9+1) Next i Next i Call f(5,6,x,y
18、) For i=1 To 5 Print y(i); Next iEnd SubSub f(m As Integer,n As Integer, a() As Integer,b()As Integer) For i=1 To m b(i)=0 For i=1 To n b(i)=b(i)+a(i,j) Next j Next iEnd Sub 关于上述程序,以下叙述中正确的是(分数:2.00)A.调用过程语句有错,参数不匹配B.程序有错,数组下标越界C.v 数组中保存的是 x 数组每行数据之和D.x 数组中数据的取值范围是 1-1034.窗体上有一个名称为 Commandl 的命令按钮,一个
19、名称为 Textl 的文本框。编写如下程序:Private Sub Command1_Click() Dim x As Integer x=Val(InputBox(”输入数据”) Text1=Str(x+fun(x)+fun(x)End SubPrivate Function fun(ByRef n As Integer) If n Mod 3=0 Then n=n+n Else n=n*n End If fun=nEnd Function 对于上述程序,以下叙述中错误的是(分数:2.00)A.语句 fun=n 有错,因为 n 是整型,fun 没有定义类型B.运行程序,输入值为 5 时,文本
20、框中显示 655C.运行程序,输入值为 6 时,文本框中显示 42D.ByRef 表示参数按址传递35.窗体上有一个名称为 Commandl 的命令按钮,并有如下程序代码:Private Sub Commandl_Click() Static a a=1:b=2:c=3 Call f(a,b,c) Print a:b:cEnd SubSub ffByVal x,ByRefy,z) x=x+1:y=y+1:z=z+1End Sub 运行程序,单击命令按钮,窗体上显示的是(分数:2.00)A.1 3 3B.1 3 4C.2 3 3D.2 3 436.窗体上有一个名称为 Commandl 的命令按钮
21、,其单击事件过程如下: Private Sub Command1_Click() Dim x As Integer,y As Integer Static z As Integer x=3:y=5:z=y Call f(x,y,z) Print x;y;z End Sub Private Sub f(ByVal a As Integer,ByRef b As Integer,c As Integer) a=a+a:b=b+b:c=c+c End Sub 运行程序,单击命令按钮时,3 个标签中显示的内容分别是(分数:2.00)A.3 5 5B.3 5 10C.3 10 5D.3 10 1037.
22、窗体上有一个名称为 Commandl 的命令按钮,其单击事件过程及相关的代码如下: Private Sub Command1_Click() Dim x As Integer,V As Integer x=Val(InputBox(”输入整数”) Y=Val(InputBox(”输入整数”) Print Str(fun(x,y)+x+y) End Sub Private Function fun(ByRef m As Integer,ByVal n As Integer) m=m*m:n=n+n:fun=m+n End Function 运行程序,单击命令按钮时,出现输入对话框,分别输入 3、
23、5,则窗体上显示的是(分数:2.00)A.27B.28C.33D.3838.设有如下程序: Private Sub Inv(ByVal xStr As String,yStr As String) Dim tStr As String Dim L As Integer L=Len(xStr) Do While L=1 tStr=tStr+Mid(xStr,L,1):L=L-1 Loop yStr=tStr End Sub Private Sub Form_Click() Dim S1 As String,S2 As String S1=”abcdePInv S1S2 Print S2 End
24、Sub 运行程序,单击窗体,输出结果为(分数:2.00)A.abcdefB.afbecdC.fedcbaD.defabc39.设有如下程序: Private Sub sV(ByVal m As Integer,n As Integer) m=m*2:n=n 一 5:Print m:n End Sub Private Sub Form_Click() Dim x As Integer,y As Integer x=10:y=15:sV x,y Print x;y End Sub 运行程序,单击窗体,输出结果为(分数:2.00)A.20 10 10 10B.10 15 20 10C.20 15 1
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 VB 机试 过程 模拟 试卷 答案 解析 DOC
