资源描述
练习题
习题一
一、判定题
1.Visual Basic是以结构化Basic语言为基础、以事件驱动作为运行机制可视化程序设计语言。
2.面向对象程序设计是一个以对象为基础,由事件驱动对象编程技术。
3.事件是由Visual Basic预先定义对象能够识别动作。
4.新建工程时系统会自动将窗体标题设置为Form1。
5.控件属性值不能够在程序运行时动态地修改。
6.决定对象是否可见属性为Visible属性,决定对象可用性属性是Enabled属性。
7.保留Visual Basic文件时,若一个工程包含多个窗体或模块,则系统先保留工程文件,再分别保留窗体或模块文件。
8.单击“开启”菜单项将窗体装入内存时,一定触发窗体Load事件。
9.“事件过程”是用来完成事件发生后所要实施程序代码。
10.在打开某窗体时,初始化该窗体中各控件,应选择Load事件。
二、选择题
1.工程文件扩展名为 。
A、.frx B、.bas C、.vbp D、.frm
2.下列不属于对象基础特征是 。
A、属性 B、方法 C、事件 D、函数
3.在设计模式双击窗体将显示窗口是
A、工程窗口 B、工具箱 C、代码窗口 D、属性窗口
4.VB中运行程序快捷键是
A、F2 B、F5 C、Alt+F3 D、F8
5.改变控件在窗体中上下位置应修改该控件 属性。
A、Top B、Left C、Width D、Right
6.窗体模块文件扩展名是
A、.exe B、.bas C、.frx D、frm
7.设置窗体字体用 属性。
A、FontName B、FontSize C、FontBold D、FontItalic
8.设置窗体字号用 属性。
A、FontName B、FontSize C、FontBold D、FontItalic
9.下列选项中不属于事件是 。
A、Dblclick B、Load C、Show D、KeyUp
10.VB编制程序保留在磁盘上,最少会产生何种文件 。
A、.doc和.txt B、.com和.exe. C、.bat和.frm D、.vbp和.frm
三、程序设计题
1.新建一个工程,单击窗体时,在窗体上显示“欢迎使用Visual Basic程序”。生成可实施文件,保留到D盘根目录下。
2.建立一个工程,界面图1-28所表示。它由一个窗体、两个文本框和两个命令按钮组成。单击“拷贝”按钮,能够将第一个文本框中显示内容复制到第二个文本框中;单击“退出”按钮退出应用程序。
图1-28题2界面 图1-29 题3界面
3.在窗体上添加一个标签和两个命令按钮,并把两个命令按钮标题分别设置为“隐藏标签”和“显示标签”。当单击第一个命令按钮时,标签消失;而当单击第二个命令按钮时,标签重新出现,而且标签中显示“VB程序设计”。界面图1-29所表示。
习题二
一、 判定题
1. 用DIM定义数值变量时,该数值变量自动赋初值为0。
2. 整型数值常量有整数,长整数两种。
3在逻辑运算符Not、Or、And中,运算优先级由高到低依次为Not、Or、And。
4关系表示式是用来比较两个数据大小关系,结果为逻辑值。
5一个表示式中若有多个运算,同一层括号内,计算机按逻辑运算→关系运算→算术运算次序对表示式求值。
6赋值语句功效是计算机表示式并转换为相同类型数据后为变量或控件属性赋值。
二、单选题
1. 以下正当Visual Basic标识符是_______。
A、ForLoop B、Const C、9abc D、A#x
2. 下列可作为Visual Basic变量名是_________。
A、a#a B、4a C、?xy D、Consta
3. 表示式6*7/8 Mod 9值是_______。
A、4 B、5 C、6 D、7
4. 将数学表示式cos2(a+b)+5e2写成Visual Basic表示式,其正确形式是_______。
A、cos(a+b)^2+5*Exp(2) B、cos^2(a+b)+5*Exp(2)
C、cos(a+b)^2+5*Ln(2) D、cos^2(a+b)+5*Ln(2)
5. 数学关系3≤x<10表示成正确VB表示式为________。
A、3<=x<10 B、3<=x and x<10
C、x>3 or x<10 D、3<=x and <10
6. 设x=4,y=8,z=7,表示式x<y and (not y>z) or z<x值是______。
A、1 B、-1 C、True D、False
7. 已知变量a、b、c中c最小,下列判别a、b、c能否组成三角形逻辑表示式为_________。
A、a>=b and b>=c and c>0 B、a+c>b and b+c>a and c>0
C、(a+b>=c or a-b<=c) and c>0 D、a+b>c and a-b<c and c>0
8. 下面进行算术运算符号是_______。
A、Imp B、Mod C、Not D、Like
9. 能够同时删除字符串前导和尾部空白函数是_______。
A、Ltrim B、Rtrim C、Trim D、Mid
10. Rnd函数不可能为下列_______值。
A、0 B、1 C、0.1234 D、0.0005
11. Int(198.555*100+0.5)/100值是_______。
A、198 B、199.6 C、198.56 D、200
12. 假如x是一个正实数,对x第3位小数四舍五入表示式是______。
A、0.01*Int(x+0.005) B、0.01*Int(100*(x+0.005))
C.、0.01*Int(100*(x+0.005)) D.、0.01*Int(x+0.05)
13. 实施语句s=len(Mid(“Visual Basic”,1,6))后,s值为______。
A、Visual B、Basic C、6 D、11
14. 描述x、y中有一个小于z逻辑表示式是_______。
A.x<z and y<z B.x<z or y<z C.x<z not y<z D.x<y<z
15. Int(Rnd*100)表示是______范围内数。
A、[0,100] B、[1,99] C、[0,99] D、[1,100]
16. 输入对话框inputbox返回值类型是_________。
A、字符串 B、整数 C、浮点数 D、长整数
17. 在一行内写多个语句时,每个语句之间要用_____ 符号分隔。
A、, B、; C、: D、、
18. 一个语句要在下一行中继续书写,能够用______符号作为续行符。
A、+ B、 - C、_ D、…
19. 下列申明语句中错误是_________。
A、Const var1=123 B、Dim var2=’abc’
C、dim a,b as string D、dim var3 as integer
20. Print Not 10>15 And 8<5+2输出结果为_____。
A、8 B、7 C、true D、false
三、程序设计题
1.编写窗体单击事件代码,求一任意三角形面积,三角形三条边a、b、c经过Inputbox函数输入,计算结果存入S变量中,并以消息框形式输出。
提醒:任意三角形面积公式
2.编写一段代码,求给定一个圆周长和面积。要求:
(1)圆半径r利用Inputbox函数从键盘任意输入(r>0)。
(2)圆周率定义为符号常量。
(3)利用赋值语句将求出周长和面积赋给变量L和S。
(4)用Print方法输出具体结果。
习题三
一、选择题
1.实施以下语句后结果为 。
Dim x As Integer
If x Then Print x Else Print x-1
A、1 B、0 C、-1 D、不确定
2.下列相关Select Case测试表示式叙述中,错误是 。
A、只能是变量名 B、能够是整型 C、能够是字符型 D、能够是浮点类型
3.下列相关Select Case叙述中,错误是 。
A、Case 10 To 100 表示判定Is是否介于10和100之间
B、Case "abc","ABC" 表示判定Is是否和"abc"、"ABC"两个字符串中一个相同
C、Case "X" 表示判定Is是否为大写字母X
D、Case -7,0,100 表示判定Is是否等于字符串"-7,0,100"
4.由“For i=1 To 16 Step 3”决定循环结构被实施 次。
A、4 B、5 C、6 D、7
5.若i初值为8,则下列循环语句循环次数为 次。
Do While i<=17
i=i+2
Loop
A、3次 B、4次 C、5次 D、6次
6.由“For i=1 To 9 Step -3”决定循环结构被实施 次。
A、4 B、5 C、6 D、0
二、程序阅读题(写出下列程序运行结果)
程序1. 请写出单击窗体后,窗体上显示结果。
Private Sub Form_Click()
Dim x As Integer, y As Integer
x = 5
y = -20
If Not x > 0 Then x = y - 3 Else y = x + 3
Print x - y; y - x
End Sub
程序2. 请写出单击窗体后,窗体上显示结果。
Private Sub Form_Click()
Dim a As String, b As String
a = "abcd"
b = "cdef"
e = Right(a, 3)
f = Mid(b, 2, 3)
If e < f Then Print e + f Else Print f + e
End Sub
程序3. 请写出单击窗体后,窗体上显示结果。
Private Sub Form_Click()
Dim i As Integer, j As Integer
Dim n As Integer
n = 0
For i = 1 To 3
For j = 5 To 1 Step -1
n = n + 1
Next j, i
Print n; j; i
End Sub
程序4. 请写出单击窗体后,窗体上显示结果。
Private Sub Form_Click( )
Dim i As Integer
Static Sum As Integer
For i=1 To 10
Sum= Sum+i
Next i
Print Sum
End Sub
程序5. 请写出单击命令按钮后,窗体上显示结果。
Private Sub Command1_Click()
Dim s As Integer, i As Integer
s = 1
i = 1
Do While i <= 4
s = s * i
i = i + 1
Loop
Print "s="; s
End Sub
程序6. 请写出单击命令按钮后,窗体上显示结果。
Private Sub Command1_Click()
Dim i As Integer
Do Until i >= 3
Print Tab(4 * i + 1); "A"
i = i + 1
Loop
End Sub
三、程序填空题
1.【程序说明】下面是一段计算数学表示式 程序。
Private Sub Form_Click()
Dim n As Integer, p As Integer, s As Sigle, q As Integer, i As Integer
n = InputBox("请输入N值:")
s = 0:p = -1:q = 1
For i = 1 To n
p = -p: q = (1)
s = (2)
(3)
Print s
End Sub
2.【程序说明】下列程序用于计算1+(1+3)+(1+3+5)+…+(1+3+5+…+39)。
Private Sub Form_Click()
Dim t As Integer, m As Integer
Dim sum As Integer
t = 0
m = 1
sum = 0
Do
t = (1)
sum = sum + t
(2)
Loop While (3)
Print "sum="; sum
End Sub
3.【程序说明】下列程序在文本框Text1中输入任一字符串,并按相反次序显示在文本框Text2中。
Private Sub Command1_Click()
Dim n As String, c As String, d As String
n = Text1.Text
m = (1)
For i = m To 1 Step -1
c = Mid(n, i, 1)
d = (2)
Next i
(3)
End Sub
四、程序设计题
1.用InputBox函数输入3个任意整数,按从大到小次序输出。
2.编程,输入x值,按下式计算并输出y值。
3.计算下式和,变量x和n数值用输入对话框输入。
4.用近似公式求自然对数底数e值,直到前后两项之差小于10-4为止。
习题四
一、选择题
1.窗体通用部分语句“Option Base 1”,决定本窗体中数组下标界 。
A、下界必需为1 B、缺省下界为1 C、下界必需为0 D、缺省下界为0
2.用Dim c(2 to 5) As Integer 语句定义数组占用 个字节内存空间。
A、4 B、8 C、6 D、10
3.以下 是VB正当数组元素。
A、x9 B、x[9] C、x(9) D、x{9}
4.设有数组申明语句:Dim a(2,3 to 4) As Integer
以上语句所定义数组a为 维数组,共有 个元素,第一维下标从 到 ,第二维下标从 到 。
A、0 B、1 C、2 D、3 E、4 F、5 G、6 H、9
二、程序阅读题(写出下列程序运行结果)
程序1. 在窗体中添加一个命令按钮,名称为Command1,然后编写以下程序:
Private Sub Command1_Click()
Dim a(5) As Integer,b(5) As Integer
For j =1 to 4
a(j)=3*j
b(j)=a(j)*3
Next j
Text1.text=b(j\2)
End Sub
程序运行后,单击命令按钮,写出程序运行结果。
程序2. 在窗体中添加一个命令按钮(其Name属性为Command1),然后编写以下代码:
Private Sub Command1_Click()
Dim a(10) As Integer
Dim p(3) As Integer
k = 1
For i = 1 To 10
a(i) = i
Next i
For i = 1 To 3
p(i) = a(i * 2)
Next i
For i = 1 To 3
k = k + p(i) * 2
Next i
Print k
End Sub
程序运行后,单击命令按钮,写出程序运行结果。
程序3. 请写出单击窗体后,窗体上显示结果。
Private Sub Form_Click()
Dim a(5, 5) As Byte, i AsByte, j As Byte
For i = 1 To 5 : For j = 1 To 5
a(i, j) = i * j
Next j, i
For i = 1 To 5 : Print a(i, i); : Next i
End Sub
程序4. 请写出单击窗体后,窗体上显示结果。
Private Sub Form_Click()
Dim a(1 To 2,1 To 3) As Integer, i As Integer, j As Integer
For i = 1 To 2
For j = 1 To 3
a(i,j) = i + j: Print Tab(j * 5 + 2); a(i,j),
Next j
Print
Next i
End Sub
三、程序填空题
1.【程序说明】以下程序产生30个两位随机整数、并按从小到大次序存入数组a中,再将其中奇数按从小到大次序在窗体中用紧凑格式输出。
Private Sub Form_Click()
Dim a(30) As byte, i as Byte, j As Byte, m As Byte
For i = 1 To 30: a(i) = ⑴ : Next i
For i = 1 To 29
For j = ⑵
If a(i) > a(j) Then
m = a(i): ⑶ :a(j) = m
End If
Next j,i
For i = 1 To 30
If ⑷ Then Print a(i);
Next i
End Sub
2.【程序说明】以下程序产生20个两位随机整数存于数组之中,打印数组中大于50数,并求出这些数和。
Private Sub Command1_Click()
Dim arr(1 To 20) As Integer
Dim i As Integer, sum As Integer
For i = 1 To 20
arr(i) = ⑴
Next i
sum = 0
For i = 1 To 20
If ⑵ Then
Print arr(i);
sum = ⑶
End If
Next i
Print Tab(2); "sum="; sum
End Sub
3.【程序说明】下列程序用来在窗体上输出图4-2所表示大小可变正方形数据。
Dim a() As Integer
Private Sub Form_Click()
Dim n As Integer, i As Integer
图4-2 n为7时输出图形
Dim j As Integer, k As Integer
n = Val(InputBox("请输入数据:"))
⑴
For i = 1 To ⑵
For j = i To n - i + 1
For k = i To n - i + 1
⑶
Next k, j, i
For i = 1 To n
For j = 1 To n
Print Tab(j * 3); a(i, j);
Next j
⑷
Next i
End Sub
四、程序设计题
1. 设有a,b两矩阵,编程完成两个矩阵相乘,结果存入c矩阵中。
2. 编程产生10个[20,40]之间随机整数存于一维数组a中,将a数组中元素依次向后移动一个位置,最终一个元素移动到第一个元素位置上。
3.用二分法对已排好序(升序)数据进行检索。
说明:二分查找法是对一批有序数,取其中间元素,假如该元素是要找数(key),输出该数位置,不然,假如该元素大于key,则查找数列范围缩小到该元素前一个元素;假如该元素小于key,则查找数列范围缩小为该元素后一个元素到数列尾。反复上述方法,直到查找数列范围缩小到0个元素。
习题五
一、选择题
1.在过程调用中,参数传输能够分为 和 两种方法。
A、按值传输 B、按地址传输 C、按参数传输 D、按位置传输
2.在参数传输过程中,使用关键字 来修饰参数,能够使之按值传输。
A、ByVal B、ByRef C、Value D、Reference
3.在窗体模块通用申明段中申明变量时,不能使用 关键字。
A、Dim B、Public C、Private D、Static
4.要想在过程调用后返回两个结果,下面过程定义语句正当是 。
A、Sub p(Byval n,Byval m) B、Sub p(n,byval m)
C、Sub p(n,m) D、Sub p(Byval n,m)
5.Sub过程和Function过程最根本区分是 。
A、Sub过程能够使用Call 语句或直接使用过程名调用,而Function过程不能够
B、Function过程能够有参数,Sub过程不能够
C、两种过程参数传输方法不一样
D、Sub过程过程名不能返回值,而Function过程能经过过程名返回值
二、程序阅读题(写出下列程序运行结果)
程序1. 请写出三次单击命令按钮后,窗体上显示结果。
Private Sub p()
Static s As Integer
Dim i As Integer
For i = 1 To 10 Step 2
s = s + i
Next i
Print s;
End Sub
Private Sub Command1_Click()
Call p
End Sub
程序2. 请写出单击命令按钮后,窗体上显示结果。
Private Sub s(x As Single, y As Single)
Dim m As Single
m = x
x = m / y
y = t Mod y
End Sub
Private Sub Command1_Click()
Dim a As Single, b As Single
a = 8
b = 5
Call s(a, b)
Print a, b
End Sub
三、程序填空题
1.【程序说明】假如两个质数差为2,就称这两个质数为质数对。下列程序用于输出100以内质数对。
Private Function p(m As Integer) As Boolean
Dim i As Integer
(1)
For i = 2 To Sqr(m)
If (2) Then p = False: Exit For
Next i
End Function
Private Sub Command1_Click()
Dim i As Integer
Dim p1 As Boolean, p2 As Boolean
p1 = p(3)
For i = 5 To 99 Step 2
p2 = p(i)
If p1 And p2 Then Print (3)
p1 = p2
Next i
End Sub
2.【程序说明】下列过程用选择法对double类型数组按值从小到大排序。
Private Sub Sort( (1) )
Dim i As Integer, j As Integer, k As Integer, t As Double
For i = 1 To (2)
k=i
For j = i + 1 To n
If (3) Then k = j
Next j
t=a(i): a(i)=a(k): a(k)=t
Next i
End Sub
3.【程序说明】下列程序用于将一维数组反序排放。
Private Sub swap(b() As Integer, n As Integer)
Dim m As Integer, i As Integer
For i = 1 To (1)
m = b(i)
b(i) = (2)
b(n - i + 1) = m
Next i
End Sub
Private Sub Command1_Click()
Dim a(1 To 10) As Integer
Dim i As Integer
For i = 1 To 10
a(i) = i
Print a(i);
Next i
Print
Call swap( (3) )
For i = 1 To 10
Print a(i);
Next i
End Sub
四、程序设计题
1.编制通用函数过程,计算Double类型一维数组全部元素平均值。
2.编制通用Sub过程,在一个m行n列二维数组中查找绝对值最大元素,和该元素行号、列号(提醒:Sub过程形参列表如x() As Single, m As byte, n As Byte, xmax As Single,ki As Byte,kj As Byte)。
习题六
一、选择题
1. 要为按钮设计一个访问键A,应该在Caption中加入 。
A.&A B.@A C.$A D.#A
2. 要把按钮设置为不可使用,应设置 属性为False。
A.Enable B.Default C.Cancel D.Caption
3. 要使按钮能够显示图片,应先设置 属性。
A.Style B.Enable C.Index D.Caption
4. 将命令按钮Command1设置为窗体缺省按钮,可修改该控件 属性。
A.Enabled B.Value C.Default D.Cancel
5. 将焦点主动设置到指定控件或窗体上,应采取 方法。
A.SetDate B.SetFocus C.SetText D.SelText
6. 要使标签控件大小能随Caption属性大小自动调整,应该设置 属性为True。
A.Enabled B.Visible C.AutoSize D.Alignment
7. 要使文本框显示滚动条,需先设置 属性。
A.AutoSize B.MultiLine C.Alignment D.ScrollBars
8. 下列 属性表示文本框中选定内容。
A.SelLength B.Text C.Caption D.SelText
9. 下列 控件没有Caption属性。
A.命令按钮 B.标签 C.框架 D.文本框
10. 下列不能接收焦点控件是 。
A.命令按钮 B.文本框 C.标签 D.列表框
11. 改变文本框汉字字颜色,应该修改 属性。
A.BackColor B.ForeColor C.Font D.FontBold
12. 选中单选按钮控件时,Value属性值为 。
A.True B.False C.0 D.1
13. 选中复选框控件时,Value属性值为 。
A.True B.False C.0 D.1
14. 若要在同一窗体中安排两组单选按钮(OptionButton)可用 控件给予分隔。
A.文本框 B.框架 C.列表框 D.组合框
15. 下列 对象含有编辑功效,即运行时能够进行输入或修改。
A.下拉式列表框 B.下拉式组合框 C.复选框 D.标签
16. 不能经过 来删除列表框中表项。
A.RemoveItem方法 B.Clear方法 C.Text属性
17. 若要把"XXX"成为List1清单中第三项,则可实施语句 。
A.List1.AddItem "XXX",3 B.List1.AddItem "XXX",2
C.List1.AddItem 3,"XXX" D.List1.AddItem 2,"XXX"
18. 设置列表框各表项中文本,用 属性。
A.Selected B.List C.Text D.Caption
19. 下面 表示列表框控件List1最终一个项目。
A.List1.List(List1.ListIndex) B.List1.List(List1.ListIndex-1)
C.List1.List(List1.ListCount) D.List1.List(List1.ListCount-1)
20. 实施List.RemoveItem List1.ListCount语句结果为 。
A.删除最终一项 B.删除全部项 C.犯错 D.显示全部项
21. 下列相关组合框说法中,正确是 。
A. 组合框有Click事件,没有Change事件。
B. 组合框有Change事件,没有Click事件。
C. 组合框现有Change事件,也有Click事件。
D. 组合框没有Change事件和Click事件。
22. 滚动条 属性用于指定用户单击滚动条滚动箭头时,Value属性值增减量。
A.LargeChange B.SmallChange C.Value D.Change
23. 单击滚动条两端任意一个滚动箭头,全部将触发该滚动条 事件。
A.KeyDown B.Change C.Scroll D.Click
24. 下列事件中, 能够触发滚动条Scroll事件。
A.单击滚动条两端滚动箭头 B.单击滚动条上滑块两侧空白处
C.单击滚动条上滑块 D.拖动滚动条上滑块
25. 在任何情况下, 控件在运行时全部不可见。
A.标签 B.按钮 C.复选框 D.定时器
26. 下列 控件没有Value属性。
A.滚动条 B
展开阅读全文