目 录
第一部分 历年真题及详解 ............................................................................................................................................... 2
2016年3月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 ............................................ 2 2015年9月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 .......................................... 27 2015年3月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 .......................................... 44 2014年9月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 .......................................... 60 2014年3月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 .......................................... 76 2013年9月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 .......................................... 93 2013年3月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 ........................................ 111 2012年9月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 ........................................ 130 2012年3月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 ........................................ 145 2011年9月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 ........................................ 158 2011年3月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 ........................................ 172 2010年9月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 ........................................ 186 2010年3月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 ........................................ 202 2009年9月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 ........................................ 218 2009年3月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 ........................................ 232 2008年9月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解 ........................................ 247 第二部分 模拟试题及详解 ........................................................................................................................................... 262
全国计算机等级考试《二级Visual Basic语言程序设计》模拟试题及详解(一) ......................................... 262 全国计算机等级考试《二级Visual Basic语言程序设计》模拟试题及详解(二) ......................................... 281
第一部分 历年真题及详解
2016年3月全国计算机等级考试《二级Visual Basic语言程序设计》真题及详解
(考试时间120分钟 满分100分)
一、选择题(每小题1分,共40分)
1.窗体上的3个命令按钮构成名称为Command1的控件数组,如图1所示。
图1
程序如下:
Private Sub Command1_Click(Index As Integer) If Index= 1 Then
Print\计算机等级考试\ End If
If Index=2 Then
Print Command1(2).Caption End If End Sub
运行程序,单击“命令按钮2”,则如下叙述中正确的是( )。 A.Print Command1(2).Caption语句有错 B.在窗体上显示“命令按钮2” C.在窗体上显示“命令按钮3”
D.在窗体上显示“计算机等级考试” 【答案】D
【解析】控件数组的下标默认从0开始,所以Index=0对应命令按钮1;Index=1对应命令按钮2;Index=2对应命令按钮3。当单击命令按钮2时,Index=1,因此程序会输出“计算机等级考试”。
2.在窗体上画一个名称为Command1的命令按钮,再画两个名称分别为Label1、Label2的标签,然后编写如下程序代码:
Private X As Integer
Private Sub Command1_Click() X=5:Y=3
Call proc(X,Y) Label1.Caption=X Label2.Caption=Y End Sub
Private Sub proc(a As Integer, ByVal b As Integer) X=a*a Y=b+b End Sub
程序运行后,单击命令按钮,则两个标签中显示的内容分别是( )。 A.25和3 B.5和3
C.25和6 D.5和6 【答案】A
【解析】X是在窗体模块中起作用的模块变量,Y是一个局部变量。因此proc过程对变量X和Y进行赋值后,X=a*a=5*5=25,使按钮单击事件中的变量X值变为25;而变量Y并没有改变,仍是3。
3.下列数据结构中,能够按照“先进后出”原则存取数据的是( )。 A.循环队列 B.栈 C.队列 D.二叉树 【答案】B
【解析】栈和队列都是受限的线性表。栈按照“先进后出”的原则组织数据,插入与删除操作被限制在栈顶一端进行;队列采用“先进先出”的原则组织数据。循环队列是队列的一种特殊形式。
4.设有如下通用过程:
Public Function Fun(xStr As String)As String Dim tStr As String,strL As Integer tStr=\
strL=Len(xStr) i=1
Do While i<=strL/2
tStr=tStr & Mid(xStr,i,1)& Mid(xStr,strL-i+1,1) i=i+1 Loop Fun=tStr End Function
在窗体上画一个名称为Command1的命令按钮,然后编写如下的事件过程: Private Sub Command1_Click() Dim S1 As String S1=\
Print UCase(Fun(S1)) End Sub
程序运行后,单击命令按钮,输出结果是( )。 A.ABCDEF B.abcdef C.AFBECD D.DEFABC 【答案】C
【解析】通用过程Fun中的语句:tStr=tStr & Mid(xStr,i,1)& Mid(xStr,strL-i+1,1)。其中,Mid(xStr,i,1)表示从字符串的左边开始依次取一个字符,Mid(xStr,strL-i+1,1)表示从串的右边开始依次取一个字符,所以整个语句的功能是从一个字符串两端依次各取一对字符连成一个字符串。UCase(Fun(S1))= UCase(\)=\。
5.软件设计中模块划分应遵循的准则是( )。 A.低内聚低耦合 B.高内聚低耦合 C.低内聚高耦合 D.高内聚高耦合 【答案】B
【解析】软件设计中模块划分应遵循:①高内聚低耦合;②模块大小规模适当;③模块的依赖关系适当等。
6.窗体上有一个名称为Command1的命令按钮,其事件过程如下: Private Sub Command1_Click() x=\ a=Right(x,11) b=Mid(x,7,5) c=MsgBox(a,,b) End Sub
运行程序后单击命令按钮。以下叙述中错误的是( )。 A.信息框的标题是Basic
B.信息框中的提示信息是Programming C.c的值是函数的返回值 D.MsgBox的使用格式有错 【答案】D
【解析】Right(x,11)返回字符串变量x右边的11个字符,即“Programming”,Mid(x,7,5)返回字符串变量x的从第7个字符开始取长度为5的字符串,即将“Basic”。MsgBox语句的格式为:MsgBox(Prompt[,Battons][,Title][,Helpfile,Context]),其中,第1个参数:提示内容是必需的,不能省略;第2个参数:可选整型表达式,默认值0,指定信息框中按钮数目、类型、图标类型、默认按钮等;第3个参数:如果省略,则默认显示它所属的工程名。当执行MsgBox语句时出现信息框后,必须关闭信息框才可执行其他操作。所以本题中a是提示信息,b是信息框的标题。
7.表达式2*3^2+4*2/2+3^2的值是( )。 A.30 B.31 C.49 D.48 【答案】B 【解析】VB中算术运算符的优先级顺序为:乘方>乘、除>整除>取模>加、减。所以先计算^,再计算*和/,最后计算+,即原式=2*9+4*2/2+9=18+4+9=31。
8.下面程序的执行结果是( )。 Private Sub Command1_Click() a=0 k=1
Do While k<4 x=k^k^a k=k+1 Print x; Loop End Sub A.31427 B.111 C.149 D.000 【答案】B
【解析】a=0,x=k^k^a=(k^k)^0=1。循环执行3次后,k=4,循环结束,所以一共输出3个1。
9.用来设置文字字体是否斜体的属性是( )。 A.FontUnderdine
B.FontBold C.FontSlope D.FontItalic 【答案】D
【解析】FontItalic属性用来设置文字是否为斜体;FontUnderline属性用来设置文字是否加下划线;FontBold属性用来设置文字是否加粗。没有FontSlope属性。
10.现有如下程序:
Private Sub Command1_Click() s=0
For i=1 To 5 s=s+f(5+i) Next Print s End Sub
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 【答案】B
【解析】按钮事件实现对函数过程f返回值的累加;函数过程f当参数x大于等于10时返回x+1,否则返回x+2。因此s=11+11+10+9+8=49。
11.窗体上有一个名称为CD1的通用对话框控件和由4个命令按钮组成的控件数组Command1,其下标从左到右分别为0、1、2、3。窗体外观如图2所示。
图2
命令按钮的事件过程如下:
Private Sub Command1_Click(Index As Integer) Select Case Index Case 0
CD1.Action=1 Case 1
CD1.ShowSave Case 2
CD1.Action=5