说 明
本练习摘自全国计算机等级考试试卷,仅供复习参考。
用红色标记的选项为参考答案。用蓝色标记的选项为不在这次的考试范围
如果发现题目或答案有错,请发电子邮件知会老师,xkping@163.com,谢谢。
第一部分(0609)
一、单选题
11.以下叙述正确的是
(A)窗体的Name属性指定窗体的名称,用来标识一个窗体
(B)窗体的Name属性值是显示在窗体标题栏中的文本
(C)可以在运行期间改变窗体的Name属性的值
(D)窗体的Name属性值可以空
12.以下叙述中错误的是
(A)打开一个工程文件时,系统自动装入与该工程有关的窗体文件
(B)保存Visual Basic程序时,应分别保存窗体文件及工程文件
(C)Visual Basic应用程序只能以解释的方式执行
(D)窗体的Name属性值可以可空
13.设 a = 2,b = 3,c = 4,下列表达式的值是
Not a <= c Or 4 * c = b ^ 2 And b <> a + c
(A)-1
(B) 1
(C)True
(D)False
14.设有发下声明的用户定义类型:
Type Student
number As String
name As String
age As Integer
End Type
则以下正确引用该类型成员的代码是
(A)Student.name = "李明"
(B)Dim s As Student : s.name = "李明"
(C)Dim s As Type Student : s.name ="李明"
(D)Dim s As Type : s.name = "李明"
15.设 a = 5,b = 6,c = 7,d = 8,执行下列语句后,x的值为
x = IIf((a > b) And (c >b), 10, 20)
(A)10
(B)20
(C)True
(D)False
16.执行以下程序段后,变量c$的值为
a$ = "Visual Basic Programming"
b$ = "Quick"
c$ = b$ & UCase(Mid$(a$, 7, 6)) & Right$(a$, 12)
(A) Visual BASIC Programming
(B) Quick Basic Programming
(C) QUICK Basic Programming
(D) Quick BASIC Programming
17.在窗体上画一个文本框(其名称为Text1)和一个标签(其名称为Label1),程序运行后,如果在文本框中输入指定的信息,则立即在标签中显示相同的内容。以下可以实现上述操作的事件过程是
(A)
Private Sub Text1_click()
Label1.Caption = Text1.Text
End Sub
(B)
Private Sub Text1_Change()
Label1.Caption = Text1.Text
End Sub
(C)
Private Sub Label1_Change()
Label1.Caption = Text1.Text
End Sub
(D)
Private Sub Label1_Click()
Label1.Caption = Text1.Text
End Sub
18.在窗体上画一个命令按钮和一个标签,其名称分别为Commandl和Labell,然后编写如下事件过程:
Private Sub Command1_Click()
Counter = 0
For i = 1 To 4
For j = 6 To 1 Step -2
Counter = Counter + 1
Next j
Next i
Label1.Caption = Str(Counter)
End Sub
程序运行后,.单击命令按钮,标签中显示的内容是
(A) 11
(B) 12
(C) 16
(D) 20
19.在窗体上画一个名称为Text1的文本框和一个名称为Commandl的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Dim I As Integer, n As Integer
For i = 0 To 50
i = i + 3
n = n + 1
If i > 10 Then Exit For
Next
Text1.Text = Str(n)
End Sub
程序运行后,单击命令按钮,在文本框中显示的值是
(A)5
(B)4
(C)3
(D)2
20.在窗体上画一个命令按钮和两个标签,其名称分别为Commandl、Labell和Label2,然后编写如下事件过程:
Private Sub Command1_Click()
a = 0
For i = 1 To 10
a = a + 1
b = 0
For j = 1 To 10
a = a + 1
b = b + 2
Next j
Next i
Label1.Caption=Str(a)
Label2.Caption=Str(b)
End Sub
程序运行后,单击命令按钮,在标签Label1和Label2中显示的内容分别是,
(A)10和20
(B) 20和110
(C) 200和110
(D)110和20
22.在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:
Private Sub Command1_Click()
Dim i As Integer, j As Integer
Dim a(10, 10) As Integer
For i = 1 To 3
For j = 1 To 3
a(i,j) =(i - 1) * 3 + j
Print a(i,j)
Next j
Next i
End Sub
程序运行后,单击命令按钮,窗体上显示的是
(A) 1 2 3 (B) 2 3 4 (C) 1 4 7 (D) 1 2 3
2 4 6 3 4 5 2 5 8 4 5 6
3 6 9 4 5 6 3 6 9 7 8 9
23.在窗体上画一个命令按钮,名称为Command1,然后编写如下代码:
Option Base 0
Private Sub Command1_C1ick()
Dim A(4) As Integer, B(4) As Integer
For k = 0 To 2
A(k + 1) = InputBox("请输入一个整数")
B(3 - k) = A(k + 1)
Next k
Print B(k)
End Sub
程序运行后,单击命令按钮,在输入对话框中分别输入2、4、6,输出结果为
(A)0
(B)2
(C)3
(D)4
24.有以下程序:
Option Base 1
Dim arr() As Integer
Private Sub Form_Click()
Dim i As Integer,j As Integer
ReDim arr(3,2)
For i =1 To 3
For j = 1 To 2
arr(i,j) = i * 2 + j
Next j
Next i
ReDim Preserve arr(3,4)
For j = 3 To 4
arr(3,j) = j + 9
Next j
Print arr(3,2); arr(3,4)
End Sub
程序运行后,单击窗体,输出结果为
(A) 8 13
(B) 0 13
(C) 7 12
(D) 0 0
25.以下叙述中正确的是
(A) 一个Sub过程至少要有一个Exit Sub语句
(B) 一个Sub过程必须有一个End Sub语句
(C) 可以在Sub过程中定义一个Function过程,但不能定义Sub过程
(D) 调用一个Function过程可以获得多个返回值
26.有以下程序
Sub subP(b() As Integer)
For i = 1 To 4
b(i) = 2 * i
Next i
End Sub
Private Sub Command1_Click()
Dim a(1 To 4) As Integer
a(1) = 5 : a(2) = 6 : a(3) = 7 : a(4) = 8
subP a()
For i=1 To 4
Print a(i)
Next i
End Sub
运行上面的程序,单击命令按钮,输出结果为
(A) 2 (B) 5 (C) 10 (D) 出错
4 6 12
6 7 14
8 8 16
27.设有如下通用过程
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
在窗体上画—个名称为Text1的文本框和一个名称为Command1的命令按钮。然后编写如下的事件过程:
Private Sub Command1_Click()
Dim S1 As String
S1 ="abcdef"
Text1.Text = UCase(Fun(S1))
End Sub
程序运行后,单击命令按钮,则Text1中显示的是
(A)ABCDEF
(B)abcdef
(C)AFBECD
(D)DEFABC
28.在窗体上画一个名称为TxtA的文本框,然后编写如下的事件过程:
Private Sub TxtA_KeyPress(KeyAscii As Integer)
EndSub
假定焦点已经位于文本框中,则能够触发KeyPress事件的操作是
(A)单击鼠标
(B)双击文本框
(C)鼠标滑过文本框
(D)按下键盘上的某个键
30.以下说法中正确的是
(A)任何时候都可以通过执行“工具”菜单中的“菜单编辑器”命令打开菜单编辑器
(B)只有当某个窗体为活动窗体时,才能打开菜单编辑器
(C)任何时候都可以通过单击标准工具栏上的“菜单编辑器”按钮打开菜单编辑器
(D)只有当代码窗口为活动窗口时,才能打开菜单编辑器
32.以下叙述中错误的是
(A)一个工程中可以包含多个窗体文件
(B)在一个窗体文件中用Public定义的通用过程不能被其他窗体调用
(C)窗体和标准模块需要分别保存为不同类型的磁盘文件
(D)用Dim定义的窗体层变量只能在该窗体中使用
33.以下叙述中错误的是
(A)语句“Dim a,b As Integer”声明了两个整型变量
(B)不能在标准模块中定义Static型变量
(C)窗体层变量必须先声明,后使用
(D)在事件过程或通用过程内定义的变量是局部变量
二、填空题
请将每空的正确答案写在答题卡【11】~【15】序号的横线上,答在试卷上不得分。
6.描述“X是小于100的非负整数”的Visual Basic表达式是 【6】 。x>=0 And x<100
7.在窗体上有一个名称为Command1的命令按钮和一个名称为Text1的文本框。程序运行后,Command1为禁用(灰色),此时如果在文本框中输入字符,则命令按钮 Command1变为可用。请填空。
Private Sub Form_Load()
Command1.Enabled = False
EndSub
Private Sub Text1 【7】 () Change 或 KeyPress
Command1.Enabled = True
End Sub
8.在窗体上画一个名称为“Command1”的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Dim a As String
a = "123456789"
For i = 1 To 5
Print Space(6-i);Mid$(a, 【8】 ,2 * i-1) 6-i
Next i
End Sub
程序运行后,单击命令按钮,窗体上的输出结果是
5
456
34567
2345678
123456789
请填空。
9.以下程序的功能是:将一维数组A中的100个元素分别赋给二维数组B的每个元素并打印出来,要求把A(1)到A(10)依次赋给B(1,1)到B(1,10),把A(11)到A(20)依次赋给B(2,1)到B(2,10),……,把A(91)到A(100)依次赋给B(10,1)到B(10,10)。请填空。
Option Base 1
Private Sub Form_Click()
Dim i As Integer,j As Integer
Dim A(1 To 100) As Integer
Dim B(1 To 10,1 To 10) As Integer
For i = 1 To 100
A(i) = Int(Rnd * 100)
Next i
For i = 1 To 【9】 10
For j = 1 To 【10】 10
B(i,j) = 【11】 A((i-1)*10+j)
Print B(i,j);
Next j
Nexti
EndSub
第二部分(0504)
一、选择题
下列各题(A)、(B)、(C)、(D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
11.在窗体(名称为Form1)上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写一个事件过程。程序运行以后,如果在文本框中输入一个字符,则把命令按钮的标题设置为“计算机等级考试”。以下能实现上述操作的事件过程是:
(A)
Private Sub Text1_Change()
Command1.Caption = "计算机等级考试"
End Sub
(B)
Private Sub Command1_Click()
Caption = "计算机等级考试"
End Sub
(C)
Private Sub Form1_Click()
Text1.Caption = "计算机等级考试"
End Sub
(D)
Private Sub Command1_Click()
Text1.Text="计算机等级考试"
End Sub
12.设a = 5,b = 4,c = 3,d = 2,表达式3 > 2 * b Or a = c And b<>c Or c>d的值是
(A) 1 (B) True (C) False (D) 2
13.设a = "MicrosoftVisualBasic",则以下使变量b的值为 VisualBasic的语句是
(A)b=Left(a,10) (B)b=Mid(a,10) (C)b=Right(a,10) (D)b=Mid(a,11,10)
14.假定有如下的窗体事件过程:
Private Sub Form_Click()
a$ = "Microsoft Visual Basic"
b$ = Right(a$, 5)
c$ = Mid(a$, 1, 9)
MsgBox a$, 34, b$, c$, 5
End Sub
程序运行后单击窗体,则在弹出的信息框中的标题栏中显示的信息是:
(A)Microsoft Visual (B)Microsoft (C)Basic (D)5
15.设a = "a",b = "b",c = "c",d = "d",执行语句x = IIf ((ad), "A", "B") 后,x的值为:
(A) "a" (B) "b" (C) "B" (D) "A"
16.为了使命令按钮(名称为Command1)右移200,应使用的语句是
(A)Command1.Move -200 (B) Command1.Move 200
(C)Command1.Left= Command1.Left+200(D)Command1.Left = Command1.Left-200
17.在窗体上画一个文本框,然后编写如下事件过程:
Private Sub Form_Click()
x = InputBox("请输入一个整数")
Print x + Text1.Text
End Sub
程序运行时,在文本框中输入456,然后单击窗体,在输入对话框中输入123,单击“确定”按钮后,在窗体上显示的内容是:
(A)123 (B)456 (C)579 (D)123456
18.在窗体上画一个文本框和一个计时器控件,名称分别为Text1和Timer1,在属性窗口中把计时器的Interval属性设置为1000,Enabled属性设置为False,程序运行后,如果单击命令按钮,则每隔一秒钟在文本框中显示一次当前的时间。以下是实现上述操作的程序:
Private Sub Command1_Click()
Timer1._________
End Sub
Private Sub Timer1_Timer()
Text1.Text = Time
End Sub
在______处应填入的内容是
(A)Enabled = True (B)Enabled = False
(C)Visible = True (D)Visible = False
19.假定在图片框Picture1中装入了一个图形,为了清除该图形(不删除图片框),应采用的正确方法是:
(A)选择图片框,然后按Del键
(B)执行语句Picture1.Picture = LoadPicture ("" )
(C)执行语句Picture1.Picture = ""
(D)选择图片框,在属性窗口中选择Picture属性,然后按回车键
21.在窗体上画一个命令按钮,名称为Command1,然后编写如下事件过程:
Private Sub Command1_Click()
Dim i As Integer, x As Integer
For i = 1 To 6
If i = 1 Then x = i
If i <= 4 Then
x = x + 1
Else
x = x + 2
End If
Next i
Print x
End Sub
程序运行后,单击命令按钮,其输出结果为
(A)9 (B)6 (C)12 (D)15
22.在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
c = "ABCD"
For n = 1 To 4
Print _________
Next
End Sub
程序运行后,单击命令按钮,要求在窗体上显示如下内容:
D
CD
BCD
ABCD
则在________处应填入的内容为
(A)Left(c, n) (B)Right(c, n) (C)Mid(c, n, 1) (D)Mid(c, n, n)
23.执行以下程序段
Dim x As Integer, i As Integer
x=0
For i = 20 To 1 Step -2
x = x + i \ 5
Next i
后,x的值为
(A)16 (B)17 (C)18 (D)19
24.在Visual Basic工程中,可以作为启动对象的程序是
(A)任何窗体或标准模块
(B)任何窗体或过程
(C)Sub Main过程或其他任何模块
(D)Sub Main过程或任何窗体
25.假定建立了一个名为Command1的命令按钮数组,则以下说法中错误的是
(A)数组中每个命令按钮的名称(名称属性)均为Command1
(B)数组中每个命令按钮的标题(Caption属性)都一样
(C)数组中所有命令按钮可以使用同一个时间过程
(D)用名称Command1(下标)可以访问数组中的每个命令按钮
26.把窗体的KeyPreview属性设置为True,然后编写如下事件过程:
Private Sub Form_KeyPress(KeyAscii As Integer)
Dim ch As String
ch = Chr(KeyAscii)
KeyAscii = Asc(UCase(ch))
Print Chr(KeyAscii + 2)
End Sub
程序运行后,按键盘上的A键,则在窗体上显示的内容是
(A)A (B)B (C)C (D)D
27.在窗体上画一个命令按钮和一个文本框,名称分别为Command1和Text1,然后编写如下程序:
Private Sub Command1_Click()
a = InputBox("请输入日期(1-31) ")
t = "旅游景点: "_
& IIf(a > 0 And a <= 10, "长城", "") _
& IIf(a > 10 And a <= 20, "故宫", "") _
& IIf(a > 20 And a <= 30, "颐和园", "")
Text1.Text = t
End Sub
程序运行后,如果从键盘输入16,则在文本框中显示的内容是:
(A)旅游景点:长城故宫
(B)旅游景点:长城颐和园
(C)旅游景点:颐和园
(D)旅游景点:故宫
28.在窗体上画一个名称为Label1的标签,然后编写如下事件过程:
Private Sub Form_Click()
Dim arr(10, 10) As Integer
Dim i As Integer, j As Integer
For i = 2 To 4
For j = 2 To 4
arr(i, j) = i * j
Next j
Next i
Label1.Caption = Str(arr(2, 2) + arr(3, 3))
End Sub
程序运行后,单击窗体,在标签中显示的内容是
(A)12
(B)13
(C)14
(D)15
29.在窗体上画一个名称为Comamnd1的命令按钮,然后编写如下通用过程和命令按钮的事件过程:
Private Function fun(ByVal m As Integer)
If m Mod 2 = 0 Then
fun = 2
Else
fun = 1
End If
End Function
Private Sub Command1_Click()
Dim i As Integer, s As Integer
s = 0
For i = 1 To 5
s = s + fun(i)
Next
Print s
End Sub
程序运行后,单击命令按钮,则窗体上显示的是:
(A)6
(B)7
(C)8
(D)9
30.阅读程序:
Option Base 1
Dim arr() As Integer
Private Sub Form_Click()
Dim i As Integer, j As Integer
ReDim arr(3, 2)
For i = 1 To 3
For j = 1 To 2
arr(i, j) = i * 2 + j
Next j
Next i
ReDim Preserve arr(3, 4)
For j = 3 To 4
arr(3, j) = j + 9
Next j
Print arr(3, 2) + arr(3, 4)
End Sub
程序运行后,单击窗体,输出结果为:
(A)21
(B)13
(C)8
(D)25
31.在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:
Option Base 1
Private Sub Command1_Click()
Dim c As Integer, d As Integer
d = 0
c = 6
x = (2, 4, 6, 8, 10, 12)
For i = 1 To 6
If x(i) > c Then
d = d + x(i)
c = x(i)
Else
d = d - c
End If
Next i
Print d
End Sub
程序运行后,如果单击命令按钮,则在窗体上输出的内容为
(A)10
(B)16
(C)12
(D)20
32.设有如下程序:
Private Sub Command1_Click()
Dim c As Integer, d As Integer
c = 4
d = InputBox("请输入一个整数")
Do While d > 0
If d > c Then
c = c + 1
End If
d = InputBox("请输入一个整数")
Loop
Print c + d
End Sub
程序运行后,单击命令按钮如果在输入对话框中依次输入1、2、3、4、5、6、7、8、9、0,则输出结果是:
(A)12
(B)11
(C)10
(D)9
34.在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:
Dim SW As Boolean
Function func(X As Integer) As Integer
If X < 20 Then
Y = X
Else
Y = 20 + X
End If
func = Y
End Function
Private Sub Command1_Click()
Dim intNum As Integer
intNum = InputBox("")
If SW Then
Print func(intNum)
End If
End Sub
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
SW = False
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
SW = True
End Sub
程序运行后,单击命令按钮,将显示一个输入对话框,如果在对话框中输入25,则程序的执行结果是:
(A)输出0
(B)输出25
(C)输出45
(D)无任何输出
35.设有如下通用过程:
Public Sub fun(a() As Integer, x As Integer)
For i = 1 To 5
x = x + a(i)
Next
End Sub
在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Dim arr(5) As Integer, n As Integer
For i = 1 To 5
arr(i) = i + i
Next
fun arr, n
Text1.Text = Str(n)
End Sub
程序运行后,单击命令按钮,则在文本框中显示的内容是
(A)30
(B)25
(C)20
(D)15
二、填空题
请将每一个空的正确答案写在答题卡 【1】 ~ 【15】 序号的横线上,答在试卷上不得分。注意:以命令关键字填空的必须拼写完整。
6.以下语句的输出结果是: 【6】 12345.68
Print Int(12345.6789 * 100 + 0.5) / 100
7.在窗体上画一个文本框和一个图片框,然后编写如下两个事件过程:
Private Sub Form_Click()
Text1.Text = "VB程序设计"
End Sub
Private Sub Text1_Change()
Picture1.Print "VB Programming"
End Sub
程序运行后,单击窗体,在文本框中显示的内容是 【7】 VB程序设计,而在图片框中显示的内容是【8】 VB Programming
8.阅读下面的程序
Private Sub Form_Click()
Dim Check As Boolean, Counter As Integer
Check = True
Counter = 5
Do
Do While Counter < 20
Counter = Counter + 1
If Counter = 10 Then
Check = False
Exit Do
End If
Loop
Loop Until Check = False
Print Counter
End Sub
程序运行后,单击窗体,输出结果是 【9】 10
9.设有如下程序
Private Sub Form_Click()
Dim a As Integer, s As Integer
n = 8
s = 0
Do
s = s + n
n = n - 1
Loop While n > 0
Print s
End Sub
以上程序的功能是 【10】 计算8+7+6+5+4+3+2+1,程序运行后,单击窗体,输出结果为 【11】 36 。
10.设有如下程序:
Option Base 1
Private Sub Command1_Click()
Dim arr1
Dim Min As Integer, i As Integer
arr1 = (12, 435, 76, -24, 78, 54, 866, 43)
Min = 【12】 arr1(1) 或12
For i = 2 To 8
If arr1(i) < Min Then 【13】 Min=arr1(i)
Next i
Print "最小值是: "; Min
End Sub
以上程序的功能是用函数建立一个含有8个元素的数组,然后查找并输出该数组中的最小值,请填空。
第三部分(0309)
一、选择题
1.以下叙述中错误的是
(A)Visual Basic 是事件驱动型可视化编程工具
(B)Visual Basic应用程序不具有明显的开始和结束语句
(C)Visual Basic工具箱中的所有控件都具有宽度(Width)和高度(Height)属性
(D)Visual Basic中控件的某些属性只能在运行时设置
2.以下叙述中错误的是
(A)在工程资源管理器窗口中只能包含一个工程文件及属于该工程的其他文件
(B)以.BAS为扩展名的文件是标准模块文件
(C)窗体文件包含该窗体及其控件的属性
(D)一个工程中可以含有多个标准模块文件
3.以下叙述中错误的是
(A)双击鼠标可以触发DblClick事件
(B)窗体或控件的事件的名称可以由编程人员确定
(C)移动鼠标时,会触发MouseMove事件
(D)控件的名称可以由编程人员设定
4.以下不属于Visual Basic系统的文件类型是
(A).frm (B).bat (C).vbg (D).vbp (.vbg是工程组文件)
5.以下叙述中错误的是
(A)打开一个工程文件时,系统自动装入与该工程有关的窗体、标准模块等文件
(B)保存Visual Basic程序时,应分别保存窗体文件及工程文件
(C)Visual Basic应用程序只能以解释方式执行
(D)事件可以由用户引发,也可以由系统引发
6.以下能正确定义数据类型TelBook的代码是
(A)Type TelBook (B)Type TelBook
Name As String * 10 Name As String * 10
TelNum As Integer TelNum As Integer
End Type End TelBook
(C)Type TelBook (D)Typedef TelBook
Name String * 10 Name String * 10
TelNum Integer TelNum Integer
End Type TelBook End Type
7.以下声明语句中错误的是
(A)Const var1=123 (B)Dim var2 = 'ABC'(定界符错误)
(C)DefInt a-z (本选项含义请参考VB帮助) (D)Static var3 As Integer
10.设a = 10,b = 5,c = 1,执行语句Print a > b > c后,窗体上显示的是
(A)True (B)False (C)1 (D)出错信息
11.如果要改变窗体的标题,则需要设置的属性是
(A)Caption (B)Name (C)BackColor (D)BorderStyle
13.如果一个工程含有多个窗体及标准模块,则以下叙述中错误的是
(A)如果工程中含有Sub Main过程,则程序一定首先执行该过程
(B)不能把标准模块设置为启动模块
(C)用Hide方法只是隐藏一个窗体,不能从内存中清除该窗体
(D)任何时刻最多只有一个窗体是活动窗体
16.以下关于焦点的叙述中,错误的是
(A)如果文本框的TabStop属性为False,则不能接收从键盘上输入的数据
(B)当文本框失去焦点时,触发LostFocus事件
(C)当文本框的Enabled属性为False时,其Tab顺序不起作用
(D)可以用TabIndex属性改变Tab顺序
17.如果要在菜单中添加一个分隔线,则应将其Caption属性设置为
(A)= (B)* (C)& (D)-
19.在窗体上画一个名称为Command1的命令按钮和两个名称分别为Text1、Text2的文本框,然后编写如下事件过程:
Private Sub Command1_Click()
n = Text1.Text
Select Case n
Case 1 To 20
x = 10
Case 2, 4, 6
x = 20
Case Is < 10
x = 30
Case 10
x = 40
End Select
Text2.Text = x
End Sub
程序运行后,如果在文内容是本框Text1中输入10,然后单击命令按钮,则在Text2中显示的内容是
(A)10 (B)20 (C)30 (D)40
20.设有以下循环结构
Do
循环体
Loop While <条件>
则以下叙述中错误的是
(A)若“条件”是一个为0的常数,则一次也不执行循环体
(B)“条件”可以是关系表达式、逻辑表达式或常数
(C)循环体中可以使用Exit Do语句
(D)如果“条件”总是为True,则不停地执行循环体
21.在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Dim num As Integer
num = 1
Do Until num > 6
Print num;
num = num + 2.4
Loop
End Sub
程序运行后,单击命令按钮,则窗体上显示的内容是
(A)1 3.4 5.8 (B)1 3 5
(C)1 4 7 (D)无数据输出
22.在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Dim a As Integer, s As Integer
a = 8
s = 1
Do
s = s + a
a = a - 1
Loop While a <= 0
Print s, a
End Sub
程序运行后,单击命令按钮,则窗体上显示的内容是
(A) 7 9 (B) 34 0 (C) 9 7 (D)死循环
23.设有如下通用过程:
Public Function f(x As Integer)
Dim y As Integer
x = 20
y = 2
f = x * y
End Function
在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Static x As Integer
x = 10
y = 5
y = f(x)
Print x; y
End Sub
程序运行后,如果单击命令按钮,则在窗体上显示的内容是
(A)10 5 (B)20 5 (C)20 40 (D)10 40
24.设有如下通用过程:
Public Sub Fun(a(), ByVal x As Integer)
For i = 1 To 5
x = x + a(i)
Next
End Sub
在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
Dim arr(5) As Variant
For i = 1 To 5
arr(i) = i
Next
n = 10
Call Fun(arr(), n)
Text1.Text = n
End Sub
程序运行后,单击命令按钮,则在文本框中显示的内容是
(A)10 (B)15 (C)25 (D)24
25.在窗体上画一个名称为Command1的命令按钮,然后编写如下代码:
Option Base 1
Private Sub Command1_Click()
d = 0
c = 10
x = (10, 12, 21, 32, 24)
For i = 1 To 5
If x(i) > c Then
d = d + x(i)
c = x(i)
Else
d = d - c
End If
Next i
Print d
End Sub
程序运行后,如果单击命令按钮,则在窗体上输出的内容为
(A)89 (B)99 (C)23 (D)77
27.在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click()
For n = 1 To 20
If n Mod 3 <> 0 Then m = m + n \ 3
Next n
Print n
End Sub
程序运行后,如果单击命令按钮,则窗体上显示的内容是
(A)15 (B)18 (C)21 (D)24
29.设有如下程序:
Private Sub Command1_Click()
Dim sum As Double, x As Double
sum = 0
n = 0
For i = 1 To 5
x = n / i
n = n + 1
sum = sum + x
Next
End Sub
该程序通过For循环计算一个表达式的值,这个表达式是
(A)1+1/2 + 2/3 + 3/4 + 4/5 (B)1 + 1/2 + 2/3 + 3/4
(C)1/2 + 2/3 + 3/4 + 4/5 (D)1 + 1/2 + 1/3 + 1/4 + 1/5
30.以下有关数组定义的语句序列中,错误的是
(A)Static arr1(3)
arr1(1) = 100
arr1(2) = "Hello"
arr1(3) = 123.45
(B)Dim arr2() As Integer
Dim size As Integer
Private Sub Command2_Click()
size = InputBox("输入:")
ReDim arr2(size)
......
End Sub
(C)Option Base 1
Private Sub Command3_Click()
Dim arr3(3) As Integer
......
End Sub
(D)Dim n As Integer
Private Sub Command4_Click()
Dim arr4(n) As Integer
......
End Sub
二、填空题
1.执行下面的程序段后,i的值为 【1】 5.6 ,s的值为 【2】 5 。
s = 2
For i = 3.2 To 4.9 Step 0.8
s = s + 1
Next i
2.把窗体的KeyPreview属性设置为True,然后编写如下两个事件过程:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Print Chr(KeyCode)
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
Print Chr(KeyAscii)
End Sub
程序运行后,如果直接按键盘上的“A”键(即不按住Shift键),则在窗体上输出的字符分别是 【3】 A和 【4】 a。
3.在窗体上画一个标签(名称为Label1)和一个计时器(名称为Timer1),然后编写如下几个事件过程:
Private Sub Form_Load()
Timer1.Enabled = False
Timer1.Interval = 【5】 1000
End Sub
Private Sub Form_Click()
Timer1.Enabled = 【6】 True或任何非0数值
End Sub
Private Sub Timer1_Timer()
Label1.Caption = 【7】 Time或Time$
End Sub
程序运行后,单击窗体,将在标签中显示当前时间,每隔1秒钟变换一次。请填空。
4.在窗体上画一个文本框、一个标签和一个命令按 钮,其名称分别为Text1、Label1和Command1,然后编写如下两个事件过程:
Private Sub Command1_Click()
S$ = InputBox("请输入一个字符串")
Text1.Text = S$
End Sub
Private Sub Text1_Change()
Label1.Caption = UCase(Mid(Text1.Text, 7))
End Sub
程序运行后,单击命令按钮,将显示一个输入对话框,如果在该对话框中输入字符串"VisualBasic",则在标签中显示的内容是 【8】 BASIC 。
6.设有程序:
Option Base 1
Private Sub Command1_Click()
Dim arr1, Max as Integer
arr1 = (12, 435, 76, 24, 78 , 54, 866, 43)
【12】 Max = arr1(1)
For i = 1 To 8
If arr1(i) > Max Then 【13】 Max=arr1(i)
Next i
Print "最大值是: "; Max
End Sub
以上程序的功能是:用函数建立一个含有8个元素的数组,然后查找并输出该数组中元素的最大值。请填空。
本文来源:https://www.2haoxitong.net/k/doc/2a7e7e54f01dc281e53af0a8.html
文档为doc格式