vb考试答题全集

1.在作业文件夹:("C:\homework\*******01")下有一个工程文件prog.vbp,相应的窗体文件为prog.frm,在窗体上有一个命令按钮和一个文本框。程序运行后,单击命令按钮,即可计算出[m,n]之间能被3整除的所有整数的和,并在文本框中显示出来。
例如:[0,200]之间能被3整除的整数之和为:6633。
在窗体的代码窗口中,已给出了部分程序,其中计算能被3整除整数之和的操作在通用过程Fun中实现,请编写该过程的代码。
要求:请勿改动程序中的任何内容,只在’*****begin*****和’*****end*****
之间填入你编写的若干语句。
运行并保存程序(按原文件名存盘),提交程序设计题文档。
注意:不要改动其它任何函数或过程中的内容!
Function Fun(m As Integer, n As Integer)
'********begin********
Dim d, i As Integer
For i = 0 To 200
If i Mod 3 = 0 Then
d = d + i

End If
Next i

Fun = d
'*********end*********
End Function

Private Sub Command1_Click()
d = Fun(0, 200)
Text1.Text = d
'SaveData
End Sub
2. 在作业文件夹:("C:\homework\*******01")下有一个工程文件Modi.vbp,相应的窗体文件为Modi.frm。其功能是:程序运行后,在文本框Text1中输入一个字符串,单击命令按钮,把字符串中偶数位置上的字符输出到文本框Text2中。
例如:当输入的字符串为:"ABCDEFGH"时,
则Text2中输出的字符串应为:"BDFH"。
在文本框Text2中输出。
在窗体的代码窗口中,已给出了部分程序,程序中有两处错误,请修改程序并运行,直到得出正确结果。
注意:程序中的修改位置就在注释行:
’**********found*************’ ’请不要删除该行’
的下面一行中,请不要改动程序中的其他部分。
最后把修改后的文件按原来文件名存盘,提交程序改错题文档。
Private Sub Command1_Click()
Dim s As String
Dim i, n As Integer
s = ""
n = Len(Text1.Text)
'**********found*************' '请不要删除该行'
For i = 2 To n step 2
s = s & Mid(Text1.Text, i, 1)
Next i
'**********found*************' '请不要删除该行'
Text2.Text = s
End Sub
4 在作业文件夹:("C:\homework\*******11")下有一个工程文件prog.vbp,相应的窗体文件为prog.frm,在窗体上有一个命令按钮和三个文本框。程序运行后,在前两个文本框中输入两个两位的正整数,单击命令按钮,将两个两位数的正整数a、b合并形成一个四位整数显示在第三个文本框中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。
例如,当a=45,b=12。调用该函数后,c=4152。
在窗体的代码窗口中,已给出了部分程序,其中合并操作在通用过程

Fun中实现,请编写该过程的代码。
要求:请勿改动程序中的任何内容,只在’*****begin*****和’*****end*****
之间填入你编写的若干语句。
运行并保存程序(按原文件名存盘),提交程序设计题文档。
注意:不要改动其它任何函数或过程中的内容!
Function fun(a As Integer, b As Integer)
‘********begin*******
Dim f1, f2, f3, f4 As Integer
f1 = Int(a / 10)
f2 = a Mod 10
f3 = Int(b / 10)
f4 = b Mod 10
fun = f1 & f3 & f2 & f4
'*********end********
End Function

Private Sub Command1_Click()
Dim i, a, b, x1 As Integer, x2 As Integer, c As Integer
x1 = Val(Text1.Text)
x2 = Val(Text2.Text)
If Text1.Text = "" Or Text2.Text = "" Then
d = MsgBox("a,b不能为空", vbDefaultButton2, "输入错误")
Text1.SetFocus
Else
c = fun(x1, x2)
Text3.Text = c
End If
‘If c <> Empty Then Call NONO
End Sub
5. 在作业文件夹:("C:\homework\*******11")下有一个工程文件Fill.vbp,相应的窗体文件为Fill.frm。程序的功能是:单击“输入”按钮,产生30个[0,100]之间的随机数存入数组A中并在文本框Text1中显示;单击“排序”按钮,将30个随机数按照从小到大的顺序排序,并在Text2中显示排序后的数组。程序运行界面请参阅附图。
在窗体的代码窗口中,已给出了部分程序,这个程序不完整,请把它补充完整,并能正确运行。
注意:程序中的填空位置就在注释行:
’**********found*************’ ’请不要删除该行,只在下一行中填空’
的下面,请不要改动该注释行中的任何内容,只在下面一行中删除掉程序中的
____(1)___”等内容,在该位置填写正确的程序语句,使其实现上述功能,运行程序。
请不要改程序中的其他部分。最后把修改后的文件按原文件名存盘,提交程序填空题文档。
Dim A(1 To 30) As Integer
Private Sub Command1_Click()
Dim i As Integer
Text1.Text = ""
Randomize
For i = 1 To 30
A(i) = Int(Rnd * 101)
Text1.Text = Text1.Text & Format(A(i), "@@@@")
If i Mod 6 = 0 Then Text1.Text = Text1.Text & vbCrLf
Next i
End Sub

Private Sub Command2_Click()
Dim i%, j%, t%
Text2.Text = ""
For i = 1 To 29
'**********found*************' '请不要删除该行,只在下一行中填空'
For j =i+1 to 30
If A(i) > A(j) Then
t = A(i)
A(i) = A(j)
'**********found*************' '请不要删除该行,只在下一行中填空'
A(j)=t
End If
Next j
Next i
For i = 1 To 30
Text2.Text = Text2.Text & Format(A(i), "@@@@")
If i Mod 6 = 0 Then Text2.Text = Text2.Text & vbCrLf
Next i
End Sub
6. 在作业文件夹:("C:\homework\*******11")下有一个工程文件Modi.vbp,相应的窗体文件为Modi.frm。其功能是:
单击窗体时,将M行M列二

维数组Mat中的元素按矩阵形式输出,然后计算矩阵第三行各元素的和(设数组下标下界为1),并在窗体上显示计算结果。程序运行界面请参阅附图。
在窗体的代码窗口中,已给出了部分程序,程序中有两处错误,请修改程序并运行,直到得出正确结果。
注意:程序中的修改位置就在注释行:
’**********found*************’ ’请不要删除该行’
的下面一行中,请不要改动程序中的其他部分。
最后把修改后的文件按原来文件名存盘,提交程序改错题文档。
Private Sub Form_Click()
Const M = 5
Dim Mat(M, M)
Dim Sum%, i%, j%
For i = 1 To M
For j = 1 To M
Mat(i, j) = i * j
Next j
Next i
Print
Print "初始矩阵为:"
Print
For i = 1 To M
For j = 1 To M
'**********found*************' '请不要删除该行'
Print Tab(5 * j); Mat(i, j);
Next j
Print
Next i
Sum = 0
For j = 1 To M
'**********found*************' '请不要删除该行'
Sum = Sum + Mat(3, j)
Next j
Print
Print "第三行各元素的和为:";
Print Sum
End Sub
7. 在作业文件夹:("C:\homework\B09060305")下有一个工程文件Modi.vbp,相应的窗体文件为Modi.frm。其功能是:
在窗体上有一个命令按钮。程序中定义了过程sub1,其功能是在屏幕上输出一个n行的乘法表。程序运行时,单击命令按钮,由用户输入行数,调用sub1,输出乘法表。例如n=3时,输出如下(界面请参阅附图)。
一共有3行
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
在窗体的代码窗口中,已给出了部分程序,程序中有两处错误,请修改程序并运行,直到得出正确结果。
注意:程序中的修改位置就在注释行:
’**********found*************’ ’请不要删除该行’
的下面一行中,请不要改动程序中的其他部分。只在指定的修改行中修改,运行程序。
最后把修改后的文件按原来文件名存盘,提交程序改错题文档。
Private Sub Command1_Click()
Dim n As Integer
n = InputBox("请输入行数n")
Cls
Print "一共有"; n; "行"
'**********found*************' '请不要删除该行'
Call Sub1(n)
End Sub

Sub Sub1(n As Integer)
Dim i, j
For i = 1 To n
'**********found*************' '请不要删除该行'
For j = 1 To i
Print i; "*"; j; "="; i * j,
Next j
Print
Next i
End Sub
8.在作业文件夹:("C:\homework\B09060303")下有一个工程文件Modi.vbp,相应的窗体文件为Modi.frm,其功能是:
单击命令按钮“输出”,在窗体上输出费波那契数列的前20项项值,要求按区输出,每行输出4个项值。
在窗体的代码窗口中,已给出了部分程序,程序中有两个地方不正

确,请进行修改并运行,直到得出正确结果。
注意:程序中的修改行就在注释行:
’**********found*************’ ’请不要删除该行’
的下面,请不要修改程序中的其他部分。
最后把修改后的文件按原来文件名存盘,提交程序改错题文档。
Private Sub Command1_Click()
Dim i%, f1&, f2&, k%
f1 = 0
f2 = 1
For i = 2 To 11
'**********found*************' '请不要删除该行'
Print f1, f2;
If i Mod 2 <> 0 Then Print
f1 = f1 + f2
f2 = f1 + f2
'**********found*************' '请不要删除该行'
Next i
Print
End Sub
9. 在作业文件夹:("C:\homework\B09060307")下有一个工程文件Modi.vbp,相应的窗体文件为Modi.frm。其功能是:
程序运行后,单击“出题”按钮,在文本框Text1中输出20个随机正实数;单击“计算”按钮,分别计算随机实数的整数部分和小数部分之和,并在文本框Text2和Text3中输出。
在窗体的代码窗口中,已给出了部分程序,程序中有两处错误,请修改程序并运行,直到得出正确结果。
注意:程序中的修改位置就在注释行:
’**********found*************’ ’请不要删除该行’
的下面一行中,请不要改动程序中的其他部分。
最后把修改后的文件按原来文件名存盘,提交程序改错题文档。
Dim A(20) As Double
Option Explicit

Private Sub Command1_Click()
Dim I As Integer, Sum1 As Single, Sum2 As Single
For I = 1 To 20
'**********found*************' '请不要删除该行,只在下一行中填空'
Sum1 = Sum1 + Int(A(I))
Sum2 = Sum2 + A(I) - Int(A(I))
Next I
Text2.Text = Sum1
'**********found*************' '请不要删除该行,只在下一行中填空'
Text3.Text = Sum2
End Sub

Private Sub Command2_Click()
Dim I As Integer, Sum1 As Long, Sum2 As Single
Randomize
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
For I = 1 To 20
A(I) = Int(Rnd * 1000) / 100
Text1.Text = Text1.Text & Format(A(I), "0.00") & " "
If I Mod 5 = 0 Then Text1.Text = Text1.Text & vbCrLf
Next I
End Sub
10. 在作业文件夹:("C:\homework\B09060307")下有一个工程文件Fill.vbp,相应的窗体文件为Fill.frm。程序运行时,单击窗体,输出一个数字组成的金字塔,程序运行界面请参阅附图。

在窗体的代码窗口中,已给出了部分程序,这个程序不完整,请把它补充完整,并能正确运行。
注意:程序中的填空位置就在注释行:
’**********found*************’ ’请不要删除该行,只在下一行中填空’
的下面,请不要改动该注释行中的任何内容,只在下面一行中删除掉程序中的
____(1)___”等内容,在该位置填写正确的程序语句,使其实现上述功能,运行程序。
请不要改程序中的其他部分。最后把

修改后的文件按原文件名存盘,提交程序填空题文档。
Private Sub Form_Click()
Form1.Cls
Print
For i = 1 To 9
Print Tab(30 - 3 * i);
For j = 1 To i - 1
'**********found*************' '请不要删除该行,只在下一行中填空'
Print j;
Next j
'**********found*************' '请不要删除该行,只在下一行中填空'
For j = i to 1 step-1
Print j;
Next j
Print '每行最后换行
Next i
End Sub
11.在作业文件夹:("C:\homework\B09060307")下有一个工程文件prog.vbp,相应的窗体文件为prog.frm,
在窗体上有一个命令按钮和两个文本框。程序运行后,在前两个文本框中输入两个两位的正整数,单击命令按钮,求两个正整数a、b的最大公约数并显示在第三个文本框中。
在窗体的代码窗口中,已给出了部分程序,其中求最大公约数在通用过程Fun中实现,请编写该过程的代码。
要求:请勿改动程序中的任何内容,只在’*****begin*****和’*****end*****
之间填入你编写的若干语句。
运行并保存程序(按原文件名存盘),提交程序设计题文档。
注意:不要改动其它任何函数或过程中的内容!
Function fun(a As Integer, b As Integer)
Dim i As Integer, t As Integer
'********begin*******
If a > b Then
i = a
Else: i = b
End If
For t = i To 1 Step -1
If a Mod t = 0 And b Mod t = 0 Then
fun = t
Exit For
End If
Next t

'*********end********
End Function

Private Sub Command1_Click()
Dim i, a As Integer, b As Integer, c
If Text1.Text = "" Or Text2.Text = "" Then
d = MsgBox("a,b的值不能为空", vbDefaultButton2, "输入错误")
Text1.SetFocus
Else
c = fun(Val(Text1.Text), Val(Text2.Text))
Text3.Text = c
End If
' If c <> Empty Then Call NONO
End Sub
12.在作业文件夹:("C:\homework\B09060322")下有一个工程文件Fill.vbp,相应的窗体文件为Fill.frm。窗体上有一个时钟控件(定时器)、2个标签和2个命令按钮。程序的功能是一个秒表倒计时器,起始时间为100秒。单击“开始”按钮,使停止按钮有效,显示起始时间,且每秒钟使标签Label2显示值减1。当剩余时间为0时,使“停止”按钮无效;单击“停止”按钮,停止计时。程序运行界面请参阅附图。
在窗体的代码窗口中,已给出了部分程序,这个程序不完整,请把它补充完整,并能正确运行。
注意:程序中的填空位置就在注释行:
’**********found*************’ ’请不要删除该行,只在下一行中填空’
的下面,请不要改动该注释行中的任何内容,只在下面一行中删除掉程序中的
____(1)___”等内容,在该位置填写正确的程序语句,使其实现上述功能,运行程序。
请不要改程

序中的其他部分。最后把修改后的文件按原文件名存盘,提交程序填空题文档。
Private Sub Command1_Click()
Timer1.Enabled = True
Command2.Enabled = True
Label2.Caption = 100
End Sub
Private Sub Command2_Click()
'**********found*************' '请不要删除该行,只在下一行中填空'
Timer1.Enabled = False
End Sub

Private Sub Timer1_Timer()
'**********found*************' '请不要删除该行,只在下一行中填空
Label2.Caption = Label2.Caption - 1
If Val(Label2.Caption) = 0 Then
Timer1.Enabled = False
Command2.Enabled = False
End If
End Sub
13. 在作业文件夹:("C:\homework\B09060328")下有一个工程文件Prog.vbp,相应的窗体文件为Prog.frm,窗体上有二个命令按钮。程序的功能是,单击“输入”按钮,输入整数N,产生N*N个两位的随机正整数存入二维数组的X中。单击“求和”按钮,求N*N矩阵中主对角线(左上—右下)元素之和,并在窗体上输出。程序运行界面请参阅附图。
在窗体的代码窗口中,已给出了部分程序,其中计算主对角线元素之和的操作在子过程Fun中实现,请编写该过程的代码。

要求:请勿改动程序中的任何内容,只在’*****begin*****和’*****end*****
之间填入你编写的若干语句。
运行并保存程序(按原文件名存盘),提交程序设计题文档。
注意:不要改动其它任何函数或过程中的内容!
Sub Fun(X() As Integer, N As Integer, s As Integer)
'********begin********
Dim x(1 To N, 1 To N) As Integer


For i = 1 To N
s = s + x(i, i)
Next i
Fun= s


'*********end*********
End Sub

Private Sub Command1_Click()
N = Val(InputBox("请输入矩阵的行数N", "数据输入", 5))
ReDim X(N, N)
Form1.Cls
Randomize
For i = 1 To N
For j = 1 To N
X(i, j) = Int(Rnd * 90) + 10
Print X(i, j);
Next j
Print
Next i
End Sub

Private Sub Command2_Click()
Dim s As Integer
Call Fun(X, N, s)
Print "主对角线元素之和为:" & s
SaveData
End Sub
14.在作业文件夹:("C:\homework\B09060317")下有一个工程文件prog.vbp,相应的窗体文件为prog.frm,在窗体上有一个命令按钮,名称为C1,标题为“计算”。
程序的功能是:在程序运行时,如果单击“计算”按钮,按下面公式求s的值,并把结果存入文件变量s中并输出到窗体上。
1 1 1 1 1
s = 1 + —— + —— + —— + —— + …… + ———
2*2 3*3 4*4 5*5 10*10

在窗体的代码窗口中,已给出了部分程序,请完善程序代码。
要求:请勿改动程序中的任何内容,只在’*****begin*****和’*****end*****
之间填入你编写的若干语句。
运行并保存程序(按原文件名存盘),提

交程序设计题文档。

注意:不要改动其它任何函数或过程中的内容!
特别提醒:必须将计算结果存入变量s中。
Private Sub C1_Click()
Dim i, s As Double
'***********begin***********
Dim n As Double
n = 100000
s = 1
For i = 2 To n
s = s + 1 / (i * i)
Next i
'************end************
Print "s=";
Print Format(s, "##.0000");
DataWrite (s)
End Sub
15.在作业文件夹:("C:\homework\B09060328")下有一个工程文件Fill.vbp,相应的窗体文件为Fill.frm,窗体上有1个图片框、1个水平滚动条和一个红色圆。
程序运行时,单击滚动条左边的滚动箭头,使红色圆向左移动20缇;单击滚动条右边的滚动箭头,使红色圆向右移动20缇。程序运行界面请参阅附图。
在窗体的代码窗口中,已给出了部分程序,这个程序不完整,请把它补充完整,并能正确运行。
注意:程序中的填空位置就在注释行:
’**********found*************’ ’请不要删除该行,只在下一行中填空’
的下面,请不要改动该注释行中的任何内容,只在下面一行中删除掉程序中的
____(1)___”等内容,在该位置填写正确的程序语句,使其实现上述功能,运行程序。
请不要改程序
Private Sub Form_Load()
HScroll1.Width = Picture1.ScaleWidth
HScroll1.Min = 0
HScroll1.Max = HScroll1.Width / 25
End Sub

Private Sub HScroll1_Change()
Static a As Integer
If a > HScroll1.Value Then '单击了向左滚动箭头
'**********found*************' '请不要删除该行'
Shape1.Left = Shape1.Left - 20
ElseIf a < HScroll1.Value Then '单击了向右滚动箭头
'**********found*************' '请不要删除该行'
Shape1.Left = Shape1.Left + 20
End If
a = HScroll1.Value '记下当前滚动条位置
End Sub
16.在作业文件夹:("C:\homework\B09060316")下有一个工程文件prog.vbp,相应的窗体文件为prog.frm,在窗体上有二个文本框,名称分别为Text1和Text2,还有一个命令按钮,名称分别为Command1,标题为“计算”。
程序的功能是:在文本框Text1中输入一行字符串,单击“计算”按钮,统计Text1中大写字母的个数并在Text2中显示。
在窗体的代码窗口中,已给出了部分程序,其中统计大写它母个在通用过程Fun中实现,请编写该过程的代码。
要求:请勿改动程序中的任何内容,只在’*****begin*****和’*****end*****
之间填入你编写的若干语句。
运行并保存程序(按原文件名存盘),提交程序设计题文档。
注意:不要改动其它任何函数或过程中的内容!
Function Fun(s As String)
'********begin********
Dim a As String, i As Integer, d As Integer
For i = 1 To Len(Text1.Text)
a = Mid(Text1.Text, i, 1)
If a = UCase(a) Then
d = d + 1
End If
Next i
Fun = d
'****

*****end*********
End Function

Private Sub Command1_Click()
d = Fun(Text1.Text)
Text2.Text = "大写字母的个数为:" & d
' SaveData
End Sub
17. 在作业文件夹:("C:\homework\B09060316")下有一个工程文件FILL.vbp,相应的窗体文件为Fill.frm。程序的功能是:实现密码登录验证。运行时,当用户输入完口令并按"确定"按钮时,对口令进行判断(不区分大小写)并在窗体中显示口令是否正确的信息。在连续三次输入错误口令后,结束程序。程序运行界面请参阅附图。
在窗体的代码窗口中,已给出了部分程序,这个程序不完整,请把它补充完整,并能正确运行。 注意:程序中的填空位置就在注释行:
’**********found*************’ ’请不要删除该行,只在下一行中填空’
的下面,请不要改动该注释行中的任何内容,只在下面一行中删除掉程序中的
____(1)___”等内容,在该位置填写正确的程序语句,使其实现上述功能,运行程序。
请不要改程序中的其他部分。最后把修改后的文件按原文件名存盘,提交程序填空题文档。
Private Sub Command1_Click()
'*********found******** 请不要删除该行
Static i
If LCase(Text1.Text) = "hello" Then
Form1.Caption = "恭喜你,口令正确!"
ElseIf I = 0 Or I = 1 Then
Form1.Caption = "口令错,请重新输入!"
Text1.SetFocus
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
I = I + 1
Else
MsgBox "对不起,您不能使用本系统"
End
'*********found******** 请不要删除该行
End if
End Sub
18. 在作业文件夹:("C:\homework\B09060316")下有一个工程文件Modi.vbp,相应的窗体文件为Modi.frm,其功能是:
在窗体上有一个名称为C1、标题为“输出”的命令按钮,程序在运行时,如果单击“输出”按钮,输出[100,200]之间的所有素数并统计素数的个数。

在窗体的代码窗口中,已给出了部分程序,程序中有两个地方不正确,请进行修改并运行,直到得出正确结果。

注意:程序中的修改行就在注释行:
’**********found*************’ ’请不要删除该行’
的下面,请不要修改程序中的其他部分。
最后把修改后的文件按原来文件名存盘,提交程序改错题文档。
Private Sub Command1_Click()
Dim i%, j%, k%, flag%
k = 0
For i = 100 To 200
flag = 1 '素数的标志
For j = 2 To i - 1
'**********found*************' '请不要删除该行'
If i Mod j = 0 Then flag = 0
Next j

If flag <> 0 Then
Picture1.Print i;
k = k + 1
'**********found*************' '请不要删除该行'
If k Mod 5 = 0 Then Picture1.Print
End If
Next i
Picture1.Print
Picture1.Print "一共有"; k; "个素数"
End Sub
19.在作业文件夹:("C:\homework\

B09060401")下有一个工程文件prog.vbp,相应的窗体文件为prog.frm,在窗体上有二个命令按钮和三个文本框。程序的功能是查找给定的数值在一维数组中第一次出现的位置。
程序运行后,单击“产生随机数”按钮,产生10个[20,50]之间的随机数存入数组A中,显示在文本框Text1中;在文本框Text2中输入一个整数n,单击“查找”按钮,在数组中查找n第一次出现的位置,如果数组中存在整数n,在Text3中显示n第一次出现的位置;如果数组中不存在整数n,在Text3中提示找不到。程序运行界面参阅附图。
在窗体的代码窗口中,已给出了部分程序,其中在数组A中查找整数n的操作在通用过程Fun中实现,请编写该过程的代码。
要求:请勿改动程序中的任何内容,只在’*****begin*****和’*****end*****
之间填入你编写的若干语句。
运行并保存程序(按原文件名存盘),提交程序设计题文档。
注意:不要改动其它任何函数或过程中的内容!
Dim a(10) As Integer
Function Fun(a() As Integer, n As Integer)
Fun = 0
'********begin********
For i = 1 To 10
If n = a(i) Then
Fun = i
Exit For
End If
Next i
'*********end*********
End Function

Private Sub Command1_Click()
Dim i As Integer, location As Integer
Text1.Text = ""
For i = 1 To 10
a(i) = Int(Rnd * 31) + 20
Text1.Text = Text1.Text & a(i) & " "
Next i
End Sub

Private Sub Command2_Click()
location = Fun(a, Val(Text2.Text))
If location = 0 Then
Text3.Text = "找不到" & Text2.Text
Else
Text3.Text = Text2.Text & "是数组中的第" & location & "个元素"
End If
'SaveData
End Sub
20. 在作业文件夹:("C:\homework\B09060305")下有一个工程文件Fill.vbp,相应的窗体文件为Fill.frm。窗体上有2个列表框和2个命令按钮。程序运行时,在文本框List1中选择一个项目,单击“添加”按钮,将所选项目添加到列表框List2中并同时从List1中删除(每次一门课程)。单击“删除”按钮,进行相反的操作。程序运行的界面请参阅附图(左图为初始界面)。这个程序不完整,请把它补充完整,并能正确运行。
在窗体的代码窗口中,已给出了部分程序,这个程序不完整,请把它补充完整,并能正确运行。
注意:程序中的填空位置就在注释行:
’**********found*************’ ’请不要删除该行,只在下一行中填空’
的下面,请不要改动该注释行中的任何内容,只在下面一行中删除掉程序中的
____(1)___”等内容,在该位置填写正确的程序语句,使其实现上述功能,运行程序。
请不要改程序中的其他部分。最后把修改后的文件按原文件名存盘,提交程序填空题文档。
Private Sub Form_Load()
List1.AddItem "高等

数学": List1.AddItem "大学英语":
List1.AddItem "计算机文化基础": List1.AddItem "高级语言程序设计":
List1.AddItem "素描": List1.AddItem "基础医学":
End Sub
Private Sub Command1_Click()
If List1.ListIndex >= 0 Then
'**********found*************' '请不要删除该行,只在下一行中填空'
List2.AddItem List1.List(List1.ListIndex)
List1.RemoveItem List1.ListIndex
End If
End Sub

Private Sub Command2_Click()
If List2.ListIndex >= 0 Then
List1.AddItem List2.List(List2.ListIndex)
'**********found*************' '请不要删除该行,只在下一行中填空'
List2.RemoveItem List2.ListIndex
End If
End Sub
21. 在作业文件夹:("C:\homework\B09060308")下有一个工程文件prog.vbp,相应的窗体文件为prog.frm,在窗体上有一个命令按钮和一个图片框。程序运行后,单击命令按钮,在图片框中按每行一个数据的格式输出所有的水仙花数。程序运行界面参阅附图。
在窗体的代码窗口中,已给出了部分程序,其中判断一个三位数是否为水仙花数的操作在子过程Fun中实现,请编写该过程代码。
要求:请勿改动程序中的任何内容,只在’*****begin*****和’*****end*****
之间填入你编写的若干语句。
运行并保存程序(按原文件名存盘),提交程序设计题文档。
注意:不要改动其它任何函数或过程中的内容!
Sub Fun(I As Integer, flag As Integer)
flag = 0
'*********begin*********
Dim a, b, c As Integer

a = I Mod 10
b = Int(I / 10) Mod 10
c = Int(I / 100) Mod 10
If I = (a ^ 3 + b ^ 3 + c ^ 3) Then
Picture1.Print I
End If
'*********end*********
End Sub

Private Sub Command1_Click()
Dim I As Integer, flag As Integer
Open App.Path & "\" & "PROGOUT.DAT" For Output As #1
Picture1.Print "水仙花数有:"
For I = 100 To 999
Call Fun(I, flag)
If flag = 1 Then Picture1.Print I
If flag = 1 Then Print #1, I & "是水仙花数"
Next I
Close #1
End Sub
22.在作业文件夹:("C:\homework\B09060308")下有一个工程文件Fill.vbp,相应的窗体文件为Fill.frm。程序的功能是:当程序运行时,单击窗体,在窗体上输出一个9行的菱形。程序运行界面请参阅附图。

在窗体的代码窗口中,已给出了部分程序,这个程序不完整,请把它补充完整,并能正确运行。
注意:程序中的填空位置就在注释行:
’**********found*************’ ’请不要删除该行,只在下一行中填空’
的下面,请不要改动该注释行中的任何内容,只在下面一行中删除掉程序中的
____(1)___”等内容,在该位置填写正确的程序语句,使其实现上述功能,运行程序。
请不要改程序中的其他部分。最后把修改后的文件按原文件名存盘,提交程序填空题文档。

Privat

e Sub Form_Click()
Dim i As Integer, j As Integer, k As Integer
For i = 1 To 5 '输出菱形的上半部分
Print Tab(20 - i);
For j = 1 To 2 * i - 1
Print "*";
Next j
Print
Next i
'**********found*************' '请不要删除该行,只在下一行中填空'
For i = 1 To 4 '输出菱形的下半部分
Print Space(14 + i);
For j = 1 To 7 - 2 * (i - 1)
Print "*";
Next j
'**********found*************' '请不要删除该行,只在下一行中填空'
print
Next i
End Sub
23.在作业文件夹:("C:\homework\B09060408")下有一个工程文件Modi.vbp,相应的窗体文件为Modi.frm。程序的功能是:
单击"计算"按钮,在文本框中显示1!+2!+……+20!的值。(程序运行界面请参阅附图)
程序中有两处错误,请修改程序并运行,直到得出正确结果。
在窗体的代码窗口中,已给出了部分程序,程序中有两个地方不正确,请进行修改并运行,直到得出正确结果。
注意:程序中的修改行就在注释行:
’**********found*************’ ’请不要删除该行’
的下面,请不要修改程序中的其他部分。
最后把修改后的文件按原来文件名存盘,提交程序改错题文档。
Private Sub Command1_Click()
Dim S As Double
Dim Sum As Double
Dim I As Integer, J As Integer
Sum = 0
For I = 1 To 20
'**********found************* '请不要删除该行'
S = 1
'**********found************* '请不要删除该行'
For J = 1 To i
S = S * J
Next J
Sum = Sum + S
Next I
Text1.Text = Str(Sum)
End Sub
1

相关文档
最新文档