ImageVerifierCode 换一换
格式:DOC , 页数:22 ,大小:58.50KB ,
资源ID:500007      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-500007.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文([计算机类试卷]国家二级VB机试(控制结构)模拟试卷11及答案与解析.doc)为本站会员(deputyduring120)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

[计算机类试卷]国家二级VB机试(控制结构)模拟试卷11及答案与解析.doc

1、国家二级 VB机试(控制结构)模拟试卷 11及答案与解析 一、选择题 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,输出结果是 ( A) 3 -1 2 -3 -1 ( B) 3 5 8 13 21 ( C) -1 1 -2 -1 -1 ( D) 3 4 5 6 7 2 编写如下程序: Private Sub Co

2、mmand1_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 n 2 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,输出结果为 ( A) 654321 ( B) 123456 ( C) 654123 ( D) 123654 3 窗体上有 1个名称为 Command1的命令按钮; 1个名称为 Li

3、st1、没有列表项的列表框。编写如下程序: 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 List1 AddItem temp s=“: temp=“ End If Next List1 AddItem temp Else MsgBox“输入内容为空 !“ End If End Sub 程序运行后,单击命令按钮 Command1,并输入 “Happy n

4、ew year”,则在 List1中显示的内容为 ( A) year new Happy ( B) Happy new year ( C) raey wen yppaH ( D) yppaH wen raey 4 设窗体上有一个文本框 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 Text1 Text=s End Sub程序执行时,在文本框中输入 “B

5、asic”,然后单击命令按钮,则 Text1中显示的是 ( A) Basic ( B) cis aB ( C) BASIC ( D) CISAB 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 运

6、行程序时发现,当输入 10个正数时,可以得到正确结果,但输入 10个负数时结果是错误的,程序需要修改。下面的修改中可以得到正确运行结果的是 ( A)把 Ifa(k)max Then改为 Ifa(k)10 Then Exit For Next Text1 Text=Str(n) End Sub 程序运行后,单击命令按钮,在文本框中显示的值是 ( A) 2 ( B) 3 ( C) 4 ( D) 5 7 在窗体上画一个名为 Command1的命令按钮,然后编写如下代码: Option Base1 Private Sub Command1 Click(1) Dim a a=Array(1, 2, 3,

7、 4): j=1 For i=4 To 1 Step-1 s=s+a(i)*j: j=j*10 Next i Print s End Sub 运行上面的程序,其输出结果是 ( A) 1234 ( B) 12 ( C) 34 ( D) 4321 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 Text1 Text=St

8、r(n) End Sub 程序运行后,单击命令按钮,在文本框中显示的值是 ( A) 2 ( B) 3 ( C) 4 ( D) 5 9 在窗体上画一个名称为 Command1的命令按钮,然后编写如下程序: 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 程序运行后,如果单击命令按钮,则在窗体上输出的内容为 ( A) 8

9、9 ( B) 99 ( C) 23 ( D) 77 10 在窗体上画 1个名称为 Command1的命令按钮,并编写如下事件过程: Private Sub Command1_Click() x=1: s=0 For i=1 To 5 x=x i: s=s+x Next Print s End Sub 该事件过程的功能是计算 ( A) s=1+2+3+4+5q ( B) s=1+1 2+1 3+1 4+1 5 ( C) s=1+1 2!+1 3!+1 4!+1 5! ( D) s=1+1 (1*2)+1 (2*3)+1 (3*4)+1 (4*5) 11 有如下程序: Private Sub Fo

10、rm_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 程序运行后,单击窗体,则输出结果是 ( A) 14 ( B) 15 ( C) 29 ( D) 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 该过程的功能是 ( A)计算 N! ( B)计算 1+2+3+N ( C)计算 12233

11、NN ( D)计算 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,输出结果为 ( A) 110 ( B) 123 ( C) 1234 ( D) 4321 14 在窗体上画一个名称为 Command1的命令按钮,编写如下事件过程: Private Sub Command

12、1_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 运行程序,单击命令按钮,则窗体上显示的是 ( A) 1 ( B) 3 ( C) 5 ( D) 7 15 窗体上有一个名称为 Text1的文本框,一个名称为 Command1的命令按钮。要求编写一个程序,统计文本框中 0-9各数字字符的个数。某人编写如下程序: Private Sub Command1_Click() Dim count(10)As Integer第 1个 For循环 For i=0 To 9 count(i)=0 N

13、ext S=Trim(Text1 Text) strLen=Len(s)第 2个 For循环 For i=1 To strLen c=Mid(s, i, 1) If C=“0“And c 循环体 Loop ( B) While 循环体 Wend ( C) Do 循环体 Loop Until ( D) Do Until 循环体 Loop 18 设 a、 b都是自然数,为求 a除以 b的余数,某人编写了以下函数: Function fun(a As Integer, b As Integer) While ab a=a b Wend fun=a End Function 在调试时发现函数是错误的。

14、为使函数能产生正确的返回值 ,应做的修改是 ( A)把 a=a b改为 a=b a ( B)把 a=a b改为 a=a b ( C)把 While ab改为 While ab改为 While a=b 19 设有如下事件过程: Private Sub Form Click() x=0 While x10 Then Exit Do Else x=x+3 End If Loop Until x0 s=s n Mod 10: s=S n 10 Mod 10 n=n 100 Loop Print s End Sub 程序运行后,单击命令按钮 Command1,并输入数值 123456,则输出结果为 (

15、A) 654321 ( B) 563412 ( C) 642531 ( D) 615243 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,则在窗体上显示的内容为 ( A) 11 ( B) 13 ( C) 23 ( D) 39 国家二级 VB机试(控制结构)模拟试卷 11答案与解析 一、选择题 1 【正确答案】

16、A 【试题解析】 在每次循环中 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 【正确答案】 A 【试题解析】 本题中有三个 Fo

17、r循环,但是这三个循环之间没有嵌套关系,而是顺序的关系。在第一个循环中依次取出字符串 s中的每一个字符存入数组 a:第二个循环中 将数组的第一个元素和最后一个元素互换,第二个元素和倒数第二个元素互换 以此类推完成数组的逆序;第三个循环输出数组元素。 【知识模块】 控制结构 3 【正确答案】 A 【试题解析】 本题的循环中倒序从字符串 s中依次取出每一个字符,只要该字符不是空格就将其连接到 temp的前面,见到空格就把连接好的 temp加入到列表框中,即先加入 year,然后是 new,最后是 Happy。 【知识模块】 控制结构 4 【正确答案】 B 【试题解析】 本题考查的考点是有关循环和取

18、子串函数的。本题比较 简单,循环次数就是字符串的长度,每次都在第 k位取一个字母,最后倒序连接起来。注意每次都把 ch连接到 s的前面。 【知识模块】 控制结构 5 【正确答案】 D 【试题解析】 本题考查的考点是有关循环和数组的。本题为了实现求取最大值,首先应该假设数组中的某一个数就是最大值,再依次与数组元素比较,一旦某个元素比当前的最大值大,就把它作为新的最大值。 max初值设为 0是不可以的,它没有考虑到数组元素都小于 0的情况。 【知识模块】 控制结构 6 【正确答案】 B 【试题解析】 本题考 查的考点是有关循环的。实际上本题就要关注循环何时结束,第一次循环中, i的值变成 3, n

19、的值变为 1,然后 i+1变成 4;由于满足循环条件,所以第二次循环中, i的值变成 7, n的值变为 2,然后 i+1变成 8;由于还是满足循环条件,所以第三次循环中, i的值变成 11, n的值变为 3,然后判断由于 i已经大于 10,所以退出循环,最后 n的值为 3。 【知识模块】 控制结构 7 【正确答案】 A 【试题解析】 本题考查的考点是有关循环的。本题也很简单,首先取得数组的最后一个元素加到累加变量中,然后取倒数第二个元素,乘 10后加到累加变量中,然后取倒数第三个元素,乘 100后加到累加变量中,以此类推,最后结果为1234。 【知识模块】 控制结构 8 【正确答案】 B 【试

20、题解析】 语句 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 【正确答案】 C 【试题解析】 本题的循环中依次用数组的每个元素和 c进行比较,如果比 c大就将数组元素累加

21、,并令数组元素成为新的 c值;否则令累加和 d减去 c。在 5次循环中 d的累加过程为 -10+12+21+32-32=23。 【知识模块】 控制结构 10 【正确答案】 C 【试题解析】 在本题的循环中每次累加的变量是 x,而 x在每次的循环中都会除以 i,即第一次除以 1,第二次再 除以 2,第三次再除以 3 以此类推 C选项是正确答案。 【知识模块】 控制结构 11 【正确答案】 D 【试题解析】 本题的 For循环中改变了循环变量 i的值,而且在循环中还有 Exit语句退出循环,故此需要逐次循环进行分析。第一次循环中 i的初值为 1,然后变为 5,将其累加到 n中然后因其不满足 If条

22、件,所以 i的值加上步长 1(特别重要很容易忘记 )继续循环;第二次循环开始 i的值为 6,加上 4以后变为 10,将其累加到 n中然后因其不满足 If条件,所以 i的值加上步长 l继续循环;第三次循环开始i的值为 11,加上 4以后变为 15,将其累加到 n中然后因其满足 If条件退出循环,所以累加三次的值为 5+10+15=30。 【知识模块】 控制结构 12 【正确答案】 D 【试题解析】 在函数中每次向累加和变量 s中累加 k*(k+1)的值,循环变量 k从1循环到 N,即为求 12+23+34+N(N+1) 的值。 【知识模块】 控制结构 13 【正确答案】 C 【试题解析】 本题的

23、循环首先取出数组的最后一位累加,然后取出倒数第二位乘以 10以后累加;然后取出倒数第三位乘以 100后累加 以此类推,最 终结果为1234。 【知识模块】 控制结构 14 【正确答案】 B 【试题解析】 本题的 For循环共执行 11次,在每次循环中计算出一个 X的值,然后判断能否被 3整除,如能整除则令计数器 n自加 1。 【知识模块】 控制结构 15 【正确答案】 D 【试题解析】 本题中要求分别统计数字 0 9的个数,使用了一个数组 count来存放各个数字的个数。在第一个 For循环中,将数组的各个元素设置为 0,在第二个循环中,依次取出字符串中的每一个字符,判断是不是在 0 9之间,

24、如果在范围内,则应该令对 应的数组元素加 1。如果写成 count(i)=count(i)+1,只能顺序的令每一个数组元素都加 1,只有改写成 count(x)=count(x)+1,让 x作为下标,才能保证让 x对应的数组元素加 l。 【知识模块】 控制结构 16 【正确答案】 C 【试题解析】 组合框的 Text属性将会返回或者设置编辑区中的文本,本题中显示的是 1 10的累加和 55。 【知识模块】 控制结构 17 【正确答案】 C 【试题解析】 本题考查循环, Do Loop Until循环至少会执行一次,该循环是 先执行然后判断循环条件。 【知识模块】 控制结构 18 【正确答案】

25、D 【试题解析】 本题函数过程的原代码仅适合 a不能被 b整除的两数,而当 a能被b整除时则不适用,如 a=4, b=2, a除以 b的余数为 0,而原代码返回的函数值为2。因此需将语句 While ab改为 While a=b。 【知识模块】 控制结构 19 【正确答案】 D 【试题解析】 本题是简单 While循环,在循环中改变循环变量 x的值,要注意退出循环时 x必然是不会满足循环条件的。本题中循环中 x依次变化为 1、 4、 25。 【知识模块】 控制结构 20 【正确答案】 D 【试题解析】 本题考查循环。如果输入的 n是偶数,那么在循环体中执行n=n+1,偶数 +1是奇数,循环结束

26、条件 Loop Until n=1000不会满足,形成死循环;如果输入的 n是奇数,那么循环体内执行 n=n+2,奇数 +2依然是奇数,循环结束条件永远不会满足,也形成死循环。 【知识模块】 控制结构 21 【正确答案】 D 【试题解析】 本题考查的考点是有关 Do型循环的。对于这种循环结构,首先看条件判断在循环体的前面还是后面,如 果是先判断条件,则有可能一次也不执行循环体;如果是后判断条件,则无论条件如何至少执行一次循环体。在 Until循环中条件为 False时执行循环体,条件为 True时退出循环:在 While循环中条件为True时执行循环体,条件为 False时退出循环,这一点要注

27、意区分清楚。 【知识模块】 控制结构 22 【正确答案】 D 【试题解析】 Visual Basic支持的循环结构包括: ForNext 循环、 For EachNext 循环、 DoLoop 循环和 While循环。 【知识模块】 控制结构 23 【正确答案】 B 【试题解析】 本题考查的考点是有关 Do型循环的。对于这种循环结构,首先看条件判断在循环体的前面还是后面,如果是先判断条件,则有可能一次也不执行循环体;如果是后判断条件,则无论条件是什么,至少执行一次循环体。在 Until循环中条件为 False时执行循环体,条件为 True时退出循环;在 While循环中条件为 True时执行循

28、环体,条件为 False时退出循环,这一点要注意区分清楚。本题只需要实际计算一下两次循环中 x和 n值的变化即可容易的得出结果。 【知识模块】 控制结构 24 【正确答案】 B 【试题解析】 Do型循环结构,首先看条件判断在循环体的前面还是后面,如果是先判断条件,则有可能一次也不执行循环体;如果是后判断条件,则无论条件是什么,至少执行一次循环体。在 Until循环中条件为 False时执行循环体,条件为 True时退出循环;在 WhiIe循环中条件为 1 me时执行循环体,条件为 FaIse时退出循环。本题中使用的是后判断型循环,第一次循环时 y的值为 1,不满足y10,执行 Else分支,

29、x变成 4,此时由于满足 x=10所以结束循环。 【知识模块】 控制结构 25 【正确答案】 A 【试题解析】 本题在循环中先将 n除以 10的余数 (即个位数字 )连接到 s上,然后将整除 10后除以 10的余数 (即十位上数字 )连接到 s上,然后 n整除 100的值赋值给 n(即去掉最后两位 ),然后继续进行循环,所以最终将会输出数字的逆序。 【知识模块】 控制结构 26 【正确答案】 A 【试题解析】 对于 Do型循环结构,首先看条件判断在循环体的前面还是后面,如果是先判断条件,则有可能一次也不执行循环体;如果是后判断条件,则无论条件是什么,至少执行一次循环体。在 Until循 环中条件为 False时执行循环体,条件为 True时退出循环;在 While循环中条件为 True时执行循环体,条件为False时退出循环。本题是一个比较简单的 Do循环,计算从 1到 10的立方和。为止,实际上就是辗转相减法求最大公约数的过程。 【知识模块】 控制结构 27 【正确答案】 B 【试题解析】 本题的循环中将两个输入的数 x和 y互相相减,直到 x=y为止,实际上就是辗转相减法求最大公约数的过程。 【知识模块】 控制结构

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