【计算机类职业资格】国家二级VB机试(控制结构)模拟试卷14及答案解析.doc
《【计算机类职业资格】国家二级VB机试(控制结构)模拟试卷14及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级VB机试(控制结构)模拟试卷14及答案解析.doc(11页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 VB机试(控制结构)模拟试卷 14及答案解析(总分:54.00,做题时间:90 分钟)一、选择题(总题数:27,分数:54.00)1.编写如下程序:Private Sub Commandl_Click() Dim a(10)As String s=“123456“:n=Len(s) For k=1 To n a(k)=Mid(s,k,1) Next k For i=1 To n2 t=a(i) a(i)=a(ni+1):a(ni+1)=t Next i For k=1 To n Print a(k); Next kEnd Sub 程序运行后,单击命令按钮 Commandl,输出结果为
2、(分数:2.00)A.654321B.123456C.654123D.1236542.窗体上有 1个名称为 Commandl的命令按钮;1 个名称为 List1、没有列表项的列表框。编写如下程序:Private Sub Commandl_Click() Dim x As String,s As String,temp As String Dim iAs Integer x=InputBox(“输入字符串“,“输入“) Ifx“Then For i=Len(x)To 1 Step-1 s=Mid(x,i,1) If S“Then temp=s+temp Else List1AddItem tem
3、p s=“:temp=“ End If Next List1AddItem temp Else MsgBox“输入内容为空!“ End IfEnd Sub 程序运行后,单击命令按钮 Commandl,并输入“Happy new year”,则在 Lis1中显示的内容为(分数:2.00)A.year new HappyB.Happy new yearC.raey wen yppaHD.yopaH wen raey3.设窗体上有一个文本框 Text1和一个命令按钮 Command1,并有以下事件过程:Private Sub Command1_Click()Dim s As String,ch As
4、 String S=“For k=1 To Len(Text1)ch=Mid(Text1,k,1)s=ch+s Next k Text1Text=s End Sub 程序执行时,在文本框中输入“Basic”,然后单击命令按钮,则 Text1中显示的是(分数:2.00)A.BasicB.cisaBC.BASICD.CISAB4.某人编写了如下程序,用来求 10个整数(整数从键盘输入)中的最大值:Private Sub Commandl_Click() Dim a(10)As Integer,max As Integer For k=1 To 10 a(k)=InputBox(“输入一个整数“)
5、Nextk max=0 For k=1 To 10 Ifa(k)max Then max=a(k) End If Next k Print maxEnd Sub 运行程序时发现,当输入 10个正数时,可以得到正确结果,但输入 10个负数时结果是错误的,程序需要修改。下面的修改中可以得到正确运行结果的是(分数:2.00)A.把 Ifa(k)max Then 改为 Ifa(k)max ThenB.把 max=a(k)改为 a(k)=maxC.把第 2个循环语句 For k=1 To 10改为 For k=2 To 10D.把 max=0改为 max=a(10)5.在窗体上画一个名称为 Textl的
6、文本框和一个名称为 Commandl的命令按钮,然后编写如下事件过程:Private Sub Commandl_Click() Dim iAs Integer,nAs Integer For i=0 To 50 i=i+3:n=n+1 If i10 Then Exit For Next Text1TeXt=Str(n)End Sub 程序运行后,单击命令按钮,在文本框中显示的值是(分数:2.00)A.2B.3C.4D.56.在窗体上画一个名为 Command1的命令按钮,然后编写如下代码:Option Base 1Private Sub Commandl_Click() Dim a a=Arr
7、ay(1,2,3,4):J=1 For i=4 To 1 Step1 s=s+a(i)*j:j=j*10 Next i Print SEnd Sub运行上面的程序,其输出结果是(分数:2.00)A.1234B.12C.34D.43217.在窗体上画一个名称为 Textl的文本框和一个名称为 Commandl的命令按钮,然后编写如下事件过程:Private Sub Commandl Click() Dim iAs Integer,nAs Integer For i=0 To 50 i=i+3:n=n+1 Ifi10 Then Exit For Next Text1Text=Str(n)End S
8、ub 程序运行后,单击命令按钮,在文本框中显示的值是(分数:2.00)A.2B.3C.4D.58.在窗体上画一个名称为 Commandl的命令按钮,然后编写如下程序: Option Base 1Private Sub Commandl_Ciek()d=0:c=10:x=Array(10,12,21,32,24)For i=1 To 5 Ifx(i)c Then d=d+x(i):c=x(i) Else d=dc End If Next i Print dEnd Sub 程序运行后,如果单击命令按钮,则在窗体上输出的内容为(分数:2.00)A.89B.99C.23D.779.在窗体上画 1个名称
9、为 Commandl的命令按钮,并编写如下事件过程: Private Sub Commandl_Click() x=1:s=0 For i=1 To 5 x=xi:s=s+x Next Print sEnd Sub 该事件过程的功能是计算(分数:2.00)A.s=1+2+3+4+5qB.s=1+12+13+14+15C.s=1+12!+13!+14!+15!D.s=1+1(1*2)+1(2*3)+1(3*4)+1(4*5)10.有如下程序:Private Sub Form_Click() Dim i As Integer,n As Integer For i=1 To 20 i=i+4:n=n
10、+i Ifi10 Then Exit For Next Print nEnd Sub 程序运行后,单击窗体,则输出结果是(分数:2.00)A.14B.15C.29D.3011.有以下通用过程:Function fun(N As Integer) s=0 For k=1 To N s=s+k*(k+1) Next k fun=sEnd Function该过程的功能是(分数:2.00)A.计算 N!B.计算 1+2+3+NC.计算 12233NND.计算 12+23+34+N(N+1)12.编写如下程序:Option Base 1Prirate Sub Commandl_Click() Dim a
11、 a=Array(1,2,3,4):s=0:j=1 For i=4 To 1 Step1 s=s+a(i)*j:j=j*10 Next i Print sEnd Sub 程序运行后,单击命令按钮 Commandl,输出结果为(分数:2.00)A.110B.123C.1234D.432113.在窗体上画一个名称为 Commandl的命令按钮,编写如下事件过程:Private Sub Commandl_Click()n=0For i=0 To 10 X=2*i一 1IfX Mod 3=0 Then n=n+1 Next i Print nEnd Sub运行程序,单击命令按钮,则窗体上显示的是(分数
12、:2.00)A.1B.3C.5D.714.窗体上有一个名称为 Textl的文本框,一个名称为 Commandl的命令按钮。要求编写一个程序,统计文本框中 0-9各数字字符的个数。某人编写如下程序:Prirate Sub Commandl_Click()Dim count(10)As Integer第 1个 For循环 For i=0 To 9 count(i)=0 Next s=Trim(Text1,Text) strLen=Len(s)第 2个For循环 For i=1 To strLen c=Mid(s,i,1) If c=“0“And c=“9“Then x=Val(c):count(i
13、)=count(i)+1 End IfNext第 3个 For循环 For i=0 To 9 Print Str(i),count(i) NextEnd Sub 运行程序后,发现不能实现题目的要求,程序应该进行的修改是(分数:2.00)A.将第 2个 For循环的初值改为 0B.将第 2个 For语句改为 For i=0 To 9C.去掉 x=Val(c)语句D.将 count(i)=count(i)+1改为 count(x)=count(x)+115.在窗体上画一个组合框,其名称为 Combol,然后编写如下事件过程:Private Sub Form_Load()CombolText=”1”
14、For i=1 To 10 Sum=Sum+i Next i CombolText=SumEnd Sub 程序运行后,输出结果为(分数:2.00)A.在组合框的编辑区中显示 1B.在组合框的编辑区中显示不定值C.在组合框的编辑区中显示 55D.出错信息16.下面循环语句中在任何情况下都至少执行一次循环体的是(分数:2.00)A.Do While条件 循环体 LoopB.While条件 循环体 WendC.Do 循环体 LoopUntil条件D.Do Until条件 循环体 Loop17.设 a、b 都是自然数,为求 a除以 b的余数,某人编写了以下函数:Function fun(a As In
15、teger,b As Integer)While ab a=ab Wend fun=aEnd Function 在调试时发现函数是错误的。为使函数能产生正确的返回值,应做的修改是(分数:2.00)A.把 a=ab 改为 a=baB.把 a=ab 改为 a=abC.把 While ab 改为 While abD.把 While ab 改为 While a=b18.设有如下事件过程:Private Sub Form_Click() x=0 While x10 x=x+1:x=x*x Wend Print x End Sub运行程序,单击窗体,输出结果是(分数:2.00)A.16B.19C.20D.
16、2519.下面程序在调试时出现了死循环 Private Sub Commandl_Click() n=InputBox(“请输入一个整数”) Do Ifn Mod 2=0 Then n=n+1 Else n=n+2 End If Loop Until n=1000End Sub(分数:2.00)A.只有输入的 n是偶数时才会出现死循环,否则不会B.只有输入的 n是奇数时才会出现死循环,否则不会C.只有输入的 n是大于 1000的整数时才会出现死循环,否则不会D.输入任何整数都会出现死循环20.假定有以下循环结构 Do Until条件表达式循环体 Loop则以下正确的描述是(分数:2.00)A.
17、如果“条件表达式”的值是 0,则一次循环体也不执行B.如果“条件表达式”的值不为 0,则至少执行一次循环体C.不论“条件表达式”的值是否为“真”,至少要执行一次循环体D.如果“条件表达式”的值恒为 0,则无限次执行循环体21.以下 Visual Basic不支持的循环结构是(分数:2.00)A.ForNextB.For EachNextC.DoLoopD.DoEnd Do22.在窗体上画两个文本框(名称分别为 Text1和 Text2)和一个命令按钮(名称为 Commandl),然后编写如下事件过程:Private Sub Commandl_Click() x=0 Do While x50 x
18、=(x+2)*(x+3):n=n+1 Loop TexttText=Str*(n):Text2Text=Str(x)End Sub 程序运行后,单击命令按钮,在两个文本框中显示的值分别为(分数:2.00)A.1和 0B.2和 72C.3和 50D.4和 16823.编写如下程序:Private Sub Commandl_Click()Dim x As Integer,y As Integer x=1:y=1 Do y=x*y Ify10 Then Exit Do Else x=x+3 End If Loop Until x=10 Print x;yEnd Sub 程序运行后,单击命令按钮 Co
19、mmandl,输出结果为(分数:2.00)A.1 1B.4 1C.4 2D.7 2824.编写如下程序:Private Sub Commandl_Click() Dim nAs Long,SAs String n=InputBox(“输入一个数“) Do While n0 S=S&n Mod 10:s=s&n10 Mod 10 n=n100 Loop Print sEnd Sub 程序运行后,单击命令按钮 Commandl,并输入数值 123456,则输出结果为(分数:2.00)A.654321B.563412C.642531D.61524325.下面程序计算并输出的是 Private Sub
20、 Commandl_Click()a=10:s=0 Do s=s+a*a*a:a=a1 Loop Until a=0 Print sEnd Sub(分数:2.00)A.13+23+33+103的值B.10!+3!+2!+1!的值C.(1+2+3+10)3的值D.10个 103的和26.窗体上有 1个名称为 Commandl的命令按钮,事件过程如下:Private Sub Commandl_Click() Dim x,y,z x=InputBox(“请输入第 1个整数“):y=InputBox(“请输入第 2个整数“) Do Until x=y Ifxy Then x=xy Else y=yx
21、End if Loop Print xEnd Sub 运行程序,单击命令按钮,并输入 2个整数 169和 39,则在窗体上显示的内容为(分数:2.00)A.11B.13C.23D.3927.窗体上有 1个名称为 Commandl的命令按钮,事件过程及函数过程如下:Private Sub Commandl _Click()Dim m As String m=InputBox(“请输入字符串“) Print pick_str(m)End SubPrivate Function pick_str(s As String)As String temp=“:i=1:sLen=Len(s) Do Whil
22、e i=sLen2 temp=temp+Mid(s,i,1)+Mid(s,sLen-i+1,1) i=i+1 Loop pick_str=tempEnd Function 运行程序,单击命令按钮,并在输入对话框中输入“basic”,则在窗体上显示的内容为(分数:2.00)A.bcaiB.cbiaC.bcaisD.cbias国家二级 VB机试(控制结构)模拟试卷 14答案解析(总分:54.00,做题时间:90 分钟)一、选择题(总题数:27,分数:54.00)1.编写如下程序:Private Sub Commandl_Click() Dim a(10)As String s=“123456“:n
23、=Len(s) For k=1 To n a(k)=Mid(s,k,1) Next k For i=1 To n2 t=a(i) a(i)=a(ni+1):a(ni+1)=t Next i For k=1 To n Print a(k); Next kEnd Sub 程序运行后,单击命令按钮 Commandl,输出结果为(分数:2.00)A.654321 B.123456C.654123D.123654解析:解析:本题中有三个 For循环,但是这三个循环之间没有嵌套关系,而是顺序的关系。在第一个循环中依次取出字符串 s中的每一个字符存入数组 a;第二个循环中将数组的第一个元素和最后一个元素互换
24、,第二个元素和倒数第二个元素互换以此类推完成数组的逆序;第三个循环输出数组元素。2.窗体上有 1个名称为 Commandl的命令按钮;1 个名称为 List1、没有列表项的列表框。编写如下程序:Private Sub Commandl_Click() Dim x As String,s As String,temp As String Dim iAs Integer x=InputBox(“输入字符串“,“输入“) Ifx“Then For i=Len(x)To 1 Step-1 s=Mid(x,i,1) If S“Then temp=s+temp Else List1AddItem temp
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 VB 机试 控制 结构 模拟 试卷 14 答案 解析 DOC
