国家二级VB机试(选择题)模拟试卷438
选择题
1.下列叙述中正确的是(A)
A. 循环队列中的元素个数随队头指针与队尾指针的变化而动态变化
B. 循环队列中的元素个数随队头指针的变化而动态变化
C. 循环队列中的元素个数随队尾指针的变化而动态变化
D. .循环队列中的元素个数不会变化
解析:所谓循环结构就是将队列存储空间的最后一个位置绕到第一个位置上,形成逻辑上的环状空间,循环使用。在循环队列中,用队尾指针rear指向队列中的队尾元素,用队头指针front指向队头元素的前一个位置,因此,队列中的元素数等于从队头指针front指向的后一个位置与队尾指针rear指向位置之间的元素数量。
2.下面叙述中错误的是(A)
A. 由于窗体不能获得焦点,所以窗体没有键盘事件
B. 框架控件没有键盘事件
C. 标签控件没有键盘事件
D. 文本框有键盘事件,但当Enabled属性被设置为False时,其键盘事件无法被激活
解析:输入型控件具备键盘事件,框架和标签不是输入型控件,所以不具备键盘事件;文本框有键盘事件,但当Enabled属性被设置为False时,其键盘事件无法被激活;窗体也有键盘事件,KeyPreview属性用于设置是否在控件的键盘事件之前激活窗体的键盘事件。
3.在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 2 Then
Print \\(B)
A. ABCDEFGH
B. DDDDEFGH
C. ABCD
D. EFGH
解析:MouseDown是按下鼠标时触发的事件,MouseUp是松开鼠标时触发的事件。鼠标键参数中Button=2表示按下右键。单击命令按钮时,先用鼠标单击一下左键,在此过程中,鼠标会从按下转为松开。先触发MouseDown事件,因button!=2故输出DDDD,再触发MouseUp事件,输出EFGH。故本题正确答案为选项B。
4.在窗体上画一个名称为Command1的命令按钮,并编写如下程序:
Private Sub Command1_Click()
Dim a As Integer
Static b As Integer
a = 20
b = 5
Call sub1(a, b)
Print a; b
End Sub
Private Sub sub1(ByRef x1 As Integer, y1 As Integer)
x1 = x1 + 3
y1 = x1 + y1
End Sub
程序运行后,单击命令按钮,在窗体上显示的内容是(B)
A. 23 23
B. 23 28
C. 20 5
D. 20 25
解析:用Call语句调用Sub过程,如果形参前面有关键字ByRef,则该参数按地址传送,本题中形参x1前有关键字ByRef,调用时以地址方式传递实参,调用sub过程,x1=x1+3=23,改变了实参a的值,a为23。如果形参前面没有关键字ByRef或ByVal,系统默认为按地址传递参数。调用sub过程中,x1=x1+3=23;y1=23+5=28。形参y1值的变化改变了实参b的值,故b=28。本题正确答案为选项B。
5.以下合法的VB变量名是(B )
A. _a
B. yPrint
C. a-b
D. Type
解析:变量是用一个名称来表示的,给变量命名时应遵循规则:
名称只能由字母、数字和下划线组成;名称的第一个字符必须是英文字母,最后一个字符可以是类型说明符;名称的有效字符为255个;不能用VB的保留字作变量名,但变量名中可以包含保留字,如ConstA;变量名也不能是末尾带有类型说明符的保留字,如Dim!是不合法的变量名;不区分字母的大小写。
6.在窗体模块的声明部分声明变量时,不能使用的关键字是(D)
A. Dim
B. Public
C. Private
D. Static
解析:根据变量的定义位置和定义关键字的不同,变量可以分为以下3种类型: 局部(Local)变量:在过程(事件过程或通用过程)内定义的变量,其作用域为该 变量所在的过程,定义时使用Dim、Static关键字; 模块(Module)变量:模块变量包括窗体变量和标准模块变量2种。其中,窗体变 量可用于该窗体内的所有过程,其作用域为该变量所在的窗体;标准模块变量 是在标准模块中定义的变量,变量的声明和使用与窗体模块中窗体变量类似。 区别是标准模块是只含有程序代码的应用程序文件,其扩展名为.bas;全局(Public)变量:全局变量也称为全程变量,在标准模块的声明部分声明。全局 变量的作用域最大,可以在工程的每个模块、每个过程中使用。
7.耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是(B)
A. 提高耦合性降低内聚性有利于提高模块的独立性
B. 降低耦合性提高内聚性有利于提高模块的独立性
C. 耦合性是指一个模块内部各个元素间彼此结合的紧密程度
D. 内聚性是指模块间互相连接的紧密程度
解析:耦合性是反映模块间互相连接的紧密程度,内聚性是指一个模块内部各个元素间彼此接合的紧密程序。提高模块的内聚性,降低模块的耦合性是有利于模块的独立性。
8.在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:
Private Sub Command l_Click()
c=1234
c1=Trim(Str((c))
For i=1 To 4
Print__________
Next
End Sub
程序运行后,单击命令按钮,要求在窗体上显示内容: 1 12 123 1234则在横线处应填入的内容为(B )
A. Right(c1,i)
B. Left(c1,i)
C. Mid(c1,i,1)
D. Mid(c1,i,i)
解析:本题考查的考点是有关取子串函数的。在VB中有3种取子串函数:Left函数用于在字符串左端开始取n个字符;Right函数用于在字符串右端开始取n个字符(注意子串中字符的顺序与母串中相同);Mid函数可以实现在任何位置取任何长度的子串,其中长度省略的话将会一直取到串尾。本题中显示出来的结果可以看出,第一行是字符串的第一个字符,第二行是字符串的前两个字符……所以每行输出的应该是字符串的前i位。
9.以下合法的VB变量名是( )。(D)
A. _x
B. 2y
C. a#b
D. x_1_x
解析:根据Visual Basic中变量的命名规则,_x不能以一下画线开头,不合法;2y不能以数字开头,不合法;a#b中有#,不合法;D选项符合命名规则,故D选项正确。
10.语句:Print Asc(Chr$(Mid$(\\(A)
A. 65
本文档预览:3600字符,共15726字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载