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

上传人:outsidejudge265 文档编号:500009 上传时间:2018-11-30 格式:DOC 页数:23 大小:62.50KB
下载 相关 举报
[计算机类试卷]国家二级VB机试(控制结构)模拟试卷13及答案与解析.doc_第1页
第1页 / 共23页
[计算机类试卷]国家二级VB机试(控制结构)模拟试卷13及答案与解析.doc_第2页
第2页 / 共23页
[计算机类试卷]国家二级VB机试(控制结构)模拟试卷13及答案与解析.doc_第3页
第3页 / 共23页
[计算机类试卷]国家二级VB机试(控制结构)模拟试卷13及答案与解析.doc_第4页
第4页 / 共23页
[计算机类试卷]国家二级VB机试(控制结构)模拟试卷13及答案与解析.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、国家二级 VB机试(控制结构)模拟试卷 13及答案与解析 一、选择题 1 现有语句: y=IIf(x 0, X Mod 3, 0)设 x=10,则 y的值是 ( A) 0 ( B) 1 ( C) 3 ( D)语句有错 2 设 x是整型变量,与函数 f(x 0, x, X)有相同结果的代数式是 ( A) x ( B) x ( C) x ( D) #NAME? 3 计算下面分段函数的正确语句是 ( A) Y=IIf(x 0, x+1, IIf(x 0, x一 1, 0) ( B) y=IIf(x=0, 0, IIf(x 0, x1, x+1) ( C) Y=IIf(x 0, x+1, IIf(x

2、0, 0, x1) ( D) Y=Ilf(x=0, 0, x一 1, x+1) 4 现有如下语句: x=IIf(a 50, Int(a 3), a Mod 2)当 a=52时, x的值是 ( A) 0 ( B) 1 ( C) 17 ( D) 18 5 在下面语句或函数中,不能描述选择结构的是 ( A) If语句 ( B) IIf函数 ( C) Select Case语句 ( D) While语句 6 设窗体上有 Text1、 Text2两个文本框,并编写了下面的程序代码: Private Sub Text1_KeyPress(KeyAscii As Integer) If“A“ =Chr(Ke

3、yAscii)And Chr(KeyAscii) =“Z“Then KeyAscii=KeyAscii+(Asc(“a“) Asc(“A“) End If n=0 IfKeyAscii=13 Then For k=1 To Len(Text1) ch =Mid(Text1, k, 1) If“a“ =ch And ch =“z“Then n=n+1 Next k Text2=n End If End Sub 运行程序,在 Text1中输入 “Visual Basic 6 0”后按回车键,则在 Text2文本框显示的是 ( A) 11 ( B) 16 ( C) Visual Basic 6 0

4、( D) visual basic 6 0 7 编写如下程序: Private Sub Commandl_Click() Dim a As Integer,b As Integer a=3: b=2 Ifa*b 10 Then b=b+1 Else b=b 1 End If Print b a0 End Sub 程序运行后,单击命令按钮 Commandl,输出结果为 ( A) True ( B) False ( C) 1 ( D) -1 8 编写如下程序: Private Sub Commandl_Click() Dim score As Integer score=86 If score 8

5、5 Then r=1 Else If score 60 Then r=2 Else r=0 End If Printr End Sub 程序运行后,单击命令按钮 Commandl,输出结果为 ( A) 0 ( B) 1 ( C) 2 ( D) 86 9 设有如下事件过程: Private Sub Form_Click() Sum=0 For k=1 T0 3 Ifk =1 Then x=1 ElseIfk =2 Then x=2 ElseIfk =3 Then x=3 Else x=4 End If Sum=Sum+x Next k Print Sum End Sub 程序运 行后,单击窗体,

6、输出结果是 ( A) 9 ( B) 6 ( C) 3 ( D) 10 10 设有下面的语句: Print IIf(x 0, 1, IIf(x 0, 1, 0)与此语句输出结果不同的程序段是 ( A) Ifx 0 Then x=1 Elselfx 0 Then x= 1 End If Print x ( B) Ifx 0 Then Print1 ElseIfx 0 Then Print 1 Else Print 0 End If ( C) Select Case x Case Is 0 Print1 Case Is 0 Print 1 Case Else Print 0 End Select (

7、 D) Ifx 0 Then If x 0 Then Print1 Elself x 0 Then Print 1 Else Print 0 End If End If 11 在窗体上画一命令按钮和一文本框,其名称分别为 Commandl和 Textl,然后编写如下程序: Function Fun(x As Integer, Private Sub Commandl_Click() y As Integer)As Integer Dim a As Integer, b As Integer Fun=IIf(x y, x, y) a=20: b=12 End Function Text1 Tex

8、t=Str(Fun(a, b) Private Sub Form Load() End Sub Command1 Default=True End Sub 程序运行后,按回车键,文本框中显示的内容为 ( A) 12 ( B) 20 ( C) 24 ( D) 40 12 三角形的构成条件是:任意 2边之和大于第 3边。设变量 a、 b、 c是 3条直线的长度,要求判断这 3条直线能否构成一个三角形。 下面有 3个程序段可以正确判断,另一个不能正确判断的是 ( A) If a+b c And a+c b And b+c a Then Print“可以构成一个三角 形 “ Else Print“不能

9、构成三角形 “ End If ( B) Ifa+b c Or a+c b Or b+C a Then Print“可以构成一个三角形 “ Else Print“不能构成三角形 “ End If ( C) Ifa+b =C Or a+c =b Or b+C =a Then Print“不能构成三角形 “ Else Print“可以构成一个三角形 “ End If ( D) If a+b =C Or a+c =b Then Print“不能构成三角形 “ElseIf b+C =a Then Print“不能构成三角形 “ Else Print“可以构成一个三角形 “ End If 13 设 x为一

10、整型变量,且语句的开始为: Select Case x,则不符合语法规则的Case子句是 ( A) Case Is 20 ( B) Case1 To 10 ( C) Case 0 Is And IS 20 ( D) Case 2, 3, 4 14 假定有如下情况语句: Select Case X能表示 X 5的 Case子句是 ( A) Case Not( 5 To 5) ( B) Case 5 To 5 ( C) Case Is 5, Is 5 ( D) Case Abs(X) 5 15 现有如下一段程序: Private Sub Commandl_Click() x=UCase(Input

11、Box(“输入: “) Select Case X Case“A“To“C“ Print“考核通过 !“ Case“D“ Print“考核不通过 !“ Case Else Print“输入数据不合法 !“ End Select End Sub 执行程序,在输入 框中输入字母 “B”,则以下叙述中正确的是 ( A)程序运行错 ( B)在窗体上显示 “考核通过 !” ( C)在窗体上显示 “考核不通过 !” ( D)在窗体上显示 “输入数据不合法 !” 16 窗体上有 1个名称为 Commandl的命令按钮,事件过程如下: Pfivme Sub Commandl_Click() Dim num A

12、s Integer x As Integer num=Val(InputBox(“请输入一个正整数 “) Select Case Dam Case Is 100 x=x+num Case Is 90 x=num Case Else x=x*num End Select Print x; End Sub 运行程序,并在三次单击命令按钮时,分别输入正整数 100、 90和 60,则窗体上显示的内容为 ( A) 0 0 0 ( B) 0 0 60 ( C) 0 90 0 ( D) 100 0 60 17 窗体上有一个名称为 Textl的文本框,一个名称为 Commandl的命令按钮。命令按钮的单击事

13、件过程如下: Private Sub Commandl Click() Dim x1 As Integer,x2 As Integer,x3 As Integer s=Trim(Textl Text) strLen=Len(s) For i=1 T0 strLen C=Mid(s, i, 1) Select Case c Case“0“ To “9“ x1=x1+1 Case“A“To“Z“ x2=x2+1 Case“a“To“z“ x3=3+1 Case Else x4=x4+1 End Select Next Print“x1“; x1, “x2“; x2, “x3“; x3, “x4“;

14、 x4 End Sub 以下关于上述程序的叙述中,正确的是 ( A) S是去掉文本框中字符串末尾的空格 ( B) Select Case C有误, Case后应该是一个表达式 ( C)各 Case分支条件有误,不能用 To表示字符的取值区间 ( D) x4是字符串中非字母、非数字字符的个数 18 编写如下程序: Private Sub Commandl_Click() Dim m As Integer,n As Integer m=2: n=1 Select Case m Case 1 Select Case n Case 1 Print“AAA“ Case 2 Print“BBB“ Case

15、 2 Print“CCC“ End Select End Sub 程序运行后,单击命令按钮 Commandl,输出结果为 ( A) AAA ( B) BBB ( C) CCC ( D) 1 19 某人设计了如下程序用于计算并输出 7!(7的阶乘 ) Private Sub Commandl_Click() t=0 For k=7 To 2 Step-1 t=t*k Next Prite t End Sub 执行程序时,发现结果是错误的。下面的修改方案中能够得到正确的是 ( A)把 t=0改为 t=1 ( B)把 For k=7 to 2 Step-1改为 For k=7 to 1 Step-1

16、 ( C)把 For k=7 to 2 Step-1改为 For k=1 to 7 ( D)把 Next改为 Next k 20 为计算 an的值,某人编写了函 数 power如下: Private Function power(a As Integer, n As Integer)As Long Dim p As Long P=a For k=1 To n P=p*a Next k Power=p End Function 在调试时发现是错误的,例如 Print power(5, 4)的输出应该是 625,但实际输出是3125。程序需要修改。下面的修改方案中有 3个是正确的,错误的一个是 (

17、 A)把 For k=1 To n改为 For k=2 To n ( B)把 P=p*a改为 P=pa ( C)把 For k=1 To n改为 For k=1 To n 1 ( D)把 P=a改为 P=1 21 某人为计算 n!(0 n =12)编写了下面的函数过程: Private Function fun(n As Integer)As Long Dim P As Long P=1 For k=n 1 To 2 Step 1 p=p*k Next k fun=P End Function 在调试时发现该函数过程产生的结果是错误的,程序需要修改。下面的修改方案中有 3种是正 确的,错误的方

18、案是 ( A)把 P=1改为 P=n ( B)把 For k=n 1 To 2 Step 1改为 For k=1 To n 1 ( C)把 For k=n 1 To 2 Step 1改为 For k=1 To n ( D)把 For k=n 1 To 2 Step 1改为 For k=2 To n 22 阅读程序: Private Sub Form_Click() a=0 Forj=1 To 15 a=a+j Mod 3 Nextj Print a End Sub 程序运行后,单击窗体,输出结 果是 ( A) 105 ( B) 1 ( C) 120 ( D) 15 23 在窗体上画一个命令按钮

19、,其名称为 Commandl,然后编写如下代码: Option Base 1 Private Sub Commandl_Click() Dim a a=Array(1, 2, 3, 4): j=1 For i=4 To 1 Step1 s=s+a(i)*j: j=j*10 Next i Print s End Sub 程序运行后,单击命令按钮,其输出结果是 ( A) 4321 ( B) 1234 ( C) 34 ( D) 12 24 在窗体上画一个命令按钮,名称为 Commandl,然后编写如下代码: Option Base 0 Private Sub Commandl_Click() Dim

20、 A 1(4)As Integer, A2(4)As Integer For k=0 To 2 A1(k+1)=InputBox(“请输入一个整数 “) A2(3 k)=Al(k+1) Next k Print A2(k) End Sub 程序运行后,单击命令按钮,在输入对话框中依次输入 2、 4、 6,则输出结果为 ( A) 0 ( B) 1 ( C) 2 ( D) 3 25 设有以下程序: 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

21、=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 26 有下面程序代码: Private Sub Commandl_Click() a: 3: S=0 For k=1 T0 5 s=s+a Mod k: a=a+k Next k Print S End Sub 程序运行后,单击命令按钮 Commandl,输出结果是 ( A) 15 ( B) 13 ( C) 4 ( D) 1 27 有下面程序代码: P

22、rivate Sub Commandl_Click() 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= sign Next k End Sub 程序运行后,单击命令按钮 Commandl,输出结果是 ( A) 3-1 2-3-1 ( B) 3 5 8 13 21 ( C) -1 1-2-1-1 ( D) 3 4 5 6 7 国家二级 VB机试(控制结构)模拟试卷 13答案与解析 一、选择题 1 【正确答案】 B 【试题解析】 本题考查的考点是有关 IIf函数的。 IIf函数可

23、用于执行简单的条件判断操作,它是 “IfthenElse” 结构的简写版本。 格式: Result=IIf条件 , True部分, False部分 ) 其中 “Result”是函数的返回值, “条件 ”是一个逻辑表达式。当 “条件 ”为真时, IIf函数返回 “True部分 ”的值,而当 “条件 ”为假时返回 “False部分 ”的值。 “True部分 ”或 “False部分 ”可以是表达式、变量或其他函数。本题中由 于 x=10是大于 0的,所以返回值为 x Mod 3的值即 1。 【知识模块】 控制结构 2 【正确答案】 B 【试题解析】 IIf函数可以用来执行简单的条件判断操作,它是 “

24、IfThenElse”结构的简写版本,其格式为: result=IIF(条件 ,True部分, False部分 )。其中“result”是函数的返回值, “条件 ”是一个逻辑表达式。当 “条件 ”为真时, IIf函数返回 “Trile部分 ”,否则返回 “False部分 ”。 “True部分 ”或 “False部分 ”可以是表达式、变量或其他函数。本题中 IIf函数的作用是如果 x 0则返回 x,否则返回x,等价于 x。 【知识模块】 控制结构 3 【正确答案】 A 【试题解析】 IIf函数可用来执行简单的条件判断操作,它是 “IfThenElse” 结构的简写版本。格式为: result=I

25、If条件, True部分, False部分 )。当条件为真时, IIf函数返回 True部分,而当条件为假时,返回False部分。本题中分段函数共有三段,因此需要使用嵌套的 IIf函数。 【知识模块】 控制结构 4 【正确答案】 C 【试题解析】 IIf函数可用来执行简单的条件判断操作,它是 “IfThenElse” 结构的简写版本。格式为: resuIt=IIf条件, The部分, False部分 )。当条件为真时, IIf函数返回 True部分 ,而当条件 为假时,返回 False部分。本题中 a的值是 52,所以条件为真,将返回 52 3的值即 17。 【知识模块】 控制结构 5 【正确

26、答案】 D 【试题解析】 选择结构可以使用 IIf函数、 If语句来实现两个分支的选择结构,使用 Select Case语句 实现多分支选择结构, WhiIe语句用来描述循环结构。 【知识模块】 控制结构 6 【正确答案】 A 【试题解析】 本题中的第一个 IfThen 结构的作用是将所有输入的大写字符转换为小写字符;第二个 If结构的条件是按下回车键,里面嵌套了一个 For循环,在循环中依次取出文本框中的每一个字符进行判断,若其为小写字符则 n自加 1,循环结束后 n的值就是文本框中字母的个数。 【知识模块】 控制结构 7 【正确答案】 B 【试题解析】 本题的程序中由于 a*b 10条件成

27、立,因此执行 Then分 支, b自加 1变成 3,最后输出 b.a 0的值即 False。 【知识模块】 控制结构 8 【正确答案】 B 【试题解析】 块结构条件语句的格式为: If条件 1 Then : 语句块 1 ElseIf 条件 2 Then :语句块 2 Else : 语句块 n End If 如果 “条件 1”为 True,则执行 “语句块 1”并跳出结构;否则如果 “条件 2”为True,则执行 “语句块 2”并跳出结构 否则执行 “语句块 n”并结束整个结构。 【知识模块】 控制结构 9 【正确 答案】 B 【试题解析】 本题总共循环三次,在每次循环中由于循环变量 k的值不同

28、,将分别进入 If语句的不同分支。在块结构的 If语句中,一旦满足某个 If或者 ElseIf后面的条件,将不再判断其他条件是否满足。所以本题输出的是 1+2+3的值。 【知识模块】 控制结构 10 【正确答案】 D 【试题解析】 IIf函数可用来执行简单的条件判断操作,它是 “IfthenEIse” 结构的简写版本。格式为: Result=IIf条件, True部分, False部分 )。当条件为真时, IIf函数返回 True部分,而当条件为假时,返回False部分。本题中 lIf函数的功能是判断 x是不是正数,如果是返回 1,否则继续判断 a是不是负数,如果是返回 1,否则返回 0,即返

29、回 x的符号。分析 4个选项只有 D选项不应该使用 ElseIf语句而应该使用 Else语句。 【知识模块】 控制结构 11 【正确答案】 A 【试题解析】 命令按钮的 Default属性用于设置窗体的缺省命令按钮,程序运行时,按下 Enter键将执行该命令按钮的单击事件过程。 IIf函数可用来执行简单的条件判断操作,它是 “IfthenElse” 结构的简写版本。格式为: Result=IIf(条件, True部分, False部分 )。当条件 为真时, IIf函数返回True部分,而当条件为假时,返回 False部分。本题在函数 Fun中判断 x是否比 y小,如果小则返回 x作为返回值,否

30、则返回 y作为返回值,即返回两个参数中的最小值。 【知识模块】 控制结构 12 【正确答案】 B 【试题解析】 任意两边之和大于第三边,必须要求任意两个变量的和全部大于另一个变量,也就是三个表达式必须同时成立,只有一 个或两个成立是不行的,故此 B选项不能正确判断。 【知识模块】 控制结构 13 【正确答案】 C 【试题解析】 Case语句中含有多个参量,这些参量的含义分别为: 测试表达式:可以是任何表达式,通常采用变量或常量: 语句块 1,语句块 2, ;每个语句块由一行或多行合法的 Visual Basic语句组成; 表达式列表 1,表达式列表 2, ;称为域值。可采用 2种形式之一:表达

31、式 1,表达式 2 和表达式 1 To表达式 2。 Is关系运算表达式,其中可使用的运算符有 =(等于 )、 (不等于 )、 (小于 )、 (大于 )、 =(小于或等于 )、 =(大于或等于 )。 【知识模块】 控制结构 14 【正确答案】 C 【试题解析】 多分支控制结构又称为 Select Case语句或 Case语句,可以同时对条件的多个取值来判断。其格式为: Select Case 测试表达式 Case表达式列表 1 : 语句块 1 Case Else: 语句块 n End Select Case语句以 Select Case开头,以 End Select结束。其中,表达式列表 1,表

32、达式列表 2, 称为域值 。可采用 3种形式: 表达式 1,表达式 2 ; 表达式 1 To表达式 2: Is关系运算表达式。其中,可使用的运算符有等于 (=)、不等于 ( )、小于 ( )、大于 ( )、小于或等于 ( =)、大于或等于 ( =)。 【知识模块】 控制结构 15 【正确答案】 B 【试题解析】 多分支控制结构又称为 Select Case语句或 Case语句,可以同时对条件的多个取值来判断。 【知识模块】 控制结构 16 【正确答案】 B 【试题解析】 多分支控制结构又称为 Select Case语句 或 Case语句,可以同时对条件的多个取值来判断。本题中第一次输入 100

33、执行 Case EIse分支,由于 x是默认初值 0所以输出 0:第二次输入 90也执行 Case Else分支,由于 x是默认初值 0所以输出 0;第三次输入 60执行第二个分支输出 60。 【知识模块】 控制结构 17 【正确答案】 D 【试题解析】 Trim函数的作用是去掉文本框中字符串两端的空格:多分支控制结构又称为 Select Case语句或 Case语句,可以同时对条件的多个取值来判断,Case后面的表达式可采用 3种形式: 表达式 1,表达式 2 ; 表达式 1 To表达式 2; Is关系运算表达式。最终 x1是字符串中数字的个数; x2是字符串中大写字母的个数; x3是字符串

34、中小写字母的个数; x4是字符串中非字母、非数字字符的个数。 【知识模块】 控制结构 18 【正确答案】 C 【试题解析】 多分支控制结构又称为 Select Case语句或 Case语句,可以同时对条件的多个取值来判断。本题是一个嵌套的 Select Case语句,首先判断 m的值,本题由于 m的值为 2,所以不会执行 Case 1分支,直接执行 Case 2分支输出“CCC” 【知识模块】 控制结构 19 【正确答案】 A 【试题解析】 本题考查循环控制结构。在 Commandl的 Click事件过程中,变量t的初值为 0,在 For循环里面, t变量保存累乘积。由于 t初值为 0,因此累

35、乘积永远都是 0,因此 t的初值应该设置为 1。 【知识模块】 控制结构 20 【正确答案】 B 【试题解析】 本题考查循环控制结构。选项 A)循环少执行一次,由于 p初始化为 a相当于执行了第一次,因此循环必须少执行一次才能计算正确的 an;选项 B)中 pa,已经是幂运算了,不需 要循环来计算;选项 C)循环少执行一次,正确;选项 D)中 p初始化为 1,循环执行 n次正确。 【知识模块】 控制结构 21 【正确答案】 B 【试题解析】 本题考查的考点是有关循环次数的。本题题干中程序的错误在于,p的值是从 1一直乘到 n 1的值,也就是 n 1的阶乘。选项 A)可以在这个基础上再乘 n就得

36、到 n的阶乘;选项 C)和 D)都能够保证从 1乘到 n,只有选项 B)是错误的。 【知识模块】 控制结构 22 【正确答案】 D 【试题解析】 本题考查的考点是有关循环的。本题中循环的特点是:每执 行 3次循环,依次向 a中加上 0+1+2也就是 3;循环共执行了 15次,所以 a中的值应该为 15。 【知识模块】 控制结构 23 【正确答案】 B 【试题解析】 本题考查的考点是有关循环的。在本题的循环中,首先取得数组的最后一个元素并乘 1后放入 s;然后取得第 3个元素并乘 10后加到 s里面,然后取得第 2个元素并乘 100后加到 s里面,最后取得第 1个元素并乘 1000后加到 s里面

37、,所以 s的最终值为 1234。 【知识模块】 控制结构 24 【正确答案】 C 【试题解析】 本题的关键之处在于抓住每 次具体给哪个数组元素进行了赋值,第一次循环中输入的 2被赋给了 A1(1)和 A2(3),第二次循环中输入的 4被赋给了A1(2)和 A2(2),第三次循环中输入的 6被赋给了 A1(3)和 A2(1),跳出循环时 k的值为 3,所以最后输出 2。 【知识模块】 控制结构 25 【正确答案】 A 【试题解析】 本题考查的考点是有关循环的。本题需要写出每一次循环的变量变化情况。第一次循环时输入 15, If判断为真,所以 a=15, x=15;第二次循环时输入 24, If判

38、断为假,所以 a=15+15=30, x仍然为 15:第三 次循环时输入 35, If判断为真,所以 a=30+35=65, x=35;第四次循环时输入 46, If判断为假,所以a=65+35=100, x=35。 【知识模块】 控制结构 26 【正确答案】 C 【试题解析】 在 For循环中 k的值从 1变化到 5,在每次循环中为累加和变量 s累加上 a Mod k的值然后令 a自加 k,故此整个循环过程中 s=0+0+0+1+3=4。 【知识模块】 控制结构 27 【正确答案】 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。 【知识模块】 控制结构

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

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