vb经典题目及答案
1、在考生文件夹下有工程文件wy7.vbp及窗体文件wy7.frm,该程序是不完整的,请在有?号的地方填入正确的程序代码,然后删除?及所有注释符号(即'号),但不能修改其它部分。修改后的程序文件都保存,存盘时不得修改文件夹和文件名。
本题描述如下:
在窗体上有一个名为Text1的文本框,有三个命令按钮,名称分别是C1、C2和C3,标题分别是"读入"、"加密"和"存盘"。要求程序运行后,点击"读入"按钮,将文本文件in7.txt(该文件在考生文件夹下)中的文本信息读入文本框Text1中;点击"加密"按钮将Text1中的英文字母加密转换,并将转换后的结果显示到Text1中。转换方式为转换成该字母对应字母表中后两个位置的字母。例如,转换前的字母是"a",则转换后的是"c",转换前是"E",转换后是"G";点击"存盘"按钮,则将转换后的文本框中的文本保存到out7.txt文件中(该文件保存到考生文件夹下)。
Private Sub C1_Click()
Dim strinfo As String
Open "in7.txt" For Input As 1
Input #1, strinfo
Close #1
T ext1.T ext = strinfo
End Sub
Private Sub C2_Click()
Dim strchange As String
Dim i As Integer
For i = 1 T o Len(T ext1.T ext)
strchange = strchange + Chr(Asc(Mid(T ext1.T ext, i, 1)) + 2)
Next
T ext1.T ext = strchange
End Sub
Private Sub C3_Click()
Open "out7.txt" For Output As 1
Print #1, T ext1.T ext
Close #1
End Sub
2、(1)在考生文件夹下有工程文件wy5.vbp及窗体文件wy5.frm,该程序是不完整的,请在有?号的地方填入正确容,然后删除?及所有注释符(即'号),但不能修改其它部分。存盘时不得改变文件名和文件夹。本题描述如下:
在窗口中有一个RichText文本框控件(名称为rtx1)和一个文本框控件(名称为Text1),两个命令按钮,名称分别为Command1和Command2,标题分别为"加入WY01.TXT"、"统计字符个数"。要求程序运行后,
单击command1将考生文件夹下的wy01.txt的容显示到rtx1中;单击"统计字符个数"按钮统计Text1中有多少个字符,将结果显示在Text1中。
Option Explicit
Private Sub Command1_Click()
rtx1.LoadFile App.Path + "\wy01.txt"
End Sub
Private Sub Command2_Click()
If rtx1.T ext <> "" Then
T ext1.T ext = Len(rtx1.T ext)
End If
End Sub
\
3、在考生文件夹下有工程文件wy7.vbp及窗体文件wy7.frm,该程序是不完整的,请在有?号的地方填入正确容,然后删除?及所有注释符(即'号),但不能修改其它部分。存盘时不得改变文件名和文件夹,相应的dat文件也保存到考生文件夹下,否则没有成绩。
本题描述如下:
在名称为Form1的窗体上有五个Label控件和两个命令按钮,数据文件prog8a.dat存放一些字符。
1)按"开始"按钮后,能从考生文件夹下的prog8a.dat中读出数据并分别统计出其中数字、大写字母、小写字母和其它类型字符的个数,将结果写入考生文件夹下的prog8b.dat文件中(以标准格式在一行中输出);2)执行完毕,"开始"按钮变成"完成",且无效(变灰)
Private Sub
COMSTART_Click()
Dim Ch As String, Number As Integer, Cp As Integer, Lp As Integer, Others As Integer myfile1 = App.Path & "\" & "prog8a.dat"
myfile2 = App.Path & "\" & "prog8b.dat"
Open myfile1 For Input As #1
Open myfile2 For Output As #2
While Not EOF(1)
Input #1, Ch$
If Asc(Ch$) >= 48 And Asc(Ch$) <= 57 Then
Number = Number + 1
ElseIf Asc(Ch$) >= 65 And Asc(Ch$) <= 90 Then
Cp = Cp + 1
ElseIf Asc(Ch$) >= 97 And Asc(Ch$) <= 122 Then
Lp = Lp + 1
Else
Others = Others + 1
End If
Wend
Print #2, Number, Cp, Lp, Others
Close
COMSTART.Caption = "完成"
COMSTART.Enabled = False
End Sub
4、在考生文件夹下有工程文件wy7.vbp及窗体文件wy7.frm,该程序是不完整的,请在有?号的地方填入正确容,然后删除?及所有注释符(即'号),但不能修改其它部分。存盘时不得改变文件名和文件夹,相应的dat文件也保存到考生文件夹下,否则没有成绩。
本题描述如下:
在名称为Form1的窗体上有五个Label控件和两个命令按钮,数据文件grade.dat存放一些成绩。
1)按"开始"按钮后,从考生文件夹下的grade.dat中读出数据并求出它们的平均数,将结果写入考生文件夹下的average.dat文件中;
2)执行完毕,"开始"按钮变成"完成",且无效(变灰)
5、(1)在考生文件夹下有工程文件wy5.vbp及窗体文件wy5.frm,该程序是不完整的,请在有?号的地方填入正确容,然后删除?及所有注释符(即'号),但不能修改其它部分。存盘时不得改变文件名和文件
夹。
本题描述如下:
在名称为Form1的窗体上有一个Label控件,4个Text控件及7个命令按钮,功能如下:
1)开始启动工程时,界面上除"开始录入"及"退出"按钮之外,其它按钮均不可用(灰色显示)。
2)单击"开始录入"按钮之后,利用INPUTBOX让用户连续且必须录入10个数。若录入为非数字符号,则给出警告"输入数据无效,请重新输入数值数据,请输入第n个数"。
3)录入完毕后,"开始录入"变灰,其它变为可用状态。
4)按相应的按钮可分别求出所录入数据的"升序"、"降序"排列及"最大数"和"最小数"并在右侧对应的文本框中显示。(注意用A(10)存放最大数,A(1)存放最小数)
5)单击"清除"按钮将所有文本框清空。
Private Sub COMSTART_Click()
Dim g As Single, N As Integer, S As Single
myfile1 = App.Path & "\" & "grade.DAT"
myfile2 = App.Path & "\" & "average.dat"
Open myfile1 For Input As #1
Open myfile2 For Output As #2
Do While Not EOF(1)
Input #1, g
N = N + 1
S = S + g
Loop
Close #1
S = S / N
Write #2, S
Close
COMSTART.Caption = "完成"
COMSTART.Enabled = False
End Sub
***********************************************************************
(2)在考生文件夹下有工程文件wy6.vbp及窗体文件wy6.frm,该程序是不完整的,请在有?号的地方填
入正确容,然后删除?及所有注释符(即'号),但不能修改其它部分。存盘时不得改变文件名和文件夹。本题描述如下:
在名称为Form1,标题为"求和程序"的窗体上有三个Label控件,两个
Text控件和三个命令按钮。该程序的主要功能是求从1到Text1中用户输入的任意自然数n的累加和:
1)刚启动工程时,"显示结果"和"清除"按钮均为灰色
2)可以在输入框输入任意自然数(n值太大时,运算时间将很长,建议不
超过9位)。在输入数的同时"显示结果"变为可用。当输入为非数值时,累加结果为0
3)单击"显示结果"可以在Text2中显示累加和,且该框的文字不可修改;同时"显示结果"变灰,"清除"变为可用
4)单击"清除",输入框和显示框均显示"0"
5)单击"关闭"按钮结束程序的运行
Option Explicit
Private Sub Command1_Click()
Dim i As Double
Dim sum As Double
Dim n As Double
sum = 0
n = Val(T ext1.T ext)
For i = 1 T o n
sum = sum + i
Next i
T ext2.T ext = sum
Command1.Enabled = False
Command2.Enabled = True
End Sub
Private Sub Command2_Click()
T ext1.T ext = 0
T ext2.T ext = 0
Command1.Enabled = True
Command2.Enabled = False
End Sub
Private Sub Command3_Click()
End
End Sub
Private Sub Form_Load()
Command1.Enabled = False
Command2.Enabled = False
End Sub
Private Sub T ext1_Change()
Command1.Enabled = True
End Sub
6、(1)在考生文件夹下有工程文件wy5.vbp及窗体文件wy5.frm,该程序是不完整的,请在有?号的地方填入正确容,然后删除?及所有注释符(即'号),但不能修改其它部分。存盘时不得改变文件名和文件夹。本题描述如下:
在窗体上有一个标签数组,名为Label1,该数组有4个控件元素,标题分别是"程序运行"、"文本编辑"、"双向箭头" 和"移动窗体"。在程序运行后,将鼠标移动到各控件元素上,则鼠标的形状将变成各控件元素的标题所代表的鼠标形状,离开控件元素,则又变成正常情况下的箭头形状。
Private Sub Form_MouseMove(Button As
Integer, Shift As Integer, X As Single, Y As Single)
Form1.MousePointer = 0
End Sub
Private Sub Label1_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
Select Case Index
Case 0
Form1.MousePointer = 11
Case 1
Form1.MousePointer = 3
Case 2
Form1.MousePointer = 7
Case 3
Form1.MousePointer = 5
End Select
End Sub