首页 › 答案 › 题库 › 知到智慧树 › 未分类

智慧树知到《VB面向对象程序设计(山东联盟)》章节测试答案

智慧树知到《VB面向对象程序设计(山东联盟)》章节测试答案
第一章单元测试
1、一个应用程序()窗体。
A.只许有一个
B.应该有两个
C.可包括多个
D.可以没有
正确答案:可包括多个
2、在一个工程中可以有多个()。
A.资源文件
B.窗体文件
C.机器代码文件
D.工程文件;
正确答案:窗体文件
3、工程资源管理器窗口标题栏下的()按钮用于切换到“窗体编辑窗口”,显示和编辑正在设计的窗体。
A.“查看代码”按钮
B.“切换文件夹”按钮
C.“查看对象”按钮
D.“查看文件夹”按钮
正确答案:“查看对象”按钮
4、在一个工程中可以有多个()。
A.机器代码文件
B.标准模块文件
C.工程文件
D.资源文件 ;
正确答案:标准模块文件
5、在代码窗口中,当从对象列表框中选择了某一对象后,在()中会列出适用该对象的事件。
A.属性窗口
B.布局窗口
C.事件列表框
D.过程框;
正确答案:过程框
6、保存一个工程至少应保存两个文件,这两个文件分别是()。
A.类模块文件和工程文件
B.窗体文件和工程文件
C.窗体文件和标准模块文件
D.文本文件和工程文件
正确答案:窗体文件和工程文件
7、工程文件的扩展名是()。
A.frx
B.frm
C.bas;
D.vbp
正确答案:vbp
8、窗体文件的扩展名是()。
A.vbp
B.frm
C.vbg
D.bas
正确答案:frm
9、标准模块文件的扩展名是()。
A.frm
B.bas;
C.vbp
D.frx
正确答案:bas;
10、Visual Basi的MSDN帮助窗口最明显的特征是()。
A.具有Microsoft Office应用程序窗口风格
B.保持了浏览器的特征
C.具有Windows风格
D.与Visual Basic编辑窗口相似
正确答案:保持了浏览器的特征
11、Visual Basic窗体设计器的主要功能是()。
A.编写源程序代码
B.显示文字
C.建立用户界面
D.画图
正确答案:建立用户界面
第二章单元测试
1、设有一名称为txtName的文本框,则下列能使其具有输入焦点的语句是()。
A.Focus=True
B.txtName=SetFocus
C.txtName.SetFocus
D.txtName.SetFocus=True
正确答案:txtName.SetFocus
2、下列说法中错误的是()。
A.事件过程是指响应某个事件后执行的一段程序代码
B.一个对象可以识别一个或多个事件
C.事件是Visual Basic预置的,且能够被对象识别的动作
D.Visual Basic是采用对象驱动编程机制的语言
正确答案:Visual Basic是采用对象驱动编程机制的语言
3、在运行时,如果按Tab键跳过了一个可以获得焦点的控件(如文本框),其原因可能是()。
A.该控件的Enabled属性值为True
B.该控件的TabStop属性值为True
C.该控件的TabStop属性值为False
D.该控件的Locked属性值为True
正确答案:该控件的TabStop属性值为False
4、设窗体上有一个文本框Text1,程序代码中有以下赋值语句(假定用到的控件和变量都存在),其中错误的是()。
A.Text1.Caption = 89
B.Text1.MaxLength = 30
C.Text1.Text = 89
D.Text1.FontBold = True
正确答案:Text1.Caption = 89
5、假定Picture1和Text1分别为图片框和文本框的名称,则下列语句中错误的是()。
A.Picture1.Print 100
B.Debug.Print 100
C.Text1.Print 100
D.Print 100
正确答案:Text1.Print 100
6、在设计阶段,当双击窗体上的某个控件时,所打开的窗口是()。
A.工具箱窗口
B.工程资源管理器窗口
C.布局窗口
D.代码窗口
正确答案:代码窗口
7、一个可执行的VB应用程序至少要包括一个()。
A.辅助模块
B.类模块
C.标准模块
D.窗体模块;
正确答案:窗体模块
8、下列叙述中错误的是()。
A.事件可以由用户引发,也可以由系统引发
B.打开一个工程文件时,系统自动装入与该工程有关的窗体文件
C.保存Visual Basic程序时,应分别保存窗体文件及工程文件
D.Visual Basic应用程序只能以解释方式执行
正确答案:Visual Basic应用程序只能以解释方式执行
9、用户可通过()模拟的屏幕小图像来布置应用程序界面。
A.立即窗口
B.窗体布局窗口
C.快捷菜单
D.窗体设计器
正确答案:窗体布局窗口
10、在窗体上添加一个文本框,名称为text1,然后编写如下的load事件过程,则程序的运行结果是()。Private Sub Form()Load Text1.Text=";"; Text1.SetFocus For k=1 to 5t=t*k Next k Text1.Text=t End Sub
A.在文本框中显示1
B.在文本框中显示120
C.出错
D.文本框中仍为空
正确答案:出错
11、保存一个工程至少应保存两个文件,这两个文件分别是()。
A.窗体文件和标准模块文件
B.窗体文件和工程文件
C.文本文件和工程文件
D.类模块文件和工程文件
正确答案:窗体文件和工程文件
12、标签控件能够显示文本信息,文本内容只能用()属性来设置。
A.BorderStyle
B.Caption
C.Alignment
D.Visible ;
正确答案:Caption
13、若要求从文本框中输入密码时在文本框中只显示*号,则应当在此文本框的属性窗口设置()。
A.Password属性值为空
B.Caption属性值为*
C.Passwordchar属性值为*
D.Text属性值为*
正确答案:Passwordchar属性值为*
14、若要使用户不能修改文本框TextBox1中显示的内容,应设置()属性。
A.Locked
B.ScrollBar
C.PassWordChar
D.MultiLine
正确答案:Locked
15、能够获得一个文本框中被选取文本的内容的属性是()。
A.SelStart
B.Length
C.Seltext
D.Text ;
正确答案:Seltext
16、在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:Private Sub Command1()Click(); Move 500, 500End Sub程序运行后,单击命令按钮,产生的结果为()。
A.将命令按钮向左、上方向各移动500
B.将窗体移动到距屏幕左边界、上边界各500的位置
C.将窗体向左、上方向各移动500
D.将命令按钮移动到距窗体左边界、上边界各500的位置
正确答案:将窗体移动到距屏幕左边界、上边界各500的位置
17、在设计阶段,通过属性窗口为命令按钮的Picture属性装入一个图形,但没有显示,其原因是()。
A.没有用按钮的DisabledPicture属性装入图形
B.按钮的Enabled属性值为False
C.按钮的Style属性值为0
D.按钮的Default属性值为False
正确答案:按钮的Style属性值为0
18、对于命令按钮,下列说法中正确的是()。
A.通过Picture属性可以给命令按钮指定一个图形
B.支持DblClick事件
C.Cancel属性设置为True时,表示按Enter键与单击该命令按钮作用相同
D.Default属性设置为True时,表示按Esc键与单击该命令按钮作用相同
正确答案:通过Picture属性可以给命令按钮指定一个图形
19、以下叙述中,错误的是()。
A.可以将计时器控件的Enabled属性设置为False,使其不能自动触发Timer事件
B.当文本框失去焦点时,触发其LostFocus事件
C.如果文本框的TabStop属性值为False,则不能接收从键盘上输入的数据
D.在设计阶段不能调整通用对话框控件的大小
正确答案:如果文本框的TabStop属性值为False,则不能接收从键盘上输入的数据
20、下列叙述中不正确的是()。
A.注释语句是非执行语句,仅对程序的有关内容起注释作用
B.注释语句可以放在程序代码中的任何位置
C.向程序代码中加入注释语句的目的是提高程序的可读性
D.注释语句可以单独写在一行
正确答案:注释语句可以放在程序代码中的任何位置
第三章单元测试
1、如果要在任何新建的模块中自动插入Option Explicit语句,则应采用下列(); 操作步骤。
A.在“工具”菜单中选取“选项”命令,打开选项对话框,单击“编辑器选项卡”选中“要求变量声明”选项
B.在“编辑”菜单中执行“插入文件”命令
C.在“工程”菜单中执行“添加文件”命令
D.在“工具”菜单中执行“插入文件”命令
正确答案:在“工具”菜单中选取“选项”命令,打开选项对话框,单击“编辑器选项卡”选中“要求变量声明”选项
2、声明一个变量为局部变量应该用()。
A.Private
B.Public
C.Global
D.Static
正确答案:Private
3、以下能作为Visual Basic变量名的是()。
A.12.5
B.E-12
C.12-E
D.E1
正确答案:E1
4、数学表达式3≤x<;10在VB中的逻辑表达式为()。
A.3<;=x<;10
B.x>;=3 OR x<;10
C.3<;=x AND <;10
D.3<;=x AND x<;10
正确答案:3<;=x AND x<;10
5、下列选项中,为字符串常量的是()。
A.#6,12,2001#
B.6/12/2001
C.6,12,2001#
D."6/12/2001"
正确答案:"6/12/2001"
6、用户自定义数据类型时,其成员不能是()。
A.变长字符串
B.定长字符串和数组
C.变长字符串和货币型
D.货币型和日期型
正确答案:变长字符串
7、若要处理一个值为50000的整数,应采用哪种VB基本数据类型描述更合法?()
A.String
B.Long
C.Integer
D.Single
正确答案:Long
8、下面()是合法单精度型变量。
A.sum%
B.num!
C.mm#
D.xinte$
正确答案:num!
9、下面()是不合法的整常数
A.%100
B.100
C.&;O100
D.&;H100
正确答案:%100
10、假设变量intVar是一个整型变量,则执行赋值语句intVar=";2";+3之后,变量intVar的值是()。
A.23
B.2
C.5
D.3
正确答案:5
11、下列各声明语句中错误的是()。
A.Public Sum As Integer
B.Dim Test As String=';计算机等级考试'
C.Const Country = ';English'
D.Static v1
正确答案:Dim Test As String=';计算机等级考试'
12、设a=4,b=5,c=6,执行语句:Print a <; b And b <; c;,窗体上显示的是()。
A.False
B.0
C.出错信息
D.True
正确答案:True
13、以下说法中,正确的是()。
A.表达式Chr(Asc(';A';))=UCase(';a';)的值为False
B.表达式-10 Mod 3的值为1
C.利用关系表达式x/2=Int(x/2)不能判断变量x的值为偶数
D.表达式Int(Rnd())的值是0
正确答案:表达式Int(Rnd())的值是0
14、设有如下的记录类型:Private Type Employee; num As String; name As StringEnd Type则下列语句中正确的是()。
A.Employee.name = ';Tom'
B.Dim e As Employee=';1001'; &; ';John'
C.Dim e As Type Employee
D.Dim e As Employee
正确答案:Dim e As Employee
15、Visual Basic中,日期";1999年6月18日";的表达形式为()。
A.{6/18/1999}
B.#6/18/1999#
C.{1999/6/18}
D.1999/6/18
正确答案:#6/18/1999#
16、执行语句Print Sgn(-2^3)+Abs(Int(-12.2) Mod 100Sqr(100))的输出结果为()。
A.1
B.4
C.2
D.3
正确答案:2
17、表达式 (-1) * Sgn(-100 + Int(Rnd * 100)) 的值是()。
A.0
B.1
C.-1
D.随机数
正确答案:1
18、下列逻辑表达式中,能正确表示条件";x和y都是奇数";的是()。
A.x Mod 2 =0 And y Mod 2 = 0
B.x Mod 2 = 1 Or y Mod 2 = 0
C.x Mod 2 = 0 Or y Mod 2 = 0
D.x Mod 2 = 1 And y Mod 2 = 1
正确答案:x Mod 2 = 1 And y Mod 2 = 1
19、表达式Int(Rnd()*11)+10的值的范围是()。
A.整数10~20(不含10和20)
B.整数0~11(含0和11)
C.整数0~20(含0和20)
D.整数10~20(含10和20)
正确答案:整数10~20(含10和20)
20、若变量P的值为 -3,则 -P^2的值是()。
A.9
B.-6
C.6
D.-9
正确答案:-9
21、Visual Basic数据类型中,占用内存最小的是()。
A.Single
B.Boolean
C.Byte
D.Integer
正确答案:Byte
22、下面是Visual Basic合法变量名的是()。
A.Debug
B.10B
C.PrintA
D.B#C
正确答案:PrintA
23、以下不是Visual Basic合法常量的是()。
A.#1/20/2014#
B.&;O12
C.&;H12&
D.';a'
正确答案:';a'
第四章单元测试
1、在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:Private Sub;Command1()Click(); Dim i As;Integer; Dim num As;Integer;Dim n As;Integer; n = 0; Randomize; For i = 1 To 10; num = Int(Rnd;* 10) + 1; Select Case;num;Mod 2; Case 1; Exit For; Case 0; Print num; n = n + 1; End Select; Next i; Print ";n="; nEnd Sub下面有关描述中正确的是()。
A.num的值是1~11之间的整数
B.当num的值为偶数时,则For循环将被终止
C.变量n的作用是累计自过程运行开始到结束所产生的偶数个数
D.程序运行过程中,变量num共被赋值10次
正确答案:变量n的作用是累计自过程运行开始到结束所产生的偶数个数
2、在窗体上画一个名称为Command1的命令按钮,并编写如下程序代码:Private Const NUM As Integer = 10Private Sub Command1()Click(); Dim a As Integer, b As Integer; a = 1; b = NUM; Do Until b >; NUM; a = a * NUM; b = b + 1; Loop; Print aEnd Sub则当程序运行时,单击Command1后,在窗体上的输出结果是()。
A.21
B.10
C.100
D.1
正确答案:10
3、已知文本框Text1中输入了一篇英文短文,并编写了如下程序段:Str()x = Text1.Text; n = Len(Str()x); m = 0; t = 0; For i = 1;To;n; w = UCase(Mid(Str()x, i, 1)); If w >;= ";A"; And w <;= ";Z"; Then; If t = 0 Then m = m + 1; t = t + 1; Else; t = 0; End If; Next; Print m该程序段的功能为统计并输出英文短文中()。
A.大写字母的个数
B.字母的个数
C.首字母大写的单词的个数
D.单词的个数
正确答案:单词的个数
4、设窗体上有文本框Text1和命令按钮Command1,并编写了下面的过程:Private Sub;Command1()Click(); ch$ = ";";; x% =;Val(Text1.Text); k = 2; For k = 2;To;x / 2; If x Mod k = 0 Then; ch = ch &; "; "; &; k; End If; Next k; Print chEnd Sub程序运行后,在文本框中输入28,单击命令按钮,则输出是()。
A.1 ;3 ;5 ;7 ;9 ;11 ;13
B.14 ;7 ;4 ;2
C.2 ;4 ;6 ;8 ;10 ;12 ;14
D.2 ;4 ;7 ;14
正确答案:2 ;4 ;7 ;14
5、设有如下程序段:Dim x As Integerx = Val(InputBox(";输入变量x的值";))Select Case x; Case(); Print ";*";; Case Else; Print ";#";End Select以上程序段的功能是,当变量x的值在5到10之间,或者大于20时,输出";*";,其它情况输出";#";,则程序中横线处应填入的内容是()。
A.5 To 10:x>;20
B.x>;= 5 And x <;= 10=";"; or=";"; x=";";>; 20
C.5 To 10, Is>;20
D.5-10 Or x>;20
正确答案:5 To 10, Is>;20
6、设a、b、c为整型变量,其值分别为4、5、6。以下程序段的输出结果是()。a = b:b = c:c = aPrint a; b; c
A.4 ;5 ;6
B.5 ;6 ;4
C.6 ;5 ;4
D.5 ;6 ;5
正确答案:5 ;6 ;5
7、以下Case子句中错误的是()。
A.Case Is >; 10
B.Case 3, 5, Is >; 10
C.Case Is >; 10 And Is <; 50
D.Case 0 To 10
正确答案:Case Is >; 10 And Is <; 50
8、有如下程序代码:Private Sub Form()Click(); X = 8; If X >; 8 Then; Print ";X >; 8";; ElseIf X <;10;Then; Print ";X <; 10";; ElseIf X = 8;Then;Print ";X = 8";; End IfEnd Sub运行程序,单击窗体,输出结果是()。
A.X = 8
B.X <; 10
C.X <; 10; X = 8
D.不确定
正确答案:X <; 10
9、在窗体上画一个名称为Label1的标签,然后编写如下事件过程:Private Sub Form()Click(); Dim S As Integer; S = 0; For i = 1 To 15; x = 2 * i - 1;If x Mod 3 = 0;Then; S = S + 1; End If; Next i; Label1.Caption = SEnd Sub运行程序,单击窗体,标签中显示的是()。
A.45
B.27
C.5
D.1
正确答案:5
10、执行下面的程序段后,x的值为()。x=5For i=1 to 20 Step 2x=x+i5Next i。
A.24
B.22
C.21
D.23
正确答案:21
11、在窗体中画一个命令按扭,然后编写以下事件过程:Private Sub Command1()Click()For i=1 to 4x=4For j=1 to 3x=3For k=1 to 2k=k+6Next kNext jNext iPrint xEnd Sub程序执行结果为()。
A.3
B.157
C.15
D.158
正确答案:3
12、对语句;If x=1 Then y=1 ,下列说法正确()。
A.x=1 是赋值语句, y=1 是关系表达式
B.x=1 是关系表达式, y=1 是赋值语句
C.x=1 和 y=1 均为关系表达式
D.x=1 和 y=1 均为赋值语句
正确答案:x=1 是关系表达式, y=1 是赋值语句
13、设有如下程序:Private Sub Command1()Click ()Dim sum As Double ,x As Doublesum=0For i=1 To 5x=n/in=n+1sum =sum +xNextEnd Sub该程序通过For;循环计算一个表达式的值,这个表达式是()。
A.1+1/2 +2/3+3/4+4/5
B.1+1/2 +1/3+1/4+1/5
C.1/2 +2/3+3/4+4/5
D.1+1/2 +2/3+3/4
正确答案:1/2 +2/3+3/4+4/5
14、在窗体上画一个名称为Command1的命令按扭和两个名称分别为Text1、Text2的文本框,然后编写如下事件过程:Private Sub Command1()Click()n %= Text1.TextSelect Case nCase 1 to 20x=10Case 2,4,6x=20Case Is<;10x=30Case 10x=40End SelectText2.Text=xEnd Sub程序运行后,如果在文本框Text1中输入10,然后单击命令按扭,则在Text2中显示的内容是()。
A.20
B.10
C.40
D.30
正确答案:10
15、以下叙述中,错误的是()。
A.可以用MsgBox函数输出一条信息
B.MsgBox函数的返回值为一整数
C.InputBox函数的返回值类型由用户在输入对话框中输入数据的类型决定
D.有语句:x = InputBox(";输入:";, ";输入整数";),则该语句打开的对话框的标题是";输入整数"
正确答案:InputBox函数的返回值类型由用户在输入对话框中输入数据的类型决定
16、在Do While...Loop循环结构中Loop语句的作用是()。
A.退出循环,返回到程序开始处
B.转移到Do While语句行,开始下一次判断和循环
C.该语句在Do While...Loop循环结构中不起任何作用
D.终止循环,将控制转移到本循环结构Loop后面的第一条语句继续执行
正确答案:转移到Do While语句行,开始下一次判断和循环
17、设 a=6,则执行x= IIf (a<;6 ,-1 ,0 ) 后,x的值是()。
A.0
B.5
C.6
D.-1
正确答案:0
第五章单元测试
1、在窗体模块的通用声明段中声明变量时,不能使用()关键字。
A.Private
B.Public
C.Static
D.Dim
正确答案:Static
2、使用ReDim Preserve可以改变数组()。
A.改变维数和所有维的大小
B.最后一维的大小
C.所有维的大小
D.第一维的大小
正确答案:最后一维的大小
3、下列关于ReDim的说法中错误的是()。
A.ReDim语句可以改变数组类型。
B.可以用ReDim语句直接定义数组。
C.ReDim语句只能改变元素的个数,但不能改变数组的维数。
D.在一个程序中,可以多次用Redim 语句定义同一个数组。
正确答案:ReDim语句可以改变数组类型。
4、以Dim x(6,2 To 5)来声明一个二维数组,错误的选项是()。
A.LBound(x,1)的返回值是0
B.UBound(x,1)的返回值是6
C.LBound(x,2)的返回值是1
D.UBound(x,2)的返回值是5
正确答案:LBound(x,2)的返回值是1
5、下面的数组声明语句中正确的是()。
A.Dim A(3;4) As Integer
B.Dim a[3;4] As Integer
C.Dim A[3,4] As Integer
D.Dim A(3,4) As Integer
正确答案:Dim A(3,4) As Integer
6、语句Dim abc(-2 To 4,0 To 4,5)As Long定义的三维数组,其数组元素有()。
A.96个
B.210个
C.112个
D.140个
正确答案:210个
7、下面的数组声明语句中正确的是()。
A.Dim gg[1 To 5,1 To 5] As String
B.Dim gg[1:5,1:5] As String
C.Dim gg(1 To 5) As String
D.Dim gg[1,5] As String
正确答案:Dim gg(1 To 5) As String
8、用Dim b(-2 To 4) As String; 语句所定义的数组元素个数是()个。
A.4
B.2
C.6
D.7
正确答案:7
9、定义10个单精度实型一维数组正确的语句是()。
A.Option Base 1:Dim a(9)
B.Dim #(9)
C.Dim a(9) As Single
D.Dim a(10) As Integer
正确答案:Dim a(9) As Single
10、以下属于Visual Basic合法的数组元素是()。
A.v[8]
B.x8
C.x[8]
D.s(0)
正确答案:s(0)
11、在窗体上画一个名称为Command1的命令按钮,然后编写如下程序代码:Option Base 1Dim arr() As IntegerPrivate Sub Command1()Click(); Dim i As Integer, j As Integer; Dim s As Integer; ReDim arr(4, 2); s = 0; For i = 1 To 3; For j = 1 To 2; arr(i, j) = i + j; Next j; Next i; ReDim Preserve arr(4, 4); For j = 3 To 4; arr(3, j) = j + 10; Next j; For i = 1 To 4; s = s + arr(i, i); Next i; Print sEnd Sub程序运行过程中,当单击Command1时,输出结果为()。
A.0
B.18
C.程序出错
D.19
正确答案:19
12、运行如下程序; Private Sub Command1()Click(); Dim a(5, 5) As Integer; For i = 1 To 5; For j = 1 To 4; a(i, j) = i * 2 + j; If a(i, j) / 7 = a(i, j) ;7 Then; n = n + 1; End If; Next j; Next; Print n; End Sub则n的值是()。
A.4
B.3
C.5
D.2
正确答案:3
13、若在窗体上画了一个名称为List1的列表框,并编写了如下事件过程:Private Sub Form()Load (); List1.AddItem ";数学";; List1.AddItem ";物理";; List1.AddItem ";化学";; List1.AddItem ";外语";; List1.AddItem ";语文";End SubPrivate Sub Form()Click(); List1.RemoveItem 1; List1.RemoveItem 2End; Sub运行程序后,单击窗体,则列表框中显示的项目是()
A.物理外语语文
B.数学化学语文
C.数学外语语文
D.化学外语语文
正确答案:数学化学语文
14、设窗体上有一个列表框控件List1,含有若干列表项。以下能表示当前被选中的列表项内容的是()。
A.List1.List
B.List1.ListIndex
C.List1.Index
D.List1.Text
正确答案:List1.Text
15、假定列表框List1中没有被选中的项目,则执行List1.RemoveItem List1.ListIndex 语句的结果是()。
A.删除最后加入列表中的一项
B.出错
C.删除最后一项
D.删除第一项
正确答案:出错
16、设组合框 Combo1 中有5 个项目,则以下能删除最后一项的语句是()。
A.Combo1.RemoveItem Combo1.ListCount
B.Combo1.RemoveItem Combo1.ListCount+1
C.Combo1.RemoveItem 4
D.Combo1.RemoveItem 5
正确答案:Combo1.RemoveItem 4
17、设在程序开始处有语句:Option Base 0,则下面定义的数组中正好有12个元素的是()。
A.Dim s%(3 , 4 )
B.Dim a%(12 )
C.Dim a%(-6 To 6 )
D.Dim s%(3 , 2 )
正确答案:Dim s%(3 , 2 )
18、在窗体上画一个名称为List1的列表框和一个名称为Text1的文本框,然后编写如下两个事件过程:Private Sub Form()Load(); List1.AddItem ";100";; List1.AddItem ";200";; List1.AddItem ";300";; List1.AddItem ";400";; Text1.Text = ";";End SubPrivate Sub List1()DblClick(); a = List1.Text; Print a + Text1.TextEnd Sub程序运行后,在文本框中输入";500";,然后双击列表框中的";400";,则输出结果为()。
A.400500
B.0
C.500400
D.900
正确答案:400500
19、设窗体上有一个名称为Option1的单选按钮数组(其下标从0开始),共有4个单选按钮,并有下面事件过程:Private Sub Option1()Click(Index As Integer); n = Index; If Index <; 3 Then n = n + 1; Print Option1(n).CaptionEnd Sub程序运行时,单击其中一个单选按钮,则在窗体上显示的是()。
A.被选中单选按钮的上一个按钮的标题,但如果选中的是最前面的一个,则显示最后面按钮的标题
B.被选中的单选按钮的标题
C.被选中单选按钮的下一个按钮的标题,但如果选中的是最后一个,则显示该单选按钮的标题
D.被选中单选按钮的下一个按钮的标题,但如果选中的是最后一个,则显示最前面一个单选按钮的标题
正确答案:被选中单选按钮的下一个按钮的标题,但如果选中的是最后一个,则显示该单选按钮的标题
20、在窗体上画一个名称为Command1的命令按钮和一个名称为Label1的标签,然后编写如下程序代码:Option Base 0Private Sub Command1()Click(); Dim a(5) As Integer, n As Integer; For i = 0 To 5; a(i) = i; n = n + a(i); Next i; Label1 = nEnd Sub运行程序,单击命令按钮,在标签中显示的内容是()。
A.10
B.15
C.5
D.20
正确答案:15
21、在窗体上画一个名称为Command1的命令按钮,然后编写如下程序代码:Option Base 1Private Sub Command1()Click(); Dim a(5) As String; Dim i As Integer; Dim b As Variant; For i = LBound(a) To UBound(a); a(i) = Chr(Asc(";a";) + (26 - i)); Next i; For Each b In a; Print b;; NextEnd Sub程序运行时,单击Command1,则输出结果是()。
A.12345
B.zyxwv
C.出错
D.abcde
正确答案:zyxwv
22、在窗体上画一个列表框List1、一个组合框Combo1和一个文本框Text1,编写如下程序代码:Private Sub Form()Load(); List1.AddItem ";111";; List1.AddItem ";222";; List1.AddItem ";333";;Combo1.AddItem ";444";; Combo1.AddItem ";555";; Combo1.AddItem ";666";; Text1.Text = ";";End Sub程序运行后,如果单击窗体,要求在文本框中显示";222555";,以下能实现该操作的事件过程是()。
A.Private Sub Form()Click() ; Text1.Text = List1.ListIndex(1) + Combo1.ListIndex(1) End Sub
B.Private Sub Form()Click() ; Combo1.ListIndex = 2 ; List1.ListIndex = 2 ; Text1.Text = List1.Text + Combo1.Text End Sub
C.Private Sub Form()Click() ; Combo1.ListIndex = 1 ; List1.ListIndex = 1 ; Text1.Text = List1.Text + Combo1.Text End Sub
D.Private Sub Form()Click() ; Text1.Text = List1.ListIndex(2) + Combo1.ListIndex(2) End Sub
正确答案:Private Sub Form()Click() ; Combo1.ListIndex = 1 ; List1.ListIndex = 1 ; Text1.Text = List1.Text + Combo1.Text End Sub
23、组合框兼有两种控件的特性,这两种控件是()。
A.列表框和文本框
B.标签和列表框
C.标签和文本框
D.复选框和单选按钮
正确答案:列表框和文本框
24、下列说法中正确的是()。
A.当按下键盘上任意键时都会触发KeyPress事件
B.用Erase语句可以清除静态数组中各元素的值,但不释放其所占的内存空间
C.语句Dim x[1 To 5] As Double能够定义一个一维数组x
D.用Array函数可以对任何数组初始化
正确答案:用Erase语句可以清除静态数组中各元素的值,但不释放其所占的内存空间
25、列表框控件List1中已有若干个列表项,以下能表示被选中列表项内容的表达式是()。
A.List1.ListIndex
B.List1 (List1.ListIndex)
C.List1.List(ListIndex)
D.List1.List(List1.ListIndex)
正确答案:List1.List(List1.ListIndex)
第六章单元测试
1、定义过程的格式中,Static关键字的作用是指定过程中的局部变量在内存中的存储方式。若使用了Static关键字,则()。
A.在本过程中使用到的,在其他过程中定义的变量也为Static型
B.每次调用此过程时,该过程中的局部变量的值保持在上一次调用后的值
C.定义了该过程中定义的局部变量为“自动”变量
D.每次调用此过程,该过程中的局部变量都会被重新初始化
正确答案:每次调用此过程时,该过程中的局部变量的值保持在上一次调用后的值
2、在过程中定义的变量,若希望在离开该过程后,还能保存过程中局部变量的值,则应使用()关键字在过程中定义局部变量。
A.Public
B.Static
C.Dim
D.Private
正确答案:Static
3、根据变量的作用域,可以将变量分为3类,分别为()。
A.局部变量、标准变量和全局变量
B.局部变量、模块变量和窗体变量
C.局部变量、模块变量和标准变量
D.局部变量、模块变量和全局变量
正确答案:局部变量、模块变量和全局变量
4、下列关于过程叙述不正确的是()。
A.过程的传址调用是将实参在内存的地址传递给形参
B.无论过程传值调用还是过程传址调用,参数传递都是双向的
C.过程的传值调用参数是单向传递的,过程的传址调用参数是双向传递的
D.过程的传值调用是将实参的具体值传递给形参
正确答案:无论过程传值调用还是过程传址调用,参数传递都是双向的
5、要想从子过程调用后返回两个结果,下面子过程语句说明合法的是()。
A.Sub f1(n%,ByVal m%)
B.Sub f1(n%,m%)
C.Sub f2(ByVal n%,ByVal m%)
D.Sub f1(ByVal n%,m%)
正确答案:Sub f1(n%,m%)
6、下列定义为abc的过程定义语句中正确的是()。
A.Dim Sub abc(x,y)
B.Public abc(x,y)
C.Private Sub abc(x,y) As Integer
D.Sub abc(x,y)
正确答案:Sub abc(x,y)
7、有如下函数过程:Function gys(ByVal X As Integer, ByVal Y As Integer) As Integer; Do While Y <;>; 0 reminder = X Mod Y X = Y Y = reminder Loop gys = XEnd Function 以下调用函数的事件过程,该程序的运行结果是()。 Private Sub Command7()Click() Dim a As Integer Dim b As Integer a = 100b = 25 X = gys(a, b) Print X End Sub
A.50
B.100
C.0
D.25
正确答案:25
8、已知过程定义的首行为Sub sum(a As Integer, b As Integer),则下面过程调用语句中正确的是()。
A.sum(x , y)
B.sum x; y
C.sum x, y
D.Call sum(x ; y)
正确答案:sum x, y
9、设有如下程序代码:Dim a%Public b%, c%Private Sub Form()Click(); Dim b%; Print a; b; cEnd SubPrivate Sub Form()Load(); Dim a%; a = 5; b = 8; c = 10End Sub运行程序时单击窗体,则在窗体上显示的是()。
A.0; 8; 10
B.5; 8; 10
C.0 ;0 ;10
D.5; 0 ;10
正确答案:0 ;0 ;10
10、设有以下程序片段:Public x%Private y$Private Sub Command1()Click(); Dim a; ……End Sub;Private Sub Command2()Click(); Static b; ……End Sub在Command1()Click过程中无法访问的变量是()。
A.y
B.a
C.x
D.b
正确答案:b
11、编写如下程序代码:Private Sub Command1()Click(); Const n = 5; Dim arrx(n) As Integer; For i = 1 To 5; arrx(i) = i * i; Next i; Call swap(arrx(), n); For i = 1 To n; Print arrx(i);; NextEnd Sub;Public Sub swap(a() As Integer, k As Integer); For i = 1 To k / 2; t = a(i); a(i) = a(k - i + 1); a(k - i + 1) = t; NextEnd Sub程序运行后,单击命令按钮Command1,输出结果为()。
A.1 ; 4 ; 9 ; 4 ; 1
B.4 ; 1 ; 9 ; 25 ; 16
C.1 ; 4 ; 9 ; 16 ; 25
D.25 ; 16 ; 9 ; 4 ; 1
正确答案:25 ; 16 ; 9 ; 4 ; 1
12、如果在过程A中用语句:Call proc(a, b) 调用下面的过程Private Sub proc(b As Integer, ByVal a As Integer); a = a + 1; b = b * 2End Sub则调用结束后的结果是()。
A.过程A中变量b的值变为原有值的2倍,a的值等于原有值加1
B.过程A中变量b的值变为原有值的2倍
C.过程A中变量a的值变为原有值的2倍
D.过程A中变量a的值变为原有值的2倍,b的值等于原有值加1
正确答案:过程A中变量a的值变为原有值的2倍
13、在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,然后编写以下程序代码:Private Sub sub1(ByRef d(), ByRef m1 As Integer); Dim i As Integer; m1 = d(LBound(d)); For i = LBound(d) + 1 To UBound(d); If m1 <; d(i) Then m1 = d(i); Next iEnd SubPrivate Sub Command1()Click(); Dim n1 As Integer; n1=-1; Dim data(); data = Array(10, 20, -20, 50, 15, -5); Call sub1(data(), n1); Text1.Text = n1End Sub程序运行过程中,当单击命令按钮Command1时,则在文本框Text1中显示的结果为()。
A.0
B.50
C.-5
D.-1
正确答案:50
14、有以下程序代码:Private Sub Command1()Click (); Print fun(10), fun(5)End SubPrivate Function fun(n As Integer) As Integer; Static t; For k = 1 To n; t = t + k; Next k; fun = tEnd Function执行Command1()Click过程产生的输出是()。
A.15 ;70
B.55 ;70
C.55 ;15
D.15 ;55
正确答案:55 ;70
15、以下叙述中错误的是()。
A.打开一个工程文件时,系统自动装入与该工程有关的窗体文件
B.保存程序时,应分别保存窗体文件和工程文件
C.一个工程中可以包含一个或多个窗体,但不能包含其他模块
D.标准模块文件的扩展名是 .bas ,工程文件的扩展名是 .vbp
正确答案:一个工程中可以包含一个或多个窗体,但不能包含其他模块
16、以下叙述中错误的是()。
A.一个Sub过程内不能嵌套定义另一个Sub过程
B.Visual Basic应用程序只能以解释方式执行
C.一个Visual Basic应用程序可以包含一个或多个工程
D.MsgBox函数的返回值与在对话框中所单击的按钮有关,为一整数
正确答案:Visual Basic应用程序只能以解释方式执行
17、要求函数的功能是:从参数str字符串中删除所有参数ch所指定的字符,返回实际删除字符的个数,删除后的字符串仍在str中,为此某人编写了函数DelChar如下:Function DelChar(str As String, ch As String) As Integer; Dim n%, st$, c$; st = ";";; n = 0; For k = 1 To Len(str); c = Mid(str, k, 1) ; If c = ch Then; st = st &; c; Else; n = n + 1; End If; Next kstr = st ; DelChar = n End Function并用下面的Command1()Click()过程观察函数调用结果Private Sub Command1()Click(); ch$ = Text1.Text; Print DelChar(ch, ";x";), chEnd Sub发现结果有错误,程序代码需要修改,以下正确的修改方案是()。
A.把语句DelChar = n 改为 DelChar = st
B.把语句Print DelChar(ch, ';x';), ch改为Print DelChar(ch, ';x';) :Print ch
C.删掉语句str = st
D.把语句If ;c = ch ;Then 改为If ;c <;>; ch ;Then
正确答案:把语句If ;c = ch ;Then 改为If ;c <;>; ch ;Then
18、如果窗体模块A中有一个过程:Private Sub Proc(); ……End Sub则下面叙述中错误的是()。
A.窗体模块A中任何其他过程都可以调用此过程
B.在标准模块中不能调用此过程
C.在窗体模块B中可以调用此过程
D.在窗体模块B中可以有与此相同名称的过程
正确答案:在窗体模块B中可以调用此过程
19、以下关于VB文件的叙述中,正确的是()。
A.类模块文件的扩展名为.bas
B.一个.vbg文件中可以包括多个.vbp文件
C.标准模块文件的扩展名是.frm
D.一个.vbp文件只能含有一个标准模块文件
正确答案:一个.vbg文件中可以包括多个.vbp文件
20、下面叙述中正确的是()。
A.窗体模块中包含本窗体的所有事件过程,标准模块中包含本标准模块的所有事件过程
B.一个工程中只能有一个标准模块
C.一个窗体是一个窗体模块
D.一个工程由一个窗体模块和一个标准模块组成
正确答案:一个窗体是一个窗体模块
21、以下叙述中错误的是()。
A.保存程序时,应分别保存窗体文件和工程文件
B.打开一个工程文件时,系统自动装入与该工程有关的窗体文件
C.一个工程中可以包含一个或多个窗体,但不能包含其他模块
D.标准模块文件的扩展名是 .bas ,工程文件的扩展名是 .vbp
正确答案:一个工程中可以包含一个或多个窗体,但不能包含其他模块
22、以下叙述中错误的是()。
A.在标准模块中不能定义过程
B.标准模块文件的扩展名是.bas
C.标准模块文件是纯代码文件
D.在标准模块中声明的全局变量可以在整个工程中使用
正确答案:在标准模块中不能定义过程
23、下面有关标准模块的叙述中,错误的是()。
A.标准模块的文件扩展名为.bas
B.标准模块中的全局变量可以被工程中的任何模块引用
C.标准模块中的Private过程不能被工程中的其他模块调用
D.标准模块不完全由代码组成,还可以有窗体
正确答案:标准模块不完全由代码组成,还可以有窗体
24、下面关于标准模块的叙述中错误的是()。
A.标准模块中可以声明全局变量
B.一个工程中可以含有多个标准模块
C.标准模块中可以包含一个Sub Main过程,但此过程不能被设置为启动过程
D.标准模块中可以包含一些Public过程
正确答案:标准模块中可以包含一个Sub Main过程,但此过程不能被设置为启动过程
25、在标准模块中用Public关键字定义的变量,其作用域为()。
A.所有窗体
B.本模块所有过程
C.整个工程
D.所有标准模块
正确答案:整个工程
26、以下叙述中错误的是()。
A.全局变量可以在标准模块中定义
B.在一个窗体文件中用Private定义的通用过程可以被其他窗体调用
C.一个工程中可以包含多个窗体文件
D.窗体和标准模块需要分别保存为不同类型的磁盘文件
正确答案:在一个窗体文件中用Private定义的通用过程可以被其他窗体调用
27、下列关于标准模块的叙述中,错误的是()。
A.标准模块中的Public过程可以被不同窗体的程序调用
B.标准模块是一个纯代码文件
C.标准模块可以在某个窗体中建立
D.标准模块文件的扩展名为.bac
正确答案:标准模块文件的扩展名为.bac
28、以下关于VB文件的叙述中,错误的是()。
A.一个工程可以有多个窗体文件
B.标准模块文件不属于任何一个窗体
C.工程文件的扩展名为.frm
D.一个工程只有一个工程文件
正确答案:工程文件的扩展名为.frm
29、以下关于VB文件的叙述中,正确的是()。
A.VB应用程序可以被编译为.exe文件
B.标准模块文件的扩展名是.frm
C.一个工程文件只能含有一个标准模块文件
D.类模块文件的扩展名为.bas
正确答案:VB应用程序可以被编译为.exe文件
30、如果在窗体模块中所有程序代码的前面有语句:Dim x; ,则x是()。
A.静态变量
B.窗体级变量
C.全局变量
D.局部变量
正确答案:窗体级变量
31、如果将数组名作为函数调用的实参,则传递给形参的是()。
A.数组最后一个元素的值
B.数组全部元素的值
C.数组第一个元素的地址
D.数组第一个元素的值
正确答案:数组第一个元素的地址
第七章单元测试
1、下列不能作为“容器”(即可以在其中放置其他控件)的是()。
A.窗体
B.组合框
C.图片框
D.框架
正确答案:组合框
2、下列叙述中错误的是()。
A.文本框控件支持Change事件
B.可以使用Print方法在图片框上输出文字
C.由于直线控件没有Move方法,所以直线控件在运行阶段不能移动
D.图片框可以作为控件的容器
正确答案:由于直线控件没有Move方法,所以直线控件在运行阶段不能移动
3、用于设置计时器事件产生间隔的属性是()。
A.Tag
B.Index
C.Value
D.Interval
正确答案:Interval
4、设形状控件的Width与Height属性的值相等。下面叙述中正确的是()。
A.呈现的图形一定不是矩形
B.呈现的图形一定是圆
C.呈现的图形一定是正方形
D.呈现的图形一定是矩形
正确答案:呈现的图形一定不是矩形
5、设窗体上有2个框架,每个框架中有若干个单选按钮,下面叙述中正确的是()。
A.每个框架中都有一个单选按钮可以被选中
B.如果某个框架的Enabled属性为False,则里面的单选按钮一定都是未选中状态
C.如果某个框架的Enabled属性为True,则里面单选按钮的Enabled属性也都为True
D.窗体上所有单选按钮中只有1个可以被选中
正确答案:每个框架中都有一个单选按钮可以被选中
6、在计时器控件中,Interval属性的作用是()。
A.决定是否响应用户的操作
B.设置产生计时器事件的间隔
C.决定计时器事件产生的次数
D.设置计时器与窗体上边界之间的距离
正确答案:设置产生计时器事件的间隔
7、决定对象拖放模式的属性是()。
A.DragMode
B.DragOver
C.DragDrop
D.DragIcon
正确答案:DragMode
8、下列关于键盘事件的说法中,正确的是()。
A.大键盘上的";1"; 键和数字键盘上的";1";键的KeyCode码相同
B.KeyDown和KeyUp的事件过程中有KeyAscii参数
C.大键盘上";4";键的上档字符是";$";,当同时按下Shift和大键盘上的";4"; 键时,KeyPress事件过程的
D.按下键盘上的任意一个键,都会引发KeyPress事件
正确答案:大键盘上";4";键的上档字符是";$";,当同时按下Shift和大键盘上的";4"; 键时,KeyPress事件过程的
9、在刚建立的EXE工程中,工具箱窗口中没有的控件是()。
A.通用对话框
B.驱动器列表框
C.形状
D.图像框
正确答案:通用对话框
10、下面说法中错误的是()。
A.为使名称为Timer1的计时器控件能每隔2秒触发一次Timer事件,则在程序代码中应写的语句是Timer1.Interval = 2000
B.在设计阶段,把已复制到剪贴板上的图像粘贴到图片框或图像框中,可以将该图片装入图片框或图像框
C.为使显示到图像框中的图像能根据图像框的大小自动缩放,则应将图像框的Stretch属性值设置为True
D.可以将计时器控件的Enabled属性设置为False,使其不能触发Timer事件
正确答案:在设计阶段,把已复制到剪贴板上的图像粘贴到图片框或图像框中,可以将该图片装入图片框或图像框
11、要使图片框P1中显示当前路径下的图片文件img1.jpg,则应使用的语句是()。
A.P1.Picture=LoadPicture(";img1.jpg";)
B.P1.Picture=";img1.jpg"
C.P1.Image=";img1.jpg"
D.LoadPicture(";img1.jpg";)
正确答案:P1.Picture=LoadPicture(";img1.jpg";)
12、窗体上有1个名称为List1、含有3个项目的列表框,1个名称为Text1的文本框,以及1个Interval属性值为1000的计时器控件Timer1。某人编制了以下程序,希望程序运行时,每隔1秒, List1中的3个项目能够依次在Text1中循环显示。; Private Sub Timer1()Timer(); Dim i As Integer; Text1.Text = List1.List(i); i = i + 1; If i = List1.ListCount Then; i = 0; End IfEnd Sub运行程序,发现有错误。以下正确的修改是()。
A.将语句Dim i As Integer修改为Static i As Integer
B.将If语句的条件修改为 i <;= List1.ListCount
C.将语句Text1.Text = List1.List(i)与i = i + 1交换位置
D.将Interval属性值改为100
正确答案:将语句Dim i As Integer修改为Static i As Integer
13、在窗体上有一个Picture1图片框,没有加载图片,在当前文件夹下有一个位图文件pic02.bmp,并有下面的程序代码:Dim HasPic As BooleanPrivate Sub Picture1()Click(); If HasPic Then; Picture1.Picture = LoadPicture(";";); Else; Picture1.Picture = LoadPicture(";pic02.bmp";); End If; HasPic = Not HasPicEnd Sub关于这个程序运行时,下面叙述中正确的是()。
A.第一次单击图片框,会清空图片框,再单击图片框,则在其中显示一个图片
B.第一次单击图片框,会在其中显示一个图片,再单击图片框,则删除图片
C.第一次单击窗体,会清空图片框,再单击窗体,则在图片框中显示一个图片
D.第一次单击窗体,会在图片框中显示一个图片,再单击窗体,则删除图片
正确答案:第一次单击图片框,会在其中显示一个图片,再单击图片框,则删除图片
14、以下叙述中错误的是()。
A.下拉式菜单和弹出式菜单都用菜单编辑器建立
B.如果要在菜单中添加一条分隔线,则应将该菜单项的Caption属性设置为";-"
C.在菜单标题中,由";&;";所引导的字母指明了该菜单项的访问键
D.如果把一个菜单项的Enabled属性设置为False,则该菜单项不可见
正确答案:如果把一个菜单项的Enabled属性设置为False,则该菜单项不可见
15、窗体上有Text1、Text2两个文本框,并有以下过程:Private Sub Text1()KeyDown(KeyCode As Integer, Shift As Integer); Dim ch As String; ch = LCase(Chr(KeyCode)); Text2.Text = Chr(Asc(ch) + 2)End Sub程序运行时,在Text1中输入了字母";D";,则Text2中显示的是()。
A.D
B.F
C.d
D.f
正确答案:f
16、设窗体上有一个标签Label1,并编写了下面的过程Private Sub Form()MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single); If Button = 1 Then; Label1 = ";X="; &; X &; "; Y="; &; Y; End IfEnd Sub程序运行后的效果是()。
A.当按下鼠标左键并移动鼠标时,鼠标的位置坐标会同步显示在标签中
B.当移动鼠标时,鼠标的位置坐标会同步显示在标签中
C.当按下鼠标左键时,鼠标的位置坐标会同步显示在标签中
D.当按下鼠标右键并移动鼠标时,鼠标的位置坐标会同步显示在标签中
正确答案:当按下鼠标左键并移动鼠标时,鼠标的位置坐标会同步显示在标签中
17、程序运行时,当用鼠标点击滚动条两端的箭头按钮时,不会产生的结果是()。
A.激活Change事件
B.滚动框移动
C.改变Value属性的值
D.激活Scroll事件
正确答案:激活Scroll事件
18、当复选框的Value属性值为1时,表示()。
A.该复选框不可用
B.选中该复选框
C.没有选中该复选框
D.该复选框不可见
正确答案:选中该复选框
19、以下关于图片框控件的说法中,正确的是()。
A.可以通过调用图片框的Print方法在图片框中输出文本
B.为使图像能自动适应图片框的大小,应将图片框的Stretch属性设置为False
C.清空图片框控件中图形的方法之一是将其Picture属性的值设置为Null
D.用cls方法可以清除图片框中装入的图片
正确答案:可以通过调用图片框的Print方法在图片框中输出文本
20、当复选框控件被选中(即复选框控件内显示";√";标记)时,其Value属性的值为()。
A.True
B.False
C.1
D.0
正确答案:1
21、设有一名称为mnuBold的下拉菜单项,程序运行时,希望达到如下效果:当第一次单击该菜单项时,其标题左侧显示";√";,当第二次单击该菜单项时,其标题左侧的";√";消失,依此交替进行,......。则应在mnuBold()Click事件过程中书写的语句是()。
A.mnuBold.Checked = True
B.mnuBold.Checked = False
C.mnuBold.Checked = Not mnuBold.Checked
D.mnuBold.Checked = IIf(mnuBold.Checked, True, False)
正确答案:mnuBold.Checked = Not mnuBold.Checked
22、下列与鼠标拖放操作无关的是()。
A.DragDrop事件
B.KeyPress事件
C.DragOver事件
D.Drag方法
正确答案:KeyPress事件
23、在窗体上画一个名称为Text1的文本框,然后编写以下事件过程:Private Sub Text1()KeyDown(KeyCode As Integer, Shift As Integer); If()Then; Text1.SelStart = 0; Text1.SelLength = Len(Text1.Text); End IfEnd Sub要求程序运行时,若输入焦点在Text1上,按下组合键Ctrl+A可以选取Text1内所有的文本,则在横线处应填入的表达式是()。
A.KeyCode = ";A"; And Shift = ";Ctrl"
B.Text1.KeyCode = ";A"; And Text1.Shift = ";Ctrl"
C.KeyCode = 65 And Shift = 2
D.Text1.KeyCode = 65 And Text1.Shift = 2
正确答案:KeyCode = 65 And Shift = 2
24、程序运行时若单击水平滚动条上滚动块右边的空白处,则其Value属性值的变化量为()。
A.SmallChange属性的值
B.Max属性的值
C.LargeChange属性的值
D.Min属性的值
正确答案:LargeChange属性的值
25、下列叙述中,正确的是()。
A.框架控件的标题不能在程序运行过程中修改
B.文本框可以显示多行文本
C.组合框是组合文本框和列表框的特性而成的控件,所以它具有二者的全部属性
D.标签中显示的文本在运行阶段不能改变
正确答案:文本框可以显示多行文本
26、对于通用对话框控件,下列说法中错误的是()。
A.用保存文件对话框可以指定一个文件,由程序使用
B.用通用对话框控件可以建立打开文件对话框,也可以建立保存文件对话框
C.用打开文件对话框可以指定一个文件,由程序使用
D.DefaultEXT和DialogTitle属性只用于打开对话框,不能用于保存对话框
正确答案:DefaultEXT和DialogTitle属性只用于打开对话框,不能用于保存对话框
27、为了在程序运行时弹出一个菜单,程序中应使用()。
A.所单击控件的PopupMenu方法
B.窗体的PopupMenu方法
C.窗体的ShowMenu方法
D.窗体的Show方法
正确答案:窗体的PopupMenu方法
28、下列叙述中错误的是()。
A.图片框可以作为控件的容器
B.文本框控件支持Change事件
C.可以使用Print方法在图片框上输出文字
D.由于直线控件没有Move方法,所以直线控件在运行阶段不能移动
正确答案:由于直线控件没有Move方法,所以直线控件在运行阶段不能移动
29、用于设置计时器事件产生间隔的属性是()。
A.Value
B.Index
C.Tag
D.Interval
正确答案:Interval
30、设窗体上有2个框架,每个框架中有若干个单选按钮,下面叙述中正确的是()。
A.每个框架中都有一个单选按钮可以被选中
B.如果某个框架的Enabled属性为False,则里面的单选按钮一定都是未选中状态
C.窗体上所有单选按钮中只有一个可以被选中
D.如果某个框架的Enabled属性为True,则里面单选按钮的Enabled属性也都为True
正确答案:每个框架中都有一个单选按钮可以被选中
31、在计时器控件中,Interval属性的作用是()。
A.决定是否响应用户的操作
B.设置产生计时器事件的间隔
C.决定计时器事件产生的次数
D.设置计时器与窗体上边界之间的距离
正确答案:设置产生计时器事件的间隔
32、下列关于键盘事件的说法中,正确的是()。
A.主键盘上";4";键的上档字符是";$";,当同时按下Shift和主键盘上的";4"; 键时,KeyPress事件过程的KeyAscii参数值是";$";的ASCII值
B.KeyDown和KeyUp的事件过程中有KeyAscii参数
C.按下键盘上的任意一个键,都会引发KeyPress事件
D.主键盘上的";1"; 键和数字键盘上的";1";键的KeyCode码相同
正确答案:主键盘上";4";键的上档字符是";$";,当同时按下Shift和主键盘上的";4"; 键时,KeyPress事件过程的KeyAscii参数值是";$";的ASCII值
第八章单元测试
1、窗体的隐藏和删除分别用在不同的场合,隐藏Form1和删除Form1的命令是()。
A.Hide.Form1 Form1.Unload
B.Form1.Hide Unload.Form1
C.
A.Hide.Form1 Unload.Form1
D.Form1.Hide Form1.Unload
正确答案:Form1.Hide Unload.Form1
2、与Forml.Show方法效果相同的是()。
A.Visible.Form1=True
B.Visible.Form1=False
C.Form1.Visible=True
D.Form1.Visible=False
正确答案:Form1.Visible=True
3、要从自定义对话框Form2中退出可以在该对话框的“退出”按钮Click事件过程中使用()语句。
A.Unload Form2
B.Form2.Hide
C.Hide Form2
D.Form2.Unload
正确答案:Unload Form2
4、如果Form1是启动窗体,并且Form1的Load事件过程中有语句Form2.Show,则程序启动后()。
A.在所有的初始化代码运行后Form2是活动窗体
B.发生一个编译错误
C.发生一个运行时错误
D.在所有的初始化代码运行后Form1是活动窗体
正确答案:在所有的初始化代码运行后Form2是活动窗体
5、下面关于多重窗体的叙述中,正确的是()。
A.作为启动对象的Main子过程只能放在窗体模块中
B.没有启动窗体,程序不能执行
C.若启动对象是Main子过程,则程序启动时不加任何窗体,以后该过程根据不同情况决定是否加载或加载块
D.没有Main子过程,程序不能执行
正确答案:若启动对象是Main子过程,则程序启动时不加任何窗体,以后该过程根据不同情况决定是否加载或加载块
6、对于含有多个窗体的工程而言,以下叙述中正确的是()。
A.没有指定启动窗体时,系统自动将最后一个添加的窗体设置为启动窗体
B.Hide方法可以将指定的窗体从内存中清除
C.Load方法兼有装入和显示窗体两种功能
D.启动窗体可以通过";工程属性";对话框指定
正确答案:启动窗体可以通过";工程属性";对话框指定
7、以下关于窗体的叙述中错误的是()。
A.窗体的Load事件在加载窗体时发生
B.窗体的Hide方法将窗体隐藏并卸载
C.窗体的Show方法可以将窗体装入内存并显示该窗体
D.若工程中包含多个窗体,则可指定一个为启动窗体
正确答案:窗体的Hide方法将窗体隐藏并卸载
8、如果要将一个窗体从内存中清除,应使用的语句是()。
A.Unload
B.Hide
C.Load
D.Show
正确答案:Unload
9、为了在Form()Load事件过程中用Print方法在窗体上输出指定的内容,首先应执行的操作是()。
A.设置窗体的Enabled属性
B.设置窗体的AutoRedraw属性
C.设置窗体的Visible属性
D.调用窗体的Show方法
正确答案:调用窗体的Show方法
10、设一个工程文件包含多个窗体及标准模块,以下叙述中错误的是()。
A.如果工程中有Sub Main过程,则程序一定首先执行该过程
B.用Hide方法只是隐藏窗体,不能从内存中清除该窗体
C.Show方法用于显示一个窗体
D.不能把标准模块设置为启动模块
正确答案:如果工程中有Sub Main过程,则程序一定首先执行该过程
11、以下叙述中错误的是()。
A.一个工程中可以包含多个窗体文件
B.窗体和标准模块需要分别保存为不同类型的磁盘文件
C.全局变量可以在标准模块中定义
D.在一个窗体文件中用Private定义的通用过程可以被其他窗体调用
正确答案:在一个窗体文件中用Private定义的通用过程可以被其他窗体调用
12、工程中有Form1、Form2两个窗体(Form1中有文本框Text1;Form2中有Text1文本框和Command1命令按钮)。Form1是启动窗体。在这些模块中编写下面的程序代码:Form1中的代码如下:Private Sub Text1()DblClick(); Text1 = ";Visual Basic";; Form2.Show; End SubForm2中的代码如下:Private Sub Command1()Click(); Text1 = Form1.Text1; Form1.Show;End Sub下面关于程序的叙述中错误的是()。
A.双击Form1的Text1后,Form2成为当前窗体
B.Form2的Text1 = Form1.Text1语句不能正确执行
C.双击Form1的Text1后, Text1中显示";VisualBasic";,弹出Form2
D.单击Form2的命令按钮,Form1成为当前窗体
正确答案:Form2的Text1 = Form1.Text1语句不能正确执行
13、以下叙述中错误的是()。
A.一个工程中只能有一个Sub Main过程
B.当工程中含有Sub Main过程时,工程执行时一定最先执行该过程
C.Sub Main 是定义在标准模块中的特定过程
D.Sub Main 过程不能有返回值
正确答案:当工程中含有Sub Main过程时,工程执行时一定最先执行该过程
14、Visual Basic中的";启动对象";是指启动Visual Basic应用程序时,被自动加载并首先执行的对象。下列关于Visual Basic";启动对象";的描述中,错误的是()。
A.";启动对象";可以是指定的窗体
B.";启动对象";可以是指定的标准模块
C.若没有经过设置,则默认的";启动对象";是第一个被创建的窗体
D.";启动对象";可以是Sub Main过程
正确答案:";启动对象";可以是指定的标准模块
15、对于含有多个窗体的工程而言,以下叙述中正确的是()。
A.Hide方法可以将指定的窗体从内存中清除
B.没有指定启动窗体时,系统自动将最后一个添加的窗体设置为启动窗体
C.启动窗体可以通过";工程属性";对话框指定
D.Load方法兼有装入和显示窗体两种功能
正确答案:启动窗体可以通过";工程属性";对话框指定
16、以下关于多重窗体程序的叙述中,错误的是()。
A.在多重窗体程序中,各窗体的菜单是彼此独立的
B.用Hide方法不仅可以隐藏窗体,而且还可以清除内存中的窗体
C.对于多重窗体程序,需要单独保存每个窗体
D.在多重窗体程序中,可以根据需要指定启动窗体
正确答案:用Hide方法不仅可以隐藏窗体,而且还可以清除内存中的窗体
17、以下关于VB特点的叙述中,错误的是()。
A.VB程序能够以编译方式运行
B.VB程序总是从Form()Load事件过程开始执行
C.VB采用事件驱动的编程机制
D.VB程序能够以解释方式运行
正确答案:VB程序总是从Form()Load事件过程开始执行
18、以下关于窗体的叙述中错误的是()。
A.若工程中包含多个窗体,则可指定一个为启动窗体
B.窗体的Load事件在加载窗体时发生
C.窗体的Hide方法将窗体隐藏并卸载
D.窗体的Show方法可以将窗体装入内存并显示该窗体
正确答案:窗体的Hide方法将窗体隐藏并卸载
19、下列操作中不能向工程添加窗体的是()。
A.右击窗体,在弹出的菜单中选择";添加窗体";命令
B.单击工具栏上的";添加窗体";按钮
C.右击工程资源管理器,在弹出的菜单中选择";添加";命令,然后在下一级菜单中选择";添加窗体";命令
D.执行";工程";菜单中的";添加窗体";命令
正确答案:右击窗体,在弹出的菜单中选择";添加窗体";命令
20、下列说法中错误的是()。
A.Sub Main过程一定是程序运行时首先被执行的过程,是整个程序的入口点
B.在过程中,可以用Static定义变量,但当该过程调用结束后,其值继续保留
C.当用Static关键字定义一个过程时,该过程中的所有变量都是";Static";存储方式的
D.同一个工程中只能有一个Sub Main过程
正确答案:Sub Main过程一定是程序运行时首先被执行的过程,是整个程序的入口点
第九章单元测试
1、设有如下程序代码:Private Sub Command1()Click();Dim Sname As String, SNo As String, Score As Single;Open ";D:Score.txt"()As #1;SNo = InputBox(";输入学号:";);Sname = InputBox(";输入姓名:";);Score = Val(InputBox(";输入成绩:";));Print #1, SNo, Sname, Score;Close #1End Sub以上程序的功能是,向文件D:Score.txt中写入一名同学的学号、姓名和成绩,当文件不存在时,则新建该文件;当文件存在时,则覆盖原文件的内容。在横线处应填入的内容是()。
A.For Random
B.For Input
C.For OverWrite
D.For Output
正确答案:For Output
2、Visual Basic的窗体文件(.frm文件)是一个文本文件,它()。
A.可以当作随机文件读取
B.不能作为Visual Basic的数据文件来访问
C.可以当作顺序文件读取
D.既可当作顺序文件读取也可当作随机文件读取
正确答案:可以当作顺序文件读取
3、在一个有若干个整数的顺序文件中查找一个数(这个数从文本框中输入),找到后在标签Label1中显示该数是文件中第几个数;如果没找到,则显示文件中没有该数的信息Private Sub Command1()Click();Dim x As Integer, n As Integer;a = Val(Text1.Text);Open ";file1.txt"; For Input As #1;Do While Not EOF(1);Input ();n = n + 1;If x = a Then;Label1.Caption = a &; ";是文件中第"; &; n &; ";个数";;Close #1;Exit Sub;End If;Loop;Close #1;Label1.Caption = ";文件中没有"; &; aEnd Sub要使上面的程序代码实现上述功能,在横线处应填写的是()。
A.1, n
B.#1, a
C.#1, x
D.1, a
正确答案:#1, x
4、下列关于随机文件的描述中,错误的是()。
A.每条记录的长度必须相同
B.只能随机存取
C.数据存取灵活方便,容易修改
D.每条记录都有一个记录号
正确答案:只能随机存取
5、在窗体Form1上画一个名称为Command1的命令按钮,编写如下程序代码:Private Type stu;sn As String * 20;class As String * 20End TypePrivate Sub Command1()Click();Dim s As stu;Open ";c:allstu.dat"; For Random As #1 Len = Len(s);s.sn = ";John";;s.class = ";Computer 2013";;Put #1, , s;Close #1End Sub则以下叙述中正确的是()。
A.如果文件c:allstu.dat不存在,则Open语句执行中出现';文件未找到';的错误
B.定义记录类型stu的Type语句可以移到事件过程Command1()Click中
C.语句';Put #1, , s';中没有指明记录号,因此系统总是把记录写到文件的头部
D.文件c:allstu.dat中的每条记录是等长的
正确答案:文件c:allstu.dat中的每条记录是等长的
6、Print #语句的作用是()。
A.向顺序文件中写数据
B.向随机文件中写数据
C.从顺序文件中读入数据
D.向窗体上输出数据
正确答案:向顺序文件中写数据
7、以下关于文件的叙述中,错误的是()。
A.读取顺序文件的记录时,只能从头至尾逐记录进行
B.随机文件一般占用空间比较小
C.顺序文件中各记录的长度是固定的
D.顺序文件有多种打开文件的方式
正确答案:顺序文件中各记录的长度是固定的
8、以下不属于Visual Basic数据文件的是()。
A.数据库文件
B.随机文件
C.二进制文件
D.顺序文件
正确答案:数据库文件
9、下列关于顺序文件的描述中,正确的是()。
A.不能像随机文件一样灵活地存取数据
B.文件的组织与数据写入的顺序无关
C.每条记录的长度是固定的
D.主要的优点是占空间少,且容易实现记录的增减操作
正确答案:不能像随机文件一样灵活地存取数据
10、下列关于数据文件的描述中,错误的是()。
A.VB应用程序可以用随机方式读写数据文件
B.VB数据文件不包括VB的窗体文件
C.VB应用程序在读写数据文件之前,必须用Open语句打开该文件
D.VB应用程序不能把一个二维表格中的数据存入文件
正确答案:VB应用程序不能把一个二维表格中的数据存入文件
11、下面关于文件叙述中错误的是()。
A.随机文件每个记录的长度是固定的
B.顺序文件的记录是顺序存放的,可以按记录号直接访问某个记录
C.VB数据文件需要先打开,再进行处理
D.不论是顺序文件还是随机文件,都是数据文件
正确答案:顺序文件的记录是顺序存放的,可以按记录号直接访问某个记录
12、以下关于文件的叙述中,错误的是()。
A.随机文件中记录的长度是随机的
B.EOF函数用来测试是否到达文件尾
C.文件被打开后,自动生成一个文件指针
D.顺序文件中的记录是一个接一个地顺序存放
正确答案:随机文件中记录的长度是随机的
13、以下关于文件的叙述中,正确的是()。
A.随机文件记录中的各个字段具有相同的长度
B.用Append方式打开的文件,既可以进行读操作,也可以进行写操作
C.随机文件的记录是定长的
D.随机文件通常比顺序文件占用的空间小
正确答案:随机文件的记录是定长的
14、关于随机文件,以下叙述中错误的是()。
A.随机文件记录中,每个字段的长度是固定的
B.随机文件的每个记录都有一个记录号
C.使用随机文件能节约空间
D.随机文件中,每个记录的长度相等
正确答案:使用随机文件能节约空间
15、在Open语句中可以用Output和Append两种方式打开顺序文件,其主要区别是()。
A.Output和Append都只能从文件的第一个记录开始写数据
B.Output总是从文件的第一个记录开始写,而Append在文件最后一个记录后面添加数据
C.Output和Append都可以在文件的最后一个记录后面添加数据
D.Output在文件最后一个记录后面添加数据,而Append总是从文件的第一个记录开始写
正确答案:Output总是从文件的第一个记录开始写,而Append在文件最后一个记录后面添加数据
16、窗体上有一个名称为Command1的命令按钮。要求编写程序,把文件f1.txt的内容写到文件f2.txt中,然后将f1.txt删除。命令按钮的单击事件过程如下:Private Sub Command1()Click();Open ";c:f1.txt"; For Input As #1;Open ";c:f2.txt"; For Output As #2;Do While Not EOF(2);Line Input #1, str1;Print #2, str1;LoopCloseKill ";c:f1.txt";End Sub该程序运行时发生错误,应该进行的修改是()。
A.Line Input应改为Get
B.Not EOF(2)应该改为Not EOF(1)
C.打开f1.txt应该使用Output 方式,打开f2.txt 应该使用Input 方式
D.Close语句改为Close All
正确答案:Not EOF(2)应该改为Not EOF(1)
17、设在工程文件中有一个标准模块,其中定义了如下记录类型:Type BooksName As String * 10TelNum As String * 20End Type在窗体上画一个名为Command1的命令按钮,要求当执行事件过程Command1()Click时,在顺序文件Person.txt中写入一条Books类型的记录。下列能够完成该操作的事件过程是()。
A.Private Sub Command1()Click()Dim B As BooksOpen ';Person.txt'; For Output As #1B.Name=InputBox(';输入姓名';)B.TelNum=InputBox(';输入电话号码';)Write #1, BClose #1End Sub
B.Private Sub Command1()Click()Open ';Person.txt'; For Input As #1Name=InputBox(';输入姓名';)TelNum=InputBox(';输入电话号码';)Print #1, Name, TelNumClose #1End Sub
C.Private Sub Command1()Click()Dim B As BooksOpen ';Person.txt'; For Output As #1B.Name=InputBox(';输入姓名';)B.TelNum=InputBox(';输入电话号码';)Write #1, B.Name, B.TelNumClose #1End Sub
D.Private Sub Command1()Click()Dim B As BooksOpen ';Person.txt'; For Input As #1B.Name=InputBox(';输入姓名';)B.TelNum=InputBox(';输入电话号码';)Print #1, B.Name, B.TelNumClose #1End Sub
正确答案:Private Sub Command1()Click()Dim B As BooksOpen ';Person.txt'; For Output As #1B.Name=InputBox(';输入姓名';)B.TelNum=InputBox(';输入电话号码';)Write #1, B.Name, B.TelNumClose #1End Sub
18、窗体上有一个名称为Text1的文本框,一个名称为Command1的命令按钮。以下程序的功能是从顺序文件中读取数据:Private Sub Command1()Click()Dim s1 As String, s2 As StringOpen ";c:d4.dat"; For Append As #3Line Input #3, s1Line Input #3, s2Text1.Text=s1+s2Close End Sub该程序运行时有错误,应该进行的修改是()。
A.将Open语句中的For Append改为For Input
B.将Line Input改为Line
C.将Close语句改为Close #3
D.将两条Line Input语句合并为Line Input #3, s1,s2
正确答案:将Open语句中的For Append改为For Input
19、窗体上有一个名称为Command1的命令按钮。其单击事件过程如下:Private Sub Command1()Click();Open ";c:f1.txt"; For Input As #1;Open ";c:f2.txt"; For Output As #2;Do While Not EOF(1);Line Input #1, str1;Print #2, str1;Loop;CloseEnd Sub以下关于上述程序的叙述中,错误的是()。
A.程序的功能是将f2.txt文件的内容复制到f1.txt中
B.f1.txt和f2.txt均是顺序文件
C.EOF函数可以判断是否已到文件的末尾
D.Close能够把打开的两个文件都关闭
正确答案:程序的功能是将f2.txt文件的内容复制到f1.txt中
20、为了保存数据,需打开顺序文件";E:UserData.txt";,以下正确的命令是()。
A.Open E:UserData.txt For Output As #1
B.Open E:UserData.txt For Input As #1
C.Open ';E:UserData.txt'; For Input As #2
D.Open ';E:UserData.txt'; For Output As #2
正确答案:Open ';E:UserData.txt'; For Output As #2
21、用Open语句打开文件时,如果省略";For 方式";,则该文件的存取方式是()。
A.随机存取方式
B.二进制存取方式
C.顺序存取方式
D.不确定
正确答案:随机存取方式
22、如果希望向一个顺序文件写入数据,但又要保留文件中的原有内容,应采取的文件打开方式是()。
A.Random
B.Input
C.Output
D.Append
正确答案:Append
23、在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:Private Sub Command1()Click();Dim s1 As String, s2 As String;Open ";D:data.txt"; For Input As #1;Seek #1, 5;s1 = Input$(2, #1);s2 = Input$(3, #1);Print Seek(1);Close #1End Sub假设有磁盘文件D:data.txt,且文件足够长,当程序运行时,单击Command1,在窗体上输出的结果是()。
A.11
B.5
C.9
D.10
正确答案:10
24、某人编写了下面的程序,希望能把Text1文本框中的内容写到out.txt文件中:Private Sub Command1()Click()Open ";out.txt"; For Output As #2Print ";Text1";Close #2End Sub调试时发现没有达到目的,为实现上述目的,应做的修改是()。
A.把Print ';Text1'; 改为Write ';Text1'
B.把所有 #2 改为 #1
C.把Print ';Text1'; 改为 Print Text1
D.把Print ';Text1'; 改为Print #2, Text1
正确答案:把Print ';Text1'; 改为Print #2, Text1
25、某人编写了向随机文件中写一条记录的程序,代码如下:Type RTypeName As String * 10Tel ;As String * 20End TypePrivate Sub Command1()Click()Dim p As RTypep.Name=InputBox(";姓名";)p.Tel=InputBox(";电话号";)Open ";Books.dat"; For Random As #1Put #1, , pClose #1End Sub该程序运行时有错误,修改的方法是()。
A.应把Open语句中的For Random 改为 For Output
B.Dim p As RType必须置于窗体模块的声明部分
C.在类型定义';Type RType';之前加上';Private'
D.Put语句应该写为Put #1,p.Name ,p.Tel
正确答案:在类型定义';Type RType';之前加上';Private'
26、有如下过程:Sub proc();Dim ch As String;Open ";file1.txt"; For Input As #1;Open ";file1()bak.txt"; For Output As #2;Do While Not EOF(1);ch = Input$(1, #1);Print #2, ch;;Loop;Close #1, #2End Sub这一过程的功能是()。
A.把文件file1()bak.txt复制为file1.txt文件
B.读入文件file1.txt的内容在窗体上显示
C.把文件file1.txt复制为file1()bak.txt文件
D.读入文件file1()bak.txt的内容在窗体上显示
正确答案:把文件file1.txt复制为file1()bak.txt文件
27、窗体的单击事件过程如下:Private Sub Form()Click();n = FreeFile;Open ";e:f1.txt"; For Input As n;Do While Not EOF(n);Line Input #n, str1;Print str1;Loop;CloseEnd Sub对于以上程序,如下叙述中错误的是()。
A.Not EOF(n)的含义是没有到达n所对应文件的末尾
B.Open打开一个随机文件
C.Line Input语句从#n对应的文件中读数据,并赋值给str1
D.n = FreeFile的作用是自动获取文件号,并赋值给n
正确答案:Open打开一个随机文件
28、为了返回或设置磁盘驱动器的名称,应使用的驱动器列表框的属性是()。
A.Drive
B.ChDrive
C.ListIndex
D.List
正确答案:Drive
29、以下说法中正确的是()。
A.Shape控件可以将同一个窗体上的多个单选按钮分成多个组
B.当在名称为Drive1的驱动器列表框中选取不同的驱动器时,系统将执行事件过程Drive1()Click
C.能获取列表框List1中最后一个列表项内容的表达式是List1.List(ListCount-1)
D.当一个复选框被选中时,它的Value属性的值是1
正确答案:当一个复选框被选中时,它的Value属性的值是1
30、窗体上有一个名称为Command1的命令按钮,一个名称为List1的列表框。命令按钮的单击事件过程如下:Private Sub Command1()Click();Open ";c:f1.txt"; For Input As #1;Do While Not EOF(1);Input #1, str1;List1.AddItem str1;Loop;CloseEnd Sub对于上述程序,以下叙述中错误的是()。
A.Close的作用是关闭已经打开的数据文件
B.运行程序后,列表框中的列表项都是f1.txt中的记录
C.单击命令按钮后,把f1.txt中的所有内容添加到列表框中
D.以输入方式打开随机文件f1.txt
正确答案:以输入方式打开随机文件f1.txt