欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【计算机类职业资格】国家二级VB机试(控制结构)模拟试卷18及答案解析.doc

    • 资源ID:1332976       资源大小:62.50KB        全文页数:11页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】国家二级VB机试(控制结构)模拟试卷18及答案解析.doc

    1、国家二级 VB机试(控制结构)模拟试卷 18及答案解析(总分:62.00,做题时间:90 分钟)一、选择题(总题数:31,分数:62.00)1.在下面语句或函数中,不能描述选择结构的是( )。(分数:2.00)A.If语句B.If函数C.Select Case语句D.While语句2.编写如下程序:Private Sub CommandlClick()Dim a As Integer,b As Integera=3b=2If a*b10 Then b=b+1 Else b=blPrint ba0End Sub 程序运行后,单击命令按钮 Command1,输出结果为( )。(分数:2.00)A.

    2、TrueB.FalseC.1D.一 13.编写如下程序:Private Sub CommandlClick()Dim score As Integerscore=86If score85 Thenr=1ElseIf score60 Thenr=2Elser=0End IfPrint rEndSub程序运行后,单击命令按钮 Command1,输出结果为( )。(分数:2.00)A.0B.1C.2D.864.窗体上有 1个名称为 Command1的命令按钮,事件过程如下:Private Sub Command1Click()Dim Hum As Integer,x As IntegerBum=Va

    3、l(InputBox(“请输入一个正整数”)Select Case BumCase Is100x=x+numCase Is90x=numCase Elsex=x* numEnd SelectPrint x;End Sub 运行程序,并在三次单击命令按钮时,分别输入正整数 100、90 和 60,则窗体上显示的内容为( )。(分数:2.00)A.0 0 0B.0 0 60C.0 90 0D.100 0 605.有如下程序:Private Sub FormClick()Dim i As Integer,n As IntegerFor i=1 T0 20i=i+4n=n+iIf i10 Then E

    4、xit ForNextPrint nEnd Sub 程序运行后,单击窗体,则输出结果是( )。(分数:2.00)A.14B.15C.29D.306.窗体上有一个名称为 Commandl的命令按钮,编写如下事件过程:Private Sub CommandlClick()i=0Do While iA.10B.15C.16D.217.在窗体上画一个文本框,其名称为 Text1,然后编写如下程序:Option Base 1Pfivate Sub Form_Click()Dim Arr(10)As IntegerFor i=6 To 10An-(i)=i一 3Next iTextlText=Str(Ar

    5、r(6)+An-(An(6)+Arr(10)End Sub 程序运行后,单击窗体,在文本框中显示的内容是( )。(分数:2.00)A.7B.8C.9D.108.阅读程序:Option Base 1Private Sub FormClick()Dim Arr(3,3)As IntegerFor i=1 To 3For j=1 To 3j=i Or j=3 一 i+1 ThenArr(i,j)=1ElseArr(i,j)=0End IfNext jNext iFor i=1 To 3For j=1 To 3Print Arr(i,j);Next jPrintNext iEnd Sub 程序运行后,

    6、如果单击窗体,则输出结果为( )。(分数:2.00)A.1 1 1 1 1 1 1 1 1B.0 0 0 0 0 0 0 0 0C.1 0 0 0 1 0 0 0 1D.1 0 1 0 1 0 1 0 19.以下 Visual Basic不支持的循环结构是( )。(分数:2.00)A.ForNextB.For EachNextC.DoLoopD.DoEnd Do10.在窗体上画一个组合框,其名称为 Combol,然后编写如下事件过程:Private Sub FormLoad()CombolText=“1”For i=1 To 10Sum=Sum+iNext iCombolText=SumEnd

    7、 Sub 程序运行后,输出结果为( )。(分数:2.00)A.在组合框的编辑区中显示 1B.在组合框的编辑区中显示不定值C.在组合框的编辑区中显示 55D.出错信息11.有如下程序: Private Sub FormClick() Dim S As String S=InputBox(“请输入一个字符串:”) For i=1 To Len(S)2 If Mid(S,i,1)85 Thenr=1ElseIf score60 Thenr=2Elser=0End IfPrint rEndSub程序运行后,单击命令按钮 Command1,输出结果为( )。(分数:2.00)A.0B.1 C.2D.86

    8、解析:解析:本题考查 IfElse IfElseEnd If语句。条件判断成立则执行对应分支的语句。8685,所以 r=1。选 B)。4.窗体上有 1个名称为 Command1的命令按钮,事件过程如下:Private Sub Command1Click()Dim Hum As Integer,x As IntegerBum=Val(InputBox(“请输入一个正整数”)Select Case BumCase Is100x=x+numCase Is90x=numCase Elsex=x* numEnd SelectPrint x;End Sub 运行程序,并在三次单击命令按钮时,分别输入正整数

    9、 100、90 和 60,则窗体上显示的内容为( )。(分数:2.00)A.0 0 0B.0 0 60 C.0 90 0D.100 0 60解析:解析:按钮事件中变量 x为过程局部变量,第 1次输入 100时,Select 语句执行 Case Else分支x=x*num=0*100=0。第二次输入 90时,Select 语句执行 Case Else分支 x=x*num=0*90=0。第三次输入 60时 Select语句执行 Case Is90 分支 x=num=60。因此窗体上显示为 0 0 60。5.有如下程序:Private Sub FormClick()Dim i As Integer,

    10、n As IntegerFor i=1 T0 20i=i+4n=n+iIf i10 Then Exit ForNextPrint nEnd Sub 程序运行后,单击窗体,则输出结果是( )。(分数:2.00)A.14B.15C.29D.30 解析:解析:程序中 For循环中的 If语句判断循环变量 i值如果大于 10则退出循环。各次循环变量值变化如下: i=1 时,i=i+4=1+4=5,n=n+i=0+5=5,此时 i=5,i10 不成立,i 加 1转入下次循环。 i=6 时,i=i+4=6+4=10,n=n+i=5+10=15,此时,i=10,i10 不成立,i 加 1转入下次循环。 i=

    11、11 时,i=i+4=1 1+4=15,n=n+i=15+15=30,此时,i=15,i10 成立,退出循环。此时 n=30。6.窗体上有一个名称为 Commandl的命令按钮,编写如下事件过程:Private Sub CommandlClick()i=0Do While iA.10B.15 C.16D.21解析:解析:For 循环中,i 大于等于 1时执行循环 n=+1,共执行 5次,即 i从 1累加至 5,n 的值从 1最终累加到 15。7.在窗体上画一个文本框,其名称为 Text1,然后编写如下程序:Option Base 1Pfivate Sub Form_Click()Dim Arr

    12、(10)As IntegerFor i=6 To 10An-(i)=i一 3Next iTextlText=Str(Arr(6)+An-(An(6)+Arr(10)End Sub 程序运行后,单击窗体,在文本框中显示的内容是( )。(分数:2.00)A.7B.8C.9D.10 解析:解析:For 循环对数组 Arr的第 6个到第 10个元素赋值。Arr(6)=3;Arr(10)=7;因此,输出结果是 10。选 D)。8.阅读程序:Option Base 1Private Sub FormClick()Dim Arr(3,3)As IntegerFor i=1 To 3For j=1 To 3j

    13、=i Or j=3 一 i+1 ThenArr(i,j)=1ElseArr(i,j)=0End IfNext jNext iFor i=1 To 3For j=1 To 3Print Arr(i,j);Next jPrintNext iEnd Sub 程序运行后,如果单击窗体,则输出结果为( )。(分数:2.00)A.1 1 1 1 1 1 1 1 1B.0 0 0 0 0 0 0 0 0C.1 0 0 0 1 0 0 0 1D.1 0 1 0 1 0 1 0 1 解析:解析:第一个 For循环给数组 Arr赋值。第二个 For循环打印数组各元素的值。在第一个 For循环中,数组的下标用变量

    14、i表示,上标用变量 j表示。IfElse 语句对两种情况进行判断,在 i等于 j的时候或者 i和 j满足 j=3一 i+1关系的时候,Arr 数组元素被赋值为 1,其他情况被赋值为 0。可以根据循环语句的执行,代入各变量值算得各元素的值。选 D)。9.以下 Visual Basic不支持的循环结构是( )。(分数:2.00)A.ForNextB.For EachNextC.DoLoopD.DoEnd Do 解析:解析:Visual Basic 支持的循环结构不包括 D0End Do。10.在窗体上画一个组合框,其名称为 Combol,然后编写如下事件过程:Private Sub FormLoa

    15、d()CombolText=“1”For i=1 To 10Sum=Sum+iNext iCombolText=SumEnd Sub 程序运行后,输出结果为( )。(分数:2.00)A.在组合框的编辑区中显示 1B.在组合框的编辑区中显示不定值C.在组合框的编辑区中显示 55 D.出错信息解析:解析:For 循环实现 1到 10的累加,结束循环后 Sum=55。选 c)。11.有如下程序: Private Sub FormClick() Dim S As String S=InputBox(“请输入一个字符串:”) For i=1 To Len(S)2 If Mid(S,i,1)Mid(S,L

    16、en(S)一 i+1,1)Then Pdnt“No” Exit Sub End If Next i Print“Yes” End Sub 运行程序!单击窗体,在输入对话框中输入 abcscba,则输出结果为( )。(分数:2.00)A.abcB.Yes C.cbaD.No解析:解析:程序实现从输入的字符串中查找前半截和后半截中不同的字符,找到后打印 No,并退出过程。如果没有找到,则打印 Yes。题目中输入字符串 abcscba,则 Len(s)=7,For 循环的上限是 Len(S)2=3,代入循环变量,当 i=1时 Mid(s,i,1)=a,Mid(S,Len(S)一 i+1,1)=a,以

    17、此类推,每个字符都相等。选 B)。12.有下面程序代码: Private Sub Command l Click()For k:5 To 1 Step1X=k+x*10Next kPrint xEnd Sub程序运行后,单击命令按钮 Commandl,输出结果是( )。(分数:2.00)A.12345B.54321 C.15D.150解析:解析:For 循环用来对 x赋值。步长为一 1,一共执行 5次,第一次执行完后 x=5,第二次执行完后 x=54,以此类推,选 B)。13.有下面程序代码:Private Sub CommandlClick()a=3s=0For k=1 To 5s=s+a

    18、Mod ka=a+kNext kPrint sEnd Sub程序运行后,单击命令按钮 Command1,输出结果是( )。(分数:2.00)A.15B.13C.4 D.1解析:解析:Mod 为求余函数。For 循环执行 5次。第一次执行时 a Mod k的值为 0,则 s=0,a=4;循环继续直到 k=5退出。分步计算可得最后 s=4,选 C)。14.有下面程序代码: Private Sub Command1Click() Dim sign As Integer sign=1 a=1 b=2 For k=1 To 5 c=a+sign*b a=b b=c; Print c; sign=一 si

    19、gn Next k End Sub程序运行后,单击命令按钮Commandl,输出结果是( )。(分数:2.00)A.3 一 1 2 3 1 B.3 5 8 13 21C.一 1 1 2 1 1D.3 4 5 6 7解析:解析:For 循环执行 5次,按公式计算可得,结果选 A)。15.有下面程序代码: Private Sub CommandlClick() a=Array(1,2,3,4,5,6,7,8,9,1 0) n=UBound(a) For k=0 To UBound(a)2 Print a(k)*a(n); n=n1 Next k End Sub 程序运行后,单击命令按钮 Comma

    20、nd1,输出结果是( )。(分数:2.00)A.2 6 12 20 30B.2 12 20 56 90C.30 28 24 18 10D.10 18 24 28 30 解析:解析:UBound 获取数组 a的上标值,n=9。For 循环边界为 0至 4。每次执行 For的循环体时均会进行打印。选 D)。16.编写如下程序: Private Sub CommandlClick() 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(n 一 i+

    21、1) a(ni+1)=t Next i For k=1 To 11 Print a(k); Next k End Sub 程序运行后,单击命令按钮 Command1,输出结果为( )。(分数:2.00)A.654321 B.123456C.654123D.123654解析:解析:第一个 For循环从字符串 s中提取数字,赋值给数组 a的元素。第二个 For循环对数组 a中的元素实现倒序排列。第三个 For循环实现打印。选 A)。17.窗体上有一个名称为 Commandl的命令按钮,其单击事件过程如下: Private Sub Command1Click() Dim s As Double s=

    22、0:i=1 Do Wbile i6 s=s+i(i+1) i=i+1 Loop Print s End Sub 该事件过程的功能是计算一个表达式的值,该表达式是( )。(分数:2.00)A.l+12+23+34+45B.l+12+23+34+45+56C.12+23+34+45D.12+23+34+45+56 解析:解析:WhileLoop 循环。i 初值为 1,把 i值代入 i(i+1)语句可得公式为12+23+34+45+56,选 D)。18.设有如下事件过程: Private Sub FormClick() x=0 While x 10 x=x + 1 x=x*x Wend Print

    23、x End Sub运行程序,单击窗体,输出结果是( )。(分数:2.00)A.16B.19C.20D.25 解析:解析:WhileWend 语句只要指定的条件为 True,则会重复执行一系列的语句。程序中口要满足x10 的条件循环就一直执行。当 x=4时,执行完循环体内容后 x=25,条件为 False,退出,打印选 D)。19.vate Sub CommandlClick()Dim m As Integer,n As Integerm=1:n=0Do While mA.40 18 B.40 19C.20 64D.21 64解析:解析:循环中各变量值变化如下: n=m+n=1+0=1,m=3*

    24、m+1=3+1=4,4 小于 20继续循环; n=m+n=4+1=5,m=3*m+1=12+1=13,13 小于 20继续循环; n=m+n=13+5=18,m=3*m+1=39+l=40,40 不小于20,循环结束。此时 m=40,n=18。20.以下关于数组的叙述中,错误的是( )。(分数:2.00)A.Variant类型的数组中各数组元素的类型可以不同B.各数组元素可以是不同类型的控件 C.各数组元素通过下标进行区别D.各数组元素具有相同的名称解析:解析:控件数组是由一组相同类型的控件组成。它们共用一个控件名,绝大部分的属性也相同,但Index属性的值不同。当建立控件数组时,系统给每个元

    25、素赋一个唯一的索引号(Index),通过属性窗口的 Index属性,可以知道该控件的下标是多少,第 1个元素下标是 0。21.设有如下声明语句 Option Base 1 Dim arr(2,一 1 To 5)As Integer则数组 arr中数组元素的个数是( )。(分数:2.00)A.10B.12C.14 D.21解析:解析:程序中语句 Option Base 1表示定义数组下标从 1开始。但如果显式指定了数组的下标范围则不受此限制。第一维的下标从 1到 2,第二维的下标从一 1到 5,所以数组元素个数为 14。22.窗体上有名称为 Command1的命令按钮,其事件过程如下: Opti

    26、on Base 1 Private Sub Command1Click() Dim a Dim b(10)As Integer a=Array(2,4,7,3,9,6) For i=LBound(a)To UBound(a) b(i)=a(i)+i Sum=Sum+b(i) Next i Print Sum End Sub运行程序,单击命令按钮时,窗体上显示的是( )。(分数:2.00)A.44B.46C.50D.52 解析:解析:不同维数的数组缺省下界都是 0或 1,这取决于 Option Base语句的设置。本题中有语句Option Base 1,所以 LBound(A)=1,UBound

    27、(A)=6;For 循环进行求和计算,结果为 52,选 D)。23.下列数组定义中错误的是( )。(分数:2.00)A.Dim a(一 5 To一 3)B.Dim a(3 To 5)C.Dim a(一 3 Tb一 5) D.Dim a(一 3 Tb 3)解析:解析:定义数组时,数组下标的上界=下界。故 C选项错误。24.以下叙述中错误的是( )。(分数:2.00)A.用 ReDim语句可以改变数组的维数B.用 ReDim语句可以改变数组的类型 C.用 ReDim语句可以改变数组每一维的大小D.用 ReDim语句可以对数组中的所有元素置 0或空字符串解析:解析:ReDim 语句无法更改数组变量的

    28、数据类型。25.设有下面的程序段: X=InputBox(“请输入一个整数”) ReDim a(x) For k=x To 0 Step 一 1 a(k)=k Next k一般,在这段程序之前应先进行数组 a的定义。下面定义语句中正确的是( )。(分数:2.00)A.Dim a(100)As IntegerB.Dim a()As Integer C.Dim a As IntegerD.Dim a(0 To 100)As Integer解析:解析:在 VB中定义动态数组通常分两步:首先在窗体层或标准模块中用 Dim、Private 或Public 声明一个没有下标的数组(括号不能省略),然后在过

    29、程中用 ReDim语句定义带下标的数组。根据题意,选项 B)正确。26.在窗体上画一个命令按钮(其 Name属性为 Commandl),然后编写如下代码: Private Sub Commandl ()_Click Dim n()As Integer Dim a,b As Integer a=InputBox(“Enter the first number”) b=InputBox(“Enter the second number”) ReDim n(a To b) For k=LBound(n)To UBound(n) n(k)=k Print n(k); Next kEnd Sub 程序运

    30、行后,单击命令按钮,在输入对话框中分别输入 2和 3,输出结果为( )。(分数:2.00)A.1 2B.2 3 C.3 4D.4 5解析:解析:输入 2和 3后,n 被重新定义,下标为 2,上标为 3。For 循环执行 2次,k=2 和 k=3。因此选 B)。27.在窗体上画一个命令按钮和一个标签,其名称分别为 Command1和 Labell,然后编写如下事件过程: Private Sub CommandlClick() Dim arr(10) For i=6 To 10 art(i)=i一 5 Next i LabellCaption=arr(0)+arr(alT(10)arr(6) En

    31、d Sub 运行程序,单击命令按钮,则在标签中显示的是( )。(分数:2.00)A.0 B.1C.2D.3解析:解析:程序为使用 For语句为数组中部分元素赋值,没显示赋值的数组元素的值默认为 0,因此aT(0)=0,arr(10)=105=5,aT(6)=65=1,arr(arr(10)arr(6)即,arr(51)=arr(5)=0,arr(0)+arr(5)=0+0=0。因此标签中显示为 0。28.如果要在语句:a=Array(1,2,3,4,5) 的前面声明变量 a,则正确的声明是( )。(分数:2.00)A.Dim a(4)As IntegerB.Dim a(5)As Variant

    32、C.Dim a(1 To 5)As IntegerD.Dim a As Variant 解析:解析:Array 函数只能初始化变体类型变量数组,所以选项 D)正确。29.以下关于控件数组的叙述中,错误的是( )。(分数:2.00)A.各数组元素共用相同的事件过程B.各数组元素通过下标进行区别C.数组可以由不同类型的控件构成 D.各数组元素具有相同的名称解析:解析:控件数组是由类型相同的控件组成,具有相同的名称,用下标 Index属性区分各数组元素,它们共用相同的事件过程。故 C选项错误。30.下面关于控件数组的叙述中正确的是( )。(分数:2.00)A.控件数组中所有控件的名称相同,但其 In

    33、dex属性值各不相同 B.控件数组中所有控件的名称相同,但其 Value属性值各不相同C.控件数组中每个元素都是独立的控件,因此都有各自的事件过程D.上述都是错误的解析:解析:控件数组的 Index属性,标识数组中的每个控件,使之与其他控件能够区分开来,索引在内部必须是唯一的,不能与其他相同。故答案选 A)。31.下列关于控件数组的叙述中,正确的是( )。(分数:2.00)A.控件数组可以由不同类型的控件组成B.控件数组元素的最小下标值为 1C.在设计阶段,可以改变控件数组元素的 Index属性值 D.控件数组的名字由 Caption属性指定解析:解析:控件数组必须用同类型的控件组成,最小下标为 0,控件数组的名字由 Name属性指定。选 C)。


    注意事项

    本文(【计算机类职业资格】国家二级VB机试(控制结构)模拟试卷18及答案解析.doc)为本站会员(arrownail386)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开