[计算机类试卷]国家二级VB机试(控制结构与数组)模拟试卷1及答案与解析.doc
《[计算机类试卷]国家二级VB机试(控制结构与数组)模拟试卷1及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级VB机试(控制结构与数组)模拟试卷1及答案与解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 VB机试(控制结构与数组)模拟试卷 1及答案与解析 一、选择题 1 设有以下程序: Private Sub Form_Click() x=50 For i=1 To 4 y=InputBox(“请输入一个整数 “) y=Val(y) If y Mod 5=0 Then a=a+y x=y Else a=a+x End If Next i Print a End Sub 程序运行后,单击窗体,在输入对话框中依次输入 15、 24、 35、 46,输出结果为( )。 ( A) 100 ( B) 50 ( C) 120 ( D) 70 2 在窗体上画一个名称为 Command1的命令按钮,
2、并编写如下程序: Function Fun(x) y=0 If x 10 Then y=x Else y=y+10 End If Fun=y End Function Private Sub Command1_Click() n=InputBox(“请输入一个数 “) n=Val(n) P=Fun(n) Print P End Sub 运行程序,单击命令按钮,将显示输入对话框,如果在对话框中输入 100,并单击“确定 ”按钮,则输出结果为 ( )。 ( A) 10 ( B) 100 ( C) 110 ( D)出错信息 3 窗体上有 1个名称为 Command1的命令按钮,事件过程如下: Pri
3、vate Sub Command1_Click() Dim x, y, z x=InputBox(“请输入第 1个整数 “) y=InputBox(“请输入第 2个整数 “) Do Until x=y If x y Then x=x-y Else y=y-x Loop Print x End Sub 运行程序,单击命令按钮,并输入 2个整数 169和 39,则在窗体上显示的内容为( )。 ( A) 11 ( B) 13 ( C) 23 ( D) 39 4 设有如下事件过程: Private Sub Form_Click() Sum=0 For k=1 To 3 If k =1 Then x=1
4、 ElseIf k =2 Then x=2 ElseIf k =3 Then x=3 Else x=4 End If Sum=Sum+x Next k Print Sum End Sub 程序运行后,单击窗体,输出结果是 ( )。 ( A) 9 ( B) 6 ( C) 3 ( D) 10 5 现有语句: y=IIf(x 0, x Nod 3, 0),设 x=10,则 y的值是 ( )。 ( A) 0 ( B) 1 ( C) 3 ( D)语句有错 6 现有如下一段程序: Private Sub Command1_Click() x=UCase(InputBox(“输入: “) Select Ca
5、se x Case“A“ To “C“ Print“考核通过 !“ Case“D“ Print“考核不通过 !“ Case Else Print“输入数据不合法 !“ End Select End Sub 执行程序,在输入框中输入字母 “B”,则以下叙述中正确的是 ( )。 ( A)程序运行错 ( B)在窗体上显示 “考核通过 !” ( C)在 窗体上显示 “考核不通过 !” ( D)在窗体上显示 “输入数据不合法 !” 7 现有如下程序: Prirate Sub Command1_Click() s=0 For i=1 T0 5 s=s+f(5+i) Next Print s End Sub
6、 Public Function f(x As Integer) If x =10 Then t=x+1 Else t=x+2 End If f=t End Function 运行程序,则窗体上显示的是 ( )。 ( A) 38 ( B) 49 ( C) 61 ( D) 70 8 为计算 an的值,某人编写了函数 power如下: Private Function power(a As Integer, n As Integer)As Long Dim s As Long p=a For k=1 To n p=p*a Next k power=p End Function 在调试时发现是错误的
7、,例如 Print power(5, 4)的输出应该是 625,但实际输出是 3125。程序需要修改。 下面的修改方案中有 3个是正确的,错误的一个是 ( )。 ( A)把 For k=1 To n改为 For k=2 To n ( B)把 p=p*a改为 p=p*n ( C)把 For k=1 To n改为 For k=1 To n-1 ( D)把 p=a改为 p=1 9 有如下程序: Private Sub Form_Click() Dim s As Integer, p As Integer p=1 For i=1 To 4 For j=1 To i s=S+j Next j p=p*s
8、 Next i print p End Sub 程序运行后,单击窗体,则输出结果是 ( )。 ( A) 90 ( B) 180 ( C) 400 ( D) 800 10 为计算 1+2+22+23+24+2m 的值,并把结果显示在文本框 Text1中,若编写如下事件过程: Private Sub Command1 Click() Dim a&, s&, k& s=1 a=2 For k=2 To 10 a=a*2 s=s+a Next k Text1 Text=s End Sub 执行此事件过程后发现结果是错误的,为能够得到正确结果,应做的修改是 ( )。 ( A)把 s=1改为 s=0 (
9、B)把 For k=2 To 10改为 For k=1 To 10 ( C)交换语句 s=s+a和 a=a*2的顺序 ( D)把 For k=2 To 10改为 For k=1 To 10,交换语句 s=s+a和 a=a*2的顺序 11 窗体上有一个名称为 Command1的命令按钮,其单击事 件过程如下: Private Sub Command1_Click() Dim s As Double s=0: i=1 Do While i 6 s=s+i (i+1) i=i+1 Loop Print s End Sub 该事件过程的功能是计算一个表达式的值,该表达式是 ( )。 ( A) 1+1
10、2+2 3+3 4+4 5 ( B) 1+1 2+2 3+3 4+4 5+5 6 ( C) 1 2+2 3+3 4+4 5 ( D) 1 2+2 3+3 4+4 5+5 6 12 假定有以下循环结构: Do Until条件表达式 循环体 Loop 则以下正确的描述是 ( )。 ( A)如果 “条件表达式 ”的值是 0,则一次循环体也不执行 ( B)如果 “条件表达式 ”的值不为 0,则至少执行一次循环体 ( C)不论 “条件表达式 ”的值是否为 “真 ”,至少要执行一次循环体 ( D)如果 “条件表达式 ”的值恒为 0,则无限次执行循环体 13 在窗体上画两 个文本框 (名称分别为 Text1
11、和 Text2)和一个命令按钮 (名称为Command1),然后编写如下事件过程: Private Sub Command1_Click() x=0 Do While x 50 x=(x+2)*(x+3) n=n+1 Loop Text1 Text=Str(n) Text2 Text=Str(x) End Sub 程序运行后,单击命令按钮,在两个文 本框中显示的值分别为 ( )。 ( A) 1和 0 ( B) 2和 72 ( C) 3和 50 ( D) 4和 168 14 编写如下程序: Private Sub Command1_Click() Dim m As Integer n As In
12、teger m=1: n=0 Do Whle m 20 n=m+n m=3*m+1 Loop Print m n End Sub 程 序运行后,单击命令按钮 Command1,输出结果为 ( )。 ( A) 40 18 ( B) 40 19 ( C) 20 64 ( D) 21 64 15 设有如下事件过程: Private Sub Comd1_Click() For i=1 To 5 j=1 Do Print “*“ j=j-1 Loop Until j=0 Next i End Sub 运行程序,输出 “*”的个数是 ( )。 ( A) 5 ( B) 15 ( C) 20 ( D) 25
13、16 在窗体上画一个命令按钮和一个标签,其名称分别为 Command1和 Label1,然后编写如下事件过程: Private Sub Command1_Chck() Counter=0 For i=1 To 4 For j=6 To 1 Step-2 Counter=Counter+1 Next j Next j Ladel1 Caption=Str(Counter) End Sub 程序运行后,单击命令按钮,标签中显示的内容是 ( )。 ( A) 11 ( B) 12 ( C) 16 ( D) 20 17 窗体上有一个名称为 Command1的命令按钮,并有如下程序代码: Option B
14、ase 1 Private Sub Command1_Click() Dim a (3, 3) For i=1 To 3 For j=1 To 3 If i 1 And j 1 Then a(i, j)=a(a(i-1, j-1), a(i, j-1)+1 Else a(i, j)=i*j End If Next Next Print a(2, 2); a(3, 3) End Sub 运行程 序,单击命令按钮,窗体上显示的是 ( )。 ( A) 1 3 ( B) 2 1 ( C) 2 2 ( D) 3 3 18 窗体上有 Command1、 Command2两个命令按钮。现编写以下程序: Op
15、tion Base 0 Dim a()As Integer, m As Integer Private Sub Command1_Click() m=InputBox(“请输入一个正整数 “) ReDim a(m) End Sub Private Sub Command2_Click() m=InputBox(“请输入一个正整数 “) ReDim a(m) End Sub 运行程序时,单击 Command1后输入整数 10,再单击 Command2后输入整数 5,则数组 a中元素的个数是 ( )。 ( A) 5 ( B) 6 ( C) 10 ( D) 11 19 设有如下声明语句 Option
16、 Base 1 Dim m(2, -1 To 5)As Integer 则数组 arr中数组元素 的个数是 ( )。 ( A) 10 ( B) 12 ( C) 14 ( D) 21 20 以下数组定义语句中,错误的是 ( )。 ( A) Static a(10)As Integer ( B) Dim c(3, 1 To 4) ( C) Dim d(-10) ( D) Dim b(0 To 5, 1 To 3)As Integer 21 设有下面的程序段: x=InputBox(“请输入一个整数 “) ReDim a(x) For k=x To 0 Step-1 a(k)=k Next k 一般
17、,在这段程序之前应先进行数组 a的定义。下面定义语句中正确的是 ( )。 ( A) Dim a(100)As Integer ( B) Dim a()As Integer ( C) Dim a As Integer ( D) Dim a(0 To 100)As Integer 22 在程序中要使用 Array函数给数组 arr赋初值,则以下数组变量定义语句中错误的是 ( )。 ( A) Static arr ( B) Dim arr(5) ( C) Dim arr() ( D) Dim arr As Variant 23 设有如下程序: Option Base 1 Dim a(3, 4)As
18、Integer, b(4, 3)As Integer Private Sub Command1_Click() 循环 1 For i=1 To 3 For j=1 To 4 b(j, i)=a(i, j) Next j Next i 循环 2 x=b(1, 1) For i=1 To 4 For j=1 To 3 Print b(i, j); If x b(i, j)Then x=b(i, j) Next j Print Next i End Sub 程序中的数组 a已被赋值。以下关于上述程序的叙述中,正确的是 ( )。 ( A)窗体模块中,不能使用 Dim声明 a、 b数组 ( B) “循环
19、 1”可以正常运 行 ( C) “循环 2”中循环变量 i、 j的终值不对,所以不能正常运行 ( D)程序可以正常运行, x中保存的是数组 b中所有元素中最小的数 24 若窗体上有一个名为 Command1的命令按钮,并有下面的程序: Private Sub Command1_Click() Dim arr(5)As Integer For k=1 To 5 arr(k)=k Next k prog air() For k=1 T0 5 print art(k); Next k End Sub Sub prog(a()As Integer) n=UBound(a) For i=n To 2 s
20、tep-1 For i=1 To n-1 if a(j) a(j+1)Then t=a(j): a(j)=a(j+1): a(j+1)=t End If Next i Next i End Sub 程序运行时,单击命令按钮后显示的是 ( )。 ( A) 1 2 3 4 5 ( B) 5 4 3 ( C) 0 1 2 3 4 ( D) 4 3 2 25 编写如下程序: Private Sub Command1_Click() Dim a(3, 3)As Integer Dim 8 As Integer For i=1 To 3 For j=1 To 3 a(i, j)=i*j+i Next j
21、Next i s=0 For i=1 To 3 s=s+a(i, 4-i) Next i Print s End Sub 程序运行后,单击命令按钮 Command1,输出结果为 ( )。 ( A) 7 ( B) 13 ( C) 16 ( D) 20 26 窗体上有单选钮和列表框控件。单击名称为 Option1、标题为 “国家 ”的单选钮,向列表框中添加国家名称,如下图所示。 Option1的单击事件过程如下: Private Sub Option1_Click() Dim arr aft=Array(“中国 “, “日本 “, “德国 “, “美国 “, “澳大利亚 “) List1 Clea
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 VB 机试 控制 结构 数组 模拟 答案 解析 DOC
