资源描述
2010 - 2011学年第一学期期末考试十二校联考试卷
职高二年级《Visual Basic程序设计》试卷
(命题范围:第七章、第八章、第十一章、数据文件)
(考试时间75分钟,满分120分)
注意事项:
1、判断题正确涂A, 错误涂B。
2、请将卷I的答案填涂在答题卡上,卷II的答案填写在答题纸上。
3、考试结束时,只收取答题卡和答题纸。
卷I(客观题,共75分)
一、单项选择题:(共35小题,每小题2分,共70分。请将各小题的正确选项填涂在答题卡的相应位置上)
1.定义了一个数组变量为A(-2 to 4),则该数组包含了( )个元素。
A.7 B.6 C.-2 D.4
2.数组x中合法的数组元素表示为( )。
A.x9 B.x[9] C.x(i+1) D.x{6}
3. 执行以下代码后,输出结果为( )。
Option Base 0
Dim a
a=Array("a","b","c","d","e","f","g","h")
Print a(1);a(3);a(5)
A.abc B.bdf C.ace D.出错
4. 用下面的语句所定义的数组的元素个数为( )。
Dim arrA(3 to 5,-2 to 2)
A.20 B.12 C.15 D.24
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
6. 下列语句中( )语句可以用来正确地声明一个动态数组。
A.Private A(n) As Integer B.Dim A() As Integer
C.Dim A(,) As Integer D.Dim A(1 To n)
7. 在窗体上用复制、粘贴的方法建立了一个命令按钮数组,数组名为arrM。设窗体Form1的标题为"Myform1",双击控件数组中的第三个按钮,打开代码编辑器,输入以下代码:
Private Sub arrM_Click(Index As Integer)
Form1.Caption="Myform2"
End Sub
运行时,单击按钮数组中的第一个按钮,窗体的标题为( )。
A.Form1 B.arrM C.Myform1 D.Myform2
8. 要建立一个学生成绩的随机文件,如下定义了学生的记录类型,由学号、姓名、3门课成绩组成,以下程序段正确的是( )。
A.Type stud B.Type stud
No As Integer No As Integer
Name As String Name As String*10
Grade(1 to 3) As Single Grade() As Single
End Type End Type
C.Type stud D.Type stud
No As Integer No As Integer
Name As String*10 Name As String*10
Grade(1 to 3) As Single Grade(1 to 3) As String
End Type End Type
9. 以下是在一个按钮事件过程中调用一个函数过程:
Private Sub Command1_Click()
a=100
b=25
x=gys(a,b)
Print x
End Sub
Function gys(ByVal x As Integer,ByVal y As Integer)As Integer
Do While y<>0
remi=x Mod y
x=y
y=remi
Loop
gys=x
End Function
程序运行后的结果是( )。
A.0 B.25 C.50 D.100
10.以下关于建立控件数组的说法中,( )是错误的。
A.可以通过复制、粘贴的方法建立
B.对已创建好的控件不能再建立控件数组
C.不同的控件不能建立控件数组
D.对同类控件可以将其名称修改为相同来建立控件数组
11. Sub 过程与函数过程最主要的区别是( ) 。
A. 后者可以有参数 ,而前者则不行
B. 前者可以用 Call 语句直接调用 ,而后者则不行
C. 两种过程的参数传递方式不同
D. 前者的过程名不能返回值 ,而后者的过程名则可以返回值
12. 若希望在离开某过程后还能保存该过程中局部变量的值 ,则应使用( )关键字在该过程中定义局部变量 。
A. Dim B. Private C. Public D. Static
13. 在进行参数传递的时候 ,ByVal 和 ByRef 的含义分别是( ) 。
A. 前者表示按地址 ,后者表示按数值
B. 前者表示按数值 ,后者表示按地址
C. 前者表示按地址 ,后者也表示按地址
D. 前者表示按数值 ,后者也表示按数值
14. 以下关于 Sub 过程的说法中 ,只有( )是正确的 。
A. 一个 Sub 过程必须有一个 Exit Sub 语句
B. 一个 Sub 过程必须有一个 End Sub 语句
C. 在 Sub 过程中可以定义 Function 过程
D. 退出 Sub 过程也可以使用 GoTo 语句
15. 以下叙述中 ,( )是正确的 。
A. 过程的定义可以嵌套 ,但过程的调用不能嵌套
B. 过程的定义不能嵌套 ,但过程的调用可以嵌套
C. 过程的定义与调用均不能嵌套
D. 过程的定义与调用均可以嵌套
16. 在 Visual Basic 中文件访问的类型有( )。
A.顺序、随机、二进制 B.顺序、随机、字符
C.顺序、十六进制、随机 D.顺序、记录、字符
17. 使用驱动器列表框的( )属性可以返回或设置磁盘驱动器的名称。
A.ChDrive B.Drive C.List D.Listlndex
18. 使用目录列表框的( )属性可以返回或设置当前工作目录的完整路径(包括驱动器盘符)。
A.Drive B.Path C.Dir D.ListIndex
19. 文件列表框中用于设置或返回所选文件的路径和文件名的属性是( )。
A.File B.FilePath C.Path D.FileName
20. 文件号最大可取的值为( )。
A.25 B.511 C.512 D.256
21. 下面叙述中不正确是( )。
A.顺序文件结构简单
B.能同时对顺序文件进行读写操作
C.对顺序文件中的数据的操作只能按一定的顺序执行
D.顺序文件的数据是以字符(ASCII码)的形式存储的
22. 下面叙述中不正确的是( )。
A.随机文件中记录的长度不是固定不变的
B.可以同时对打开的随机文件进行读写操作
C.随机文件由若干条记录组成,并按记录号引用各个记录
D.可以按任意顺序访问随机文件中的数据
23. 关于文件访问,下面的说法正确的是 ( )。
A.使用顺序型来打开一个文件以后,能够使用Get函数来输入
B.使用Append方式来打开一个文件时,如果文件不存在,将创建一个新的文件
C.使用Print # 能够确保每一个数据域的完整性
D.Write# 可以在二进制方式下工作
24. 要以追加顺序文本方式打开C盘根目录下的My Text.Txt文件,正确的代码是( )。
A.Open "C:\Mytext.Txt" For Random As#1
B.Open "C:\Mytext.Txt" For Input As#1
C.Open "C:\Mytext.Txt" For Append As#1
D.Open "C:\Mytext.Txt" For Output As#1
25. 为了把一个记录型变量的内容写入文件中指定的位置,所使用的语句格式为( )。
A.Get文件号,记录号,变量名 B.Get文件号,变量名,记录号
C.Put文件号,变量名,记录号 D.Put文件号,记录号,变量名
26. 若磁盘文件C:\Data1.dat不存在,下列打开文件语句中,会产生错误的是( )。
A.Open "C:\Data1.dat" For Output As #1
B.Open "C:\Data1.dat" For Input As #2
C.Open "C:\Data1.dat" For Append As #3
D.Open "C:\Data1.dat" For Binary As #4
27. 为了建立一个随机文件,其中每一条记录由多个不同数据类型的数据项组成,应使用( )。
A.记录类型 B.数组 C.字符串类型 D.变体类型
28. 语句: Open "Q.DAT" For Random As #1 Len = 20表示文件Q.DAT的每个记录长度等于( )。
A.20个字符 B.20个字节
C.或小于20个字符 D.或小于20个字节
29. 要从磁盘上读入一个文件名为“c:\test.txt”的顺序文件,以下正确的是( )。
A.F="c:\test.txt" B.F="c:\test.txt"
Open F For Input As #1 Open "F" For Input As #2
C.Open "c:\test.txt" For Output As #1
D.Open c:\test.txt For Input As #1
30. 设文件C:\test.txt文件的内容是:
1
2
4
5
10
25
50
100
给出下面的程序:
Private Sub Command1_Click()
Dim InputData
Open "C:\test.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, InputData
Loop
Close #1
MsgBox InputData
End Sub
程序最后弹出的消息对话框的内容是( )。
A.什么也没有 B.1 C.100 D.文件的全部内容
31.Cls方法可以清除窗体或图片框中的( )内容。
A.在运行阶段产生的图形和文字
B.在设计阶段放置的控件
C.在设计阶段使用Picture属性设置的背景位图
D.以上全部内容
32. 通过设置Shape控件的( )属性可以绘制多种形状的图形。
A.Shape B.BorderStyle C.FillStyle D.Style
33. 语句Line(200,200)-(600,600),vbRed,BF的功能是( )。
A.在窗体上绘制一个红色的空心矩形
B.在窗体上绘制一个红色的实心矩形
C.在窗体上绘制一条红色的实线
D.在窗体上绘制一条红色的点划线
34. 语句 Line (100,100) – Step(500,500)将在窗体( )画一直线。
A.(200,200)到(400,400) B.(100,100)到(500,500)
C.(100,100)到(600,600) D.(100,100)到(400,400)
35.下面程序段的功能是( )。
Forml.FillColor=vbBlue
Form1.FillStyle=0
Line(120,120)-(500,500),vbRed,B
A.在窗体上绘制一个边框为蓝色、填充色为红色的矩形
B.在窗体上绘制一个边框为红色、填充色为蓝色的矩形
C.在窗体上绘制一个边框为红色、填充色为红色的矩形
D.在窗体上绘制一个边框为红色、填充色为窗体背景颜色的矩形
二、判断题(共5小题,每题1分,共5分。请将答案填涂在答题卡相应位置,正确涂A,错误涂B)
36. 当函数Eof()的返回值为–1时,表示文件的指针指向最后一个记录。( )
37.在过程中,实参和形参在名字上不要求相同。( )
38.Image控件的picture属性用来指定一个图形是否要调整大小,以适应Image控件的大小。( )
39.在circle方法中,当参数aspect的值小于1时,椭圆长轴在水平方向上,短轴在垂直方向上。( )
40.PictureBox控件的stretch属性决定控件能否自动调整大小以显示整幅图形。( )
卷II(主观题,共45分)
三、填空题(共5小题,每题2分,共10分。请将答案写在答题纸相应位置上)
41.为了获得当前未被使用的文件号,可利用VB提供的___________函数来实现。
42.一般情况下,数组定义时其默认的下标下界为0,但可以使用__________________语句来改变默认的下界。
43.在调用过程时 ,如果不用 Call 命令 ,则在调用命令中必须省略实际参数前、后的_______________。
44.使用Circle方法在窗体Forml上以(25,25)为圆心,20为半径画圆,相应的代码为____________________________________。
45.要改变数组大小而又不丢失数组中的数据,可以使用带有______________关键字的ReDim语句。
四、写运行结果(共3小题,每题5分,共15分。请将答案写在答题纸相应位置上)
46.有如下 Sub 过程与调用过程 :
Private Sub Command1_ Click()
ind 2
End Sub
Sub ind(a As Integer)
static x As Integer
x=x+a
Print x ;
End Sub
程序运行后 ,单击命令按钮 3 次 ,其输出结果为_________________。
47.窗体上一个命令按钮的事件过程如下:
Option Base 1
Private Sub Command1_Click()
Dim a
a = Array(1, 2, 3, 4)
j = 1
For i = 4 To 1 Step -1
s = s + a(i) * j
j = j * 10
Next i
Print s
End Sub
程序运行的结果为_________________。
48.有以下程序:
Private Sub Form_Click()
Dim mm(6) As Integer
Dim k%
Open "c:\b1.dat" For Output As #1
For i = 1 To 6
j = i * i * i
Print #1, j
Next i
Close #1
Open "c:\b1.dat" For Input As #2
k = 0
Do While Not EOF(2)
k = k + 1
Input #2, mm(k)
Loop
Close #2
For i = k To k / 2 Step -1
Form1.Print mm(i)
Next i
End Sub
它的输出结果是_______________________。
五、程序填空(共4个空,每空5分,共20分。请将答案写在答题纸相应位置上)
49. 以下程序代码实现单击命令按钮Command1时输出一个主对角线上元素值为1,其余元素为0的6×6方阵。完成程序。
Private Sub Command1_Click()
Dim a(6, 6)
For i = 1 To 6
For j = 1 To 6
If i = j Then
____①____
Else
____②____
End If
Print a(i,j);
Next j
Print
Next i
End Sub
50. 下面的程序用“冒泡”法将数组a中的10个整数按升序排列,试将程序补充完整。
Private Sub Command1_Click()
Dim a
a = Array(678, 45, 334, 540, 430, 387, 89, 889, 234, 876)
For i=_________③_____________
For j =__________④____________
If a(j) > a(j+1) Then
a1 = a(j)
a(j) = a(j+1)
a(j+1) = a1
End If
Next j
Next i
For i = 1 To 10
Print a(i);
Next i
End Sub
高二《Visual Basic程序设计》试卷 第 7 页 共 7 页
展开阅读全文