武汉职业技术学院
《Visual Basic程序设计》试卷一
单项选择题。(共14分,每小题2分)
1.下列哪个符号不能作为VB中的变量名?( )
(A)timefly (B)pass4 (C)min4max (D)R[8]
2.函数Int( 6 * RND )+1的值是在哪个范围内的整数?( )
(A) [0,6] (B) [0,7] (C) [1,6] (D) [1,7]
3.语句Dim x As Integer作用是:将x定义为( )变量。
(A)单精度型 (B)整型 (C) 布尔型 (D)字符型
4. Int(—3.14)的值是:( )
—3 (B) —3.14 (C) —4 (D) 3.14
5.设A=7,B=3,C=4, 则A MOD 3 + B ^ 3 / C \ 5 的值是( )
(A) 2 (B) 3 (C) 4 (D) 5
6.Len(“Friend”)的值是( )
6 (B) 7 (C)8 (D) 9
7. Right ( “banana”, 4 )的值是( )
(A) ba (B) banana (C) nana (D) ban
判断对错。(共 15 分, 每小题1.5分)
(正确的打“√”,错误的打“×”)
1.语句Text1.Caption=”Pretty” 的语法是正确的。 ( )
2.Input语句产生一个具有提示信息并可供用户输入数据
的对话框。 ( )
3.语句Dim i , j As Single 作用是:将 i, j定义为
单精度型变量。 ( )
4.复选框列出可供用户选择的选项,用户根据需要只能选定其中的一项。 ( )
5.如果使用Option Base 2, 则表示缺省的数组下界为2。( )
6.下列程序段的语法是正确的。 ( )
Redim a ( 2 , 4 )
……
Redim preserve a ( 2 , 8)
7. 下列程序段的语法是正确的。 ( )
Select Case num
Case 1, 2: x=0.15
Case 2, 3: x=0.42
End Select
8.图像框(ImageBox)的Stretch(拉伸)属性设为True
时,装入的图形可根据图像框的大小自动压缩或扩大。( )
9.下列程序段的语法是正确的。 ( )
If x >0
Then x=x + 2
Else x=x ?2
End If
10.鼠标左键单击”工具”菜单中的”菜单编辑器”菜单项就可打开”菜单编辑器”窗口。 ( )
将下列命题用VB布尔表达式表示。(共 4分, 每小题2分)
A不等于C, 并且B大于C。
密码为“happy”或输入次数大于等于3次。其中密码用变量password表示,输入次数用变量count表示。
写出程序(段)的输出结果。(共 10 分, 每小题5分)
1.Private Sub Command1_Click( )
Dim S as integer, N as integer
S=0
m=1
Do While m<=5
S=S+m
m=m+1
Loop
Label1.Caption=Str(S)
End Sub
运行程序,单击Command1按钮,在下面的Label1中显示
Label1
Sub tryout( x As Integer, ByVal y As Integer)
x=x+100
y=y*6
Print “x=” ; x , ”y=” ; y
End Sub
Sub Form_Click( )
Dim a As Integer, b As Integer
a=10: b=20
tryout a , b
Print “a=” ; a , ”b=” ; b
End Sub
运行程序,单击窗体Form1,在窗体上显示:
程序填空。(共 24 分, 每空2分)
1.编写一个计算矩形面积的Sub过程,然后调用该过程计算矩形面积。
Private Sub Form_Click( )
Dim A As Single, B As (1)
A = Val(InputBox("What is the length? "))
B =Val( InputBox("What is the width? "))
Call Recarea ( (2) , B )
End Sub
Sub Recarea(Rlen As Single, Rwid As Single)
Dim Area As Single
Area = (3)
MsgBox "Total Area is " & (4) ‘输出矩形面积
End Sub
(1) (2)
(3) (4)
2.求1到8的阶乘之和。
Private Sub Command1_Click()
Dim i As Integer, j As Integer, n As Integer
Dim sum1 As Long, sum2 As Long
n = (5)
sum1 = (6)
For i = 1 To n
sum2 = (7)
For j = 1 To i
sum2 = (8)
Next j
sum1 = (9)
Next i
Label1.Caption = Label1.Caption + Str(sum1)
End Sub
(5) (6)
(7) (8)
(9)
3. 在下列事件过程中,如果选中复选框1,则文本变成斜体,如果选中复选框2,则Text1的背景色变成蓝色。
Private Sub Check1_Click( )
If Check1.Value=1 Then
Text1. FontItalic= (10)
Else
Text1.FontItalic=False
End If
End Sub
Private Sub Check2_Click( )
If Check2.Value=1 Then
Text1. (11) =vbBlue
Else
Text1. (11) =vbBlack
End If
End Sub
如果选中单选框1,则文本字体为宋体,如果选中单选框2,则文本字体为黑体。其代码如下:
Private Sub Option1_Click( )
Text1.FontName= (12)
End Sub
Private Sub Option2_Click( )
Text1.FontName=”黑体”
End Sub
(10) (11) (12)
编程题。( 6题中选3题做, 共33分)
(如果地方不够,可以写在试卷背面,请注明题号)
1. 设计一个简单的加减计算器,输入两个数,然后选择所需的运算符“+”或“?“,其结果显示在一个文本框中。(11分)
2利用滚动条去控制窗体的背景色随滚动条的值的改变而改变。(11分)
3.利用标签和计时器设计电子钟。 (11分)
4.输入某班45名同学的数学成绩,并计算该班数学成绩的总分,平均分(11分)
5. 利用For循环,在列表框List1中显示1—200之间能被4整除的自然数。(11分)
6. 在实际应用中,驱动器列表框、目录列表框和文件列表框往往需要同步操作,请编写程序使三者同步。(11分)
《Visual Basic程序设计》试卷一答案
单项选择题。
1.D 2.C 3.B 4.C 5.A 6.B 7.C
判断对错。
1. X 2. √ 3.X 4.X 5. √ 6. √ 7. X 8. √9.X10. √
将下列命题用VB布尔表达式表示。
1.A<>C And B>C 2.password=”happy” or count>=3
四、写出程序(段)的输出结果。
1. 15
2.
x= 110 y= 120
a= 110 b= 20
程序填空。
(1) Single (2) A (3) Rlen*Rwid (4) Area
(5) 8 (6) 0 (7) 1 (8) sum2*j
(9)sum1+sum2 (10)True (11) BackColor (12)”宋体”
编程题。
即:书上30页例1.7
Private Sub lblAdd_Click( )
Dim s1, s2, add As Single
s1 = Val(Text1.Text)
s2 = Val(Text2.Text)
add = s1 + s2
txtResult.Text = Str(add)
End Sub
Private Sub lblRemove_Click( )
Dim s1, s2, s As Single
s1 = Val(Text1.Text)
s2 = Val(Text2.Text)
s = s1 - s2
txtResult.Text = Str(s)
End Sub
即:书上112页4.6题
Private Sub HScroll1_Change( )
Label2.Caption = HScroll1.Value
Form1.BackColor = RGB(HScroll1.Value, HScroll2.Value, HScroll3.Value)
End Sub
Private Sub HScroll2_Change( )
Label4.Caption = HScroll2.Value
Form1.BackColor = RGB(HScroll1.Value, HScroll2.Value, HScroll3.Value)
End Sub
Private Sub HScroll3_Change( )
Label6.Caption = HScroll3.Value
Form1.BackColor = RGB(HScroll1.Value, HScroll2.Value, HScroll3.Value)
End Sub
即:书上106页例4.9
Private Sub Timer1_Timer( )
Label2.Caption = Now()
End Sub
即:书上122页例5.5
Private Sub Command1_Click( )
Dim score(1 To 5) As Single
Dim i As Integer, sum As Single
Dim aver As Single, str1 As String
sum = 0
For i = 1 To 5
str1 = "请输入第" + Str(i) + "门课的成绩:"
score(i) = Val(InputBox(str1, "输入成绩"))
sum = sum + score(i)
Next i
aver = sum / 5
Label1.Caption = Label1.Caption + Str(sum)
Label2.Caption = Label2.Caption + Str(aver)
End Sub
Private Sub Command1_Click( )
Dim i As Integer
List1.Clear
For i = 40 To 300
If i Mod 7 = 0 Then List1.AddItem i
Next i
End Sub
即:书上211页例9.5 的主要部分
Private Sub Dir1_Change( )
File1.Path = Dir1.Path '设置文件列表框路径
End Sub
Private Sub Drive1_Change( )
Dir1.Path = Drive1.Drive
'使目录列表框中的路径与驱动器列表同步变化
End Sub