二级VISUAL BASIC笔试-226
(总分:100.00,做题时间:90分钟)
一、选择题(总题数:35,分数:70.00)
1.实体是信息世界中广泛使用的一个术语,它用于表示


(分数:2.00)
 A.有生命的事物
 B.无生命的事物
 C.实际存在的事物 
 D.一切事物
解析:[解析] 实体是客观存在且可以相互区别的事物。实体可以是具体的对象,如一个学生,也可以是一个抽象的事件,如一次出门旅游等。因此,实体既可以是有生命的事物,也可以是无生命的事物,但它必须是客观存在的,而且可以相互区别。
2.在修改列表框内容时,AddItem方法的作用是


(分数:2.00)
 A.在列表框内插入一行文本 
 B.在列表框中插入1多行文本
 C.删除列表框中指定的项目
 D.清除列表框内的全部内容
解析:[解析] 列表框可以使用AddItem,Clear和 RemoveItem等方法,用来在运行期间改变
列表框的内容。AddItem方法用来在列表框中插入一行文本:格式为:列表框.AddItem项目字符串[,索引值];Clear方法用来清除列表框中的全部内容,格式为:列表框.Clear; RemoveItem方法用来删除列表中指定的项目,格式为:列表框.RemoveItem索引值。
3.一个工程中含有窗体Form1、Form2和标准模块Modell,如果在Form1中有语句Public X As Integer,在Modell中有语句Public Y As Integer。则以下叙述中正确的是


(分数:2.00)
 A.变量X、Y的作用域相同
 B.Y的作用域是Modell
 C.在Form1中可以直接使用X 
 D.在Form2中可以直接使用X和Y
解析:[解析] 在窗体声明部分声明的变量是窗体级变量,它只能在该窗体内直接使用,在标准模块中使用Public声明的变量是全局变量,可以直接在工程中使用。
4.有如下函数过程:
Function Fun (By Val x As Ingeger, ByVal y As Integer)As Integer
Do While…y<>0
reminder=x Mod y
x=y
y=reminder
Loop
Fun=x
End Function
以下是调用该函数的事件过程,该程序的运行结果是
Private Sub Command1_Click()
Dim a As Integer
Dim b As Integer
a=100:b=25
x=Fun(a,b)
Print x
End Sub


(分数:2.00)
 A.0
 B.25 
 C.50
 D.100
解析:[解析] 本题的难点是子函数调用过程。子函数Fun的功能是求x和y的公约数,由“欧几里德”求最大公约数的算法可知,当余数r为0时,x为x和y的最大公约数。变量,的值通过子
函数名Fun返回。
5.在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有


(分数:2.00)
 A.特定的数据模型 
 B.数据无冗余
 C.数据可共享
 D.专门的数据管理软件
解析:[解析] 在文件系统中,相互独立的记录其内部结构的最简单形式是等长同格式记录的集合,易造成存储空间大量浪费,不方便使用。而在数据库系统中,数据是结构化的,这种结构化要求在描述数据时不仅描述数据本身,还要描述数据间的关系,这正是通过采用特定的数据模型来实现的。
6.下列程序段的执行结果为
a=5
For k=1 To 0
a=a * k
Next k
Print k;a


(分数:2.00)
 A.-1 6
 B.-1 16
 C.1 5 
 D.11 21
解析:[解析] For循环有两种格式,其中一种格式是:
For循环变量=初值To终值Step[步长]
语句
[Exit For]
语句
Next[循环变量]
此循环语句的执行过程为:“循环变量”首先取得“初值”,检查是否超过“终值”,如果超过,一次也不循环就跳出循环,属于“先检查后执行”的类型。现在来看程序段,For k=1 To 0中,初值为1,终值为0,显然当“循环变量”首先取得“初值”1,检查结果超过“终值” 0,所以一次也不执行,即最后执行Print k=1,a=5。
7.执行下面的程序段后,变量c的值为
a=14
b=30
Select Case b/10
Case 0
c=a * 10 + b
Case 1 To 9
c=a*100+b
Case 10 To 99
c=a*1000+b
End Select
Print c


(分数:2.00)
 A.363
vb采用什么的编程机制 B.2548
 C.1430 
 D.9875
解析:[解析] 过程分析:b:30,所以b/10=3,在 1-9之间,执行语句c=a*100+b,c=14*100+ 30=1430。
8.下列叙述中错误的是


(分数:2.00)
 A.Visual Basic是采用了事件驱动编程机制
 B.Visual Basic是面向过程的程序设计语言 
 C.Visual Basic是可视化程序设计语言
 D.Visual Basic是面向对象的程序设计语言
解析:[解析] Visual Basic是面向对象,采用事件驱动机制的程序设计方法。
9.Print方法可以在对象上输出数据,这些对象包括



(分数:2.00)
 A.图片框 
 B.状态栏
 C.标题栏
 D.代码窗口
解析:[解析] Print方法可以在窗体、立即窗口、图片框、打印机这些对象上输出数据。
10.要获得文件列表框中当前被选中的文件的文件名,则应使用哪个属性


(分数:2.00)
 A.Dir
 B.Path
 C.Drive
 D.Filename 
解析:[解析] 文件列表框控件的相关属性
FileName属性用来设置或返回程序运行过程中当前选中的文件名称。
Path属性用来设置或返回程序运行过程中当前选中的文件的路径。
11.栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是


(分数:2.00)
 A.ABCED
 B.DCBEA 
 C.DBCEA
 D.CDABE
解析:[解析] 栈操作原则上“后进先出”,栈底至栈顶依次存放元素A、B、C、D,则表明这4个元素中 D是最后进栈,B、C处于中间,A最早进栈。所以出栈时一定是先出D,再出C,最后出A。
12.在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
For n=1 To 20
If n Mod 3<>0 Then m=m+n/3
Next
Print n
End Sub
程序运行后,如果单击命令按钮,则窗体上显示的内容是


(分数:2.00)
 A.15
 B.18
 C.21 
 D.24
解析:[解析] n从1到20,循环共执行20次,当n =21时,循环条件不成立,循环结束,最后输出n的值为21。因此,选项C正确。
13.下列关系运算结果为True的是



(分数:2.00)
 A.“1”+2=“12”
 B.“1”+2=“3”
 C.“1”#2=“12” 
 D.“1”&2=“3”
解析:[解析] 本题的难点是Visual Basic字符和数值之间运算时默认的转换关系。字符和数值之间是不能直接运算的,A) “1”+2中“1”被转换成数值1,结果为3;C) “ “1”&2数值2被转换成字符“2”,结果为“ 12”,“1”+“2”和“1”&“2”是同等的,都是字符串连接。
14.循环链表的主要优点是


(分数:2.00)
 A.不再需要头指针了
 B.从表中任一结点出发都能访问到整个链表 
 C.在进行插入、删除运算时,能更好的保证链表不断开
 D.已知某个结点的位置后,能够容易的到它的直接前件
解析:[解析] 循环链表就是将单向链表中最后一个结点的指针指向头结点,使整个链表构成一个环形,这样的结构使得从表中的任一结点出发都能访问到整个链表。
15.下列程序段的执行结果为
m=1
n=1
Select Case m
Case 1
Select Case n
Case 0
Print" * * 0 * *"
Case 1
Print" * *.1. * *"
End Select
Case 2
Print"* *,2 * *,"
End Select


(分数:2.00)
 A.* * 0 * *
 B.* * 1 * * 
 C.* * 2 * *
 D.0
解析:[解析] Select Case结构的一般格式为:
Select Case expr
[Case expr1]
[clause 1]
[Case expr2]
[clause 2]
[Case else]
[clause n)
End Select
其中expr是测试表达式,如果满足expr n,就执行这条语句,然后退出,因为m=1、n=1,所以执行语句 Print " * * 1 * *"。