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

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

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

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

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

    1、国家二级 VB机试(控制结构)模拟试卷 11及答案解析(总分:54.00,做题时间:90 分钟)一、选择题(总题数:27,分数:54.00)1.有下面程序代码: Private Sub Command1_Click() Dim sign As Integer sign=1 a=1:b=2 For k=l To 5 c=a+sign*b a=b:b=c Print c: sign=-sign Next k End Sub 程序运行后,单击命令按钮Command1,输出结果是(分数:2.00)A.3 -1 2 -3 -1B.3 5 8 13 21C.-1 1 -2 -1 -1D.3 4 5 6 7

    2、2.编写如下程序: Private Sub Command1_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(n-i+1):a(n-i+1)=t Next i For k=l To n Print a(k); Next k End Sub 程序运行后,单击命令按钮 Command1,输出结果为(分数:2.00)A.654321B.123456C.654123D.1236543.窗体上有 1个名称为 Command1的命令按

    3、钮;1 个名称为 List1、没有列表项的列表框。编写如下程序: Private Sub Command1_Click() Dim x As String,s As String,temp As String Dim i As Integer x=InputBox(“输入字符串“,“输入“) Ifx“Then temp=s+temp Else List1AddItem temp s=“:temp=“ End If Next List1AddItem temp Else MsgBox“输入内容为空!“ End If End Sub 程序运行后,单击命令按钮 Command1,并输入“Happy

    4、new year”,则在 List1中显示的内容为(分数:2.00)A.year new HappyB.Happy new yearC.raey wen yppaHD.yppaH wen raey4.设窗体上有一个文本框 Text1和一个命令按钮 Command1,并有以下事件过程:Private Sub Command1_Click()Dim s As String,ch As String s=“For k=1 To Len(Text1)ch=Mid(Text1,k,1)s=ch+s Next k Text1Text=s End Sub 程序执行时,在文本框中输入“Basic”,然后单击命

    5、令按钮,则 Text1中显示的是(分数:2.00)A.BasicB.cisaBC.BASICD.CISAB5.某人编写了如下程序,用来求 10个整数(整数从键盘输入)中的最大值: Private Sub Command1_Click() Dim a(10)As Integer,max As Integer For k=1 To 10 a(k)=InputBox(“输入一个整数“) Next k max=0 For k=1 To 10 Ifa(k)max Then max=a(k) End If Next k Print max End Sub 运行程序时发现,当输入 10个正数时,可以得到正确

    6、结果,但输入 10个负数时结果是错误的,程序需要修改。下面的修改中可以得到正确运行结果的是(分数:2.00)A.把 Ifa(k)max Then改为 Ifa(k)B.把 max=a(k)改为 a(k)=maxC.把第 2个循环语句 For k=1 To 10改为 For k=2 To 10D.把 max=0改为 max=a(10)6.在窗体上画一个名称为 Text1的文本框和一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim i As Integer,n As Integer For i=0 To 50 i=i+3:

    7、n=n+1 Ifi10 Then Exit For Next Text1Text=Str(n) End Sub 程序运行后,单击命令按钮,在文本框中显示的值是(分数:2.00)A.2B.3C.4D.57.在窗体上画一个名为 Command1的命令按钮,然后编写如下代码: Option Base1 Private Sub Command1 Click(1) Dim a a=Array(1,2,3,4):j=1 For i=4 To 1 Step-1 s=s+a(i)*j:j=j*10 Next i Print s End Sub 运行上面的程序,其输出结果是(分数:2.00)A.1234B.12

    8、C.34D.43218.在窗体上画一个名称为 Text1的文本框和一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click0 Dim iAs Integer,n As Integer For i=0 To 50 i=i+3:n=n+1 Ifi10 Then Exit For Next Text1Text=Str(n) End Sub 程序运行后,单击命令按钮,在文本框中显示的值是(分数:2.00)A.2B.3C.4D.59.在窗体上画一个名称为 Command1的命令按钮,然后编写如下程序: Option Base1 Private

    9、Sub Command1_Click() d=0:c=10:x=Array(10,12,21,32,24) For i=l To 5 Ifx(i)c Then d=d+x(i):c=x(i) Else d=d-c End If Next i Print d End Sub 程序运行后,如果单击命令按钮,则在窗体上输出的内容为(分数:2.00)A.89B.99C.23D.7710.在窗体上画 1个名称为 Command1的命令按钮,并编写如下事件过程: Private Sub Command1_Click() x=1:s=0 For i=1 To 5 x=xi:s=s+x Next Print

    10、s End 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)11.有如下程序: Private Sub Form_Click() Dim i As Integer,n As Integer For i=1 To 20 i:i+4:n=n+i Ifi10 Then Exit For Next Print n End Sub 程序运行后,单击窗体,则输出结果是(分数:2.00)A.14B.15C.29D.3012.有以下通用过程:

    11、 Function fun(N As Integer) s=0 For k=1 To N s=s+k*(k+1) Next k fun=s End Function 该过程的功能是(分数:2.00)A.计算 N!B.计算 1+2+3+NC.计算 12233NND.计算 12+23+34+N(N+1)13.编写如下程序: Option Base1 Private Sub Command1_Click() Dim a a=Array(1,2,3,4):s=0:j=1 For i=4 To 1 Step-1 s=s+a(i)*j:j=j*10 Next i Print s End Sub 程序运行后

    12、,单击命令按钮 Command1,输出结果为(分数:2.00)A.110B.123C.1234D.432114.在窗体上画一个名称为 Command1的命令按钮,编写如下事件过程: Private Sub Command1_Click() n=0 For i=0 To 10 X=2*i=1 IfX Mod 3=0 Then n=n+1 Next i Print n End Sub 运行程序,单击命令按钮,则窗体上显示的是(分数:2.00)A.1B.3C.5D.715.窗体上有一个名称为 Text1的文本框,一个名称为 Command1的命令按钮。要求编写一个程序,统计文本框中 0-9各数字字符

    13、的个数。某人编写如下程序: Private Sub Command1_Click() Dim count(10)As Integer第 1个 For循环 For i=0 To 9 count(i)=0 Next S=Trim(Text1Text) strLen=Len(s)第 2个 For循环 For i=1 To strLen c=Mid(s,i,1) If C=“0“And cb a=ab Wend fun=a End Function 在调试时发现函数是错误的。为使函数能产生正确的返回值,应做的修改是(分数:2.00)A.把 a=ab 改为 a=baB.把 a=ab 改为 a=abC.把

    14、 While ab改为 While ab改为 While a=b19.设有如下事件过程: Private Sub Form Click() x=0 While xA.16B.19C.20D.2520.下面程序在调试时出现了死循环 Private Sub Command1_Click() n=InputBox(“请输入一个整数”) Do Ifn Mod 2=0 Then n=n+1 Else n=n+2 End If Loop Until n=1000 End Sub(分数:2.00)A.只有输入的 n是偶数时才会出现死循环,否则不会B.只有输入的 n是奇数时才会出现死循环,否则不会C.只有输入

    15、的 n是大于 1000的整数时才会出现死循环,否则不会D.输入任何整数都会出现死循环21.假定有以下循环结构 Do Until条件表达式循环体 Loop则以下正确的描述是(分数:2.00)A.如果“条件表达式”的值是 0,则一次循环体也不执行B.如果“条件表达式”的值不为 0,则至少执行一次循环体C.不论“条件表达式”的值是否为“真”,至少要执行一次循环体D.如果“条件表达式”的值恒为 0,则无限次执行循环体22.以下 Visual Basic不支持的循环结构是(分数:2.00)A.ForNextB.For EachNextC.DoLoopD.DoEnd Do23.在窗体上画两个文本框(名称分

    16、别为 Text1和 Text2)和一个命令按钮(名称为 Command1),然后编写如下事件过程: Private Sub Command1_Click() x=0 Do While xA.l和 0B.2和 72C.3和 50D.4和 16824.编写如下程序: Private Sub Cornmandl Click() Dim X As Integer,y As Integer x=1:y=1 Do y=x*y Ifv10 Then Exit Do Else x=x+3 End If Loop Until x0 s=sn Mod 10:s=Sn10 Mod 10 n=n100 Loop Pr

    17、int s End Sub 程序运行后,单击命令按钮 Command1,并输入数值 123456,则输出结果为(分数:2.00)A.654321B.563412C.642531D.61524326.下面程序计算并输出的是 Private Sub Command1_Click() a=10:s=0 Do s=s+a*a*a:a=a-1 Loop Until ay Then x=x-y Else y=y-x End if Loop Print x End Sub 运行程序,单击命令按钮,并输入 2个整数169和 39,则在窗体上显示的内容为(分数:2.00)A.11B.13C.23D.39国家二级

    18、 VB机试(控制结构)模拟试卷 11答案解析(总分:54.00,做题时间:90 分钟)一、选择题(总题数:27,分数:54.00)1.有下面程序代码: Private Sub Command1_Click() Dim sign As Integer sign=1 a=1:b=2 For k=l To 5 c=a+sign*b a=b:b=c Print c: sign=-sign Next k End Sub 程序运行后,单击命令按钮Command1,输出结果是(分数:2.00)A.3 -1 2 -3 -1 B.3 5 8 13 21C.-1 1 -2 -1 -1D.3 4 5 6 7解析:解

    19、析:在每次循环中 sign的值在 1和-1 之间来回变化,第一次循环时 sign的值为 1;在循环中 c的值为 a+sign*b,然后将 b赋值给 a,c 赋值给 b;因此第一次循环结束后 c的值为 3,a 的值为 2,b 的值为 3;第二次循环结束后 c的值为-1,a 的值为 3,b 的值为-1;第三次循环结束后 c的值为 2,a 的值为-1,b 的值为 2;第四次循环结束后 c的值为-3,a 的值为 2,b 的值为-3;第五次循环结束后 c的值为-1,a 的值为-3,b 的值为-1。2.编写如下程序: Private Sub Command1_Click() Dim a(10)As Str

    20、ing 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+1):a(n-i+1)=t Next i For k=l To n Print a(k); Next k End Sub 程序运行后,单击命令按钮 Command1,输出结果为(分数:2.00)A.654321 B.123456C.654123D.123654解析:解析:本题中有三个 For循环,但是这三个循环之间没有嵌套关系,而是顺序的关系。在第一个循环中依次取出字符串 s中的每一个字符存入数组 a:第二个循环

    21、中将数组的第一个元素和最后一个元素互换,第二个元素和倒数第二个元素互换以此类推完成数组的逆序;第三个循环输出数组元素。3.窗体上有 1个名称为 Command1的命令按钮;1 个名称为 List1、没有列表项的列表框。编写如下程序: Private Sub Command1_Click() Dim x As String,s As String,temp As String Dim i As Integer x=InputBox(“输入字符串“,“输入“) Ifx“Then temp=s+temp Else List1AddItem temp s=“:temp=“ End If Next Li

    22、st1AddItem temp Else MsgBox“输入内容为空!“ End If End Sub 程序运行后,单击命令按钮 Command1,并输入“Happy new year”,则在 List1中显示的内容为(分数:2.00)A.year new Happy B.Happy new yearC.raey wen yppaHD.yppaH wen raey解析:解析:本题的循环中倒序从字符串 s中依次取出每一个字符,只要该字符不是空格就将其连接到temp的前面,见到空格就把连接好的 temp加入到列表框中,即先加入 year,然后是 new,最后是Happy。4.设窗体上有一个文本框

    23、Text1和一个命令按钮 Command1,并有以下事件过程:Private Sub Command1_Click()Dim s As String,ch As 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.cisaB C.BASICD.CISAB解析:解析:本题考查的考点是有关循环和取子串函数的。本题比较简单,循环次数就是字符串的长度,每次都在第 k位取一个

    24、字母,最后倒序连接起来。注意每次都把 ch连接到 s的前面。5.某人编写了如下程序,用来求 10个整数(整数从键盘输入)中的最大值: Private Sub Command1_Click() Dim a(10)As Integer,max As Integer For k=1 To 10 a(k)=InputBox(“输入一个整数“) Next k max=0 For k=1 To 10 Ifa(k)max Then max=a(k) End If Next k Print max End Sub 运行程序时发现,当输入 10个正数时,可以得到正确结果,但输入 10个负数时结果是错误的,程序需

    25、要修改。下面的修改中可以得到正确运行结果的是(分数:2.00)A.把 Ifa(k)max Then改为 Ifa(k)B.把 max=a(k)改为 a(k)=maxC.把第 2个循环语句 For k=1 To 10改为 For k=2 To 10D.把 max=0改为 max=a(10) 解析:解析:本题考查的考点是有关循环和数组的。本题为了实现求取最大值,首先应该假设数组中的某一个数就是最大值,再依次与数组元素比较,一旦某个元素比当前的最大值大,就把它作为新的最大值。max初值设为 0是不可以的,它没有考虑到数组元素都小于 0的情况。6.在窗体上画一个名称为 Text1的文本框和一个名称为 C

    26、ommand1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim i As Integer,n As Integer For i=0 To 50 i=i+3:n=n+1 Ifi10 Then Exit For Next Text1Text=Str(n) End Sub 程序运行后,单击命令按钮,在文本框中显示的值是(分数:2.00)A.2B.3 C.4D.5解析:解析:本题考查的考点是有关循环的。实际上本题就要关注循环何时结束,第一次循环中,i 的值变成 3,n 的值变为 1,然后 i+1变成 4;由于满足循环条件,所以第二次循环中,i 的值变

    27、成 7,n 的值变为 2,然后 i+1变成 8;由于还是满足循环条件,所以第三次循环中,i 的值变成 11,n 的值变为 3,然后判断由于 i已经大于 10,所以退出循环,最后 n的值为 3。7.在窗体上画一个名为 Command1的命令按钮,然后编写如下代码: Option Base1 Private Sub Command1 Click(1) Dim a a=Array(1,2,3,4):j=1 For i=4 To 1 Step-1 s=s+a(i)*j:j=j*10 Next i Print s End Sub 运行上面的程序,其输出结果是(分数:2.00)A.1234 B.12C.3

    28、4D.4321解析:解析:本题考查的考点是有关循环的。本题也很简单,首先取得数组的最后一个元素加到累加变量中,然后取倒数第二个元素,乘 10后加到累加变量中,然后取倒数第三个元素,乘 100后加到累加变量中,以此类推,最后结果为 1234。8.在窗体上画一个名称为 Text1的文本框和一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click0 Dim iAs Integer,n As Integer For i=0 To 50 i=i+3:n=n+1 Ifi10 Then Exit For Next Text1Text=Str(n)

    29、End Sub 程序运行后,单击命令按钮,在文本框中显示的值是(分数:2.00)A.2B.3 C.4D.5解析:解析:语句 Exit For的作用是退出当前 For循环。 本题中 For循环语句的循环变量 i不仅在执行到 Next语句时后自动加 1,而且在每次执行循环体中的 i=i+3语句时,还会加 3。当第 1次进入循环体时i=0、n=0;当第 2次进入循环体时 i=4、n=1:当第 3次进入循环体时 i=8、n=2,此时当执行 i=i+3和n=n+1语句后,i=11、n=3,If 语句的条件表达式 i10为真,将退出循环,故文本框中显示的值为 3。9.在窗体上画一个名称为 Command1

    30、的命令按钮,然后编写如下程序: Option Base1 Private Sub Command1_Click() d=0:c=10:x=Array(10,12,21,32,24) For i=l To 5 Ifx(i)c Then d=d+x(i):c=x(i) Else d=d-c End If Next i Print d End Sub 程序运行后,如果单击命令按钮,则在窗体上输出的内容为(分数:2.00)A.89B.99C.23 D.77解析:解析:本题的循环中依次用数组的每个元素和 c进行比较,如果比 c大就将数组元素累加,并令数组元素成为新的 c值;否则令累加和 d减去 c。在

    31、5次循环中 d的累加过程为-10+12+21+32-32=23。10.在窗体上画 1个名称为 Command1的命令按钮,并编写如下事件过程: Private Sub Command1_Click() x=1:s=0 For i=1 To 5 x=xi:s=s+x Next Print s End 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)解析:解析:在本题的循环中每次累加的变量是 x,而 x在每次的循环中都会除以 i

    32、,即第一次除以 1,第二次再除以 2,第三次再除以 3以此类推 C选项是正确答案。11.有如下程序: Private Sub Form_Click() Dim i As Integer,n As Integer For i=1 To 20 i:i+4:n=n+i Ifi10 Then Exit For Next Print n End Sub 程序运行后,单击窗体,则输出结果是(分数:2.00)A.14B.15C.29D.30 解析:解析:本题的 For循环中改变了循环变量 i的值,而且在循环中还有 Exit语句退出循环,故此需要逐次循环进行分析。第一次循环中 i的初值为 1,然后变为 5,将

    33、其累加到 n中然后因其不满足 If条件,所以 i的值加上步长 1(特别重要很容易忘记)继续循环;第二次循环开始 i的值为 6,加上 4以后变为10,将其累加到 n中然后因其不满足 If条件,所以 i的值加上步长 l继续循环;第三次循环开始 i的值为 11,加上 4以后变为 15,将其累加到 n中然后因其满足 If条件退出循环,所以累加三次的值为5+10+15=30。12.有以下通用过程: Function fun(N As Integer) s=0 For k=1 To N s=s+k*(k+1) Next k fun=s End Function 该过程的功能是(分数:2.00)A.计算 N

    34、!B.计算 1+2+3+NC.计算 12233NND.计算 12+23+34+N(N+1) 解析:解析:在函数中每次向累加和变量 s中累加 k*(k+1)的值,循环变量 k从 1循环到 N,即为求12+23+34+N(N+1)的值。13.编写如下程序: Option Base1 Private Sub Command1_Click() Dim a a=Array(1,2,3,4):s=0:j=1 For i=4 To 1 Step-1 s=s+a(i)*j:j=j*10 Next i Print s End Sub 程序运行后,单击命令按钮 Command1,输出结果为(分数:2.00)A.1

    35、10B.123C.1234 D.4321解析:解析:本题的循环首先取出数组的最后一位累加,然后取出倒数第二位乘以 10以后累加;然后取出倒数第三位乘以 100后累加以此类推,最终结果为 1234。14.在窗体上画一个名称为 Command1的命令按钮,编写如下事件过程: Private Sub Command1_Click() n=0 For i=0 To 10 X=2*i=1 IfX Mod 3=0 Then n=n+1 Next i Print n End Sub 运行程序,单击命令按钮,则窗体上显示的是(分数:2.00)A.1B.3 C.5D.7解析:解析:本题的 For循环共执行 11

    36、次,在每次循环中计算出一个 X的值,然后判断能否被 3整除,如能整除则令计数器 n自加 1。15.窗体上有一个名称为 Text1的文本框,一个名称为 Command1的命令按钮。要求编写一个程序,统计文本框中 0-9各数字字符的个数。某人编写如下程序: Private Sub Command1_Click() Dim count(10)As Integer第 1个 For循环 For i=0 To 9 count(i)=0 Next S=Trim(Text1Text) strLen=Len(s)第 2个 For循环 For i=1 To strLen c=Mid(s,i,1) If C=“0“

    37、And cb a=ab Wend fun=a End Function 在调试时发现函数是错误的。为使函数能产生正确的返回值,应做的修改是(分数:2.00)A.把 a=ab 改为 a=baB.把 a=ab 改为 a=abC.把 While ab改为 While ab改为 While a=b 解析:解析:本题函数过程的原代码仅适合 a不能被 b整除的两数,而当 a能被 b整除时则不适用,如a=4,b=2,a 除以 b的余数为 0,而原代码返回的函数值为 2。因此需将语句 While ab改为 While a=b。19.设有如下事件过程: Private Sub Form Click() x=0

    38、While xA.16B.19C.20D.25 解析:解析:本题是简单 While循环,在循环中改变循环变量 x的值,要注意退出循环时 x必然是不会满足循环条件的。本题中循环中 x依次变化为 1、4、25。20.下面程序在调试时出现了死循环 Private Sub Command1_Click() n=InputBox(“请输入一个整数”) Do Ifn Mod 2=0 Then n=n+1 Else n=n+2 End If Loop Until n=1000 End Sub(分数:2.00)A.只有输入的 n是偶数时才会出现死循环,否则不会B.只有输入的 n是奇数时才会出现死循环,否则不会

    39、C.只有输入的 n是大于 1000的整数时才会出现死循环,否则不会D.输入任何整数都会出现死循环 解析:解析:本题考查循环。如果输入的 n是偶数,那么在循环体中执行 n=n+1,偶数+1 是奇数,循环结束条件 Loop Until n=1000不会满足,形成死循环;如果输入的 n是奇数,那么循环体内执行 n=n+2,奇数+2 依然是奇数,循环结束条件永远不会满足,也形成死循环。21.假定有以下循环结构 Do Until条件表达式循环体 Loop则以下正确的描述是(分数:2.00)A.如果“条件表达式”的值是 0,则一次循环体也不执行B.如果“条件表达式”的值不为 0,则至少执行一次循环体C.不

    40、论“条件表达式”的值是否为“真”,至少要执行一次循环体D.如果“条件表达式”的值恒为 0,则无限次执行循环体 解析:解析:本题考查的考点是有关 Do型循环的。对于这种循环结构,首先看条件判断在循环体的前面还是后面,如果是先判断条件,则有可能一次也不执行循环体;如果是后判断条件,则无论条件如何至少执行一次循环体。在 Until循环中条件为 False时执行循环体,条件为 True时退出循环:在 While循环中条件为 True时执行循环体,条件为 False时退出循环,这一点要注意区分清楚。22.以下 Visual Basic不支持的循环结构是(分数:2.00)A.ForNextB.For Ea

    41、chNextC.DoLoopD.DoEnd Do 解析:解析:Visual Basic 支持的循环结构包括:ForNext 循环、For EachNext 循环、DoLoop 循环和 While循环。23.在窗体上画两个文本框(名称分别为 Text1和 Text2)和一个命令按钮(名称为 Command1),然后编写如下事件过程: Private Sub Command1_Click() x=0 Do While xA.l和 0B.2和 72 C.3和 50D.4和 168解析:解析:本题考查的考点是有关 Do型循环的。对于这种循环结构,首先看条件判断在循环体的前面还是后面,如果是先判断条件,

    42、则有可能一次也不执行循环体;如果是后判断条件,则无论条件是什么,至少执行一次循环体。在 Until循环中条件为 False时执行循环体,条件为 True时退出循环;在 While循环中条件为 True时执行循环体,条件为 False时退出循环,这一点要注意区分清楚。本题只需要实际计算一下两次循环中 x和 n值的变化即可容易的得出结果。24.编写如下程序: Private Sub Cornmandl Click() Dim X As Integer,y As Integer x=1:y=1 Do y=x*y Ifv10 Then Exit Do Else x=x+3 End If Loop Un

    43、til x10,执行Else分支,x 变成 4,此时由于满足 x0 s=sn Mod 10:s=Sn10 Mod 10 n=n100 Loop Print s End Sub 程序运行后,单击命令按钮 Command1,并输入数值 123456,则输出结果为(分数:2.00)A.654321 B.563412C.642531D.615243解析:解析:本题在循环中先将 n除以 10的余数(即个位数字)连接到 s上,然后将整除 10后除以 10的余数(即十位上数字)连接到 s上,然后 n整除 100的值赋值给 n(即去掉最后两位),然后继续进行循环,所以最终将会输出数字的逆序。26.下面程序计算并输出的是 Private Sub Command1_Click() a=10:s=0 Do s=s+a*a*a:a=a-1 Loop Until ay Then x=x-y Else y=y-x End if Loop Print x End Sub 运行程序,单击命令按钮,并输入 2个整数169和 39,则在窗体上显示的内容为(分数:2.00)A.11B.13 C.23D.39解析:解析:本题的循环中将两个输入的数 x和 y互相相减,直到 x=y为止,实际上就是辗转相减法求最大公约数的过程。


    注意事项

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




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

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

    收起
    展开