102
一、基本操作题
(1)在名称为Form1、标题为“球类项目”、且没有最大化和最小化按钮的窗体上画1个名
称为Combo1的组台框。组合框中的文本内容为空,表项内容有”乒乓球“、”羽毛球”和“网球”三项。运行后的窗体如图所示。
注意:存盘时必须存放在考生文件夹下,工程文件名为sjt1.vbp,窗体文件名为sjt1.frm
(2)在名称为Form1、标题为”转换”的窗体上,画1个名称为Shape1、边框宽度为3的形状。再画2个标题分别为“椭圆”和”圆“的命令按钮。如下图所示。
要求:编写适当的事件过程,使得单击“椭圆”按钮时, Shape1的形状变换为椭圆;单击“圆“按钮时,shape1的形状变换为圆。程序中不得使用变量,每个事件过程中只能写一条语句
注意:存盘时必须存放在考生文件夹下,工程文件名为sjt2.vbp,窗体文件名为sjt2.frm.
二、简单应用题
(1)在考生文件夹下有一个工程文件sjt3.vbp。窗体Form1上有2个标题分别是”读数
据“和“查找“的命令按钮。请画1个名称为Text1、初始值为空的文本框,该文本框允许显示多行内容,且有垂直滚动条,如图所示。程序功能如下:
①在考生文件夹下的in3.dat文件中存有100个正整数。单击”读数据”按钮,则将文件in3.dat中的数据读入数组a中。
②单击“查找”按钮,则查找数组a中所有为7的倍数的数据,并将这些数据顺次显示在Text1文本框内(数据之间用空格隔开)。”读数据“按钮的click事件过程已经结出,请编写程序完成”查找”按钮的click事件过程,实现上述功能。
注意:考生不得修改窗体文件中已经存在的控件和程序,在结束程序运行之前,必须使
用”查找“接钮完成查找过程,且必须用窗体右上角的关闭按扭结束程序,否则无成绩。最后将程序接原文件名存盘。
Option Base 1
Dim a(100) As Integer
Private Sub Command1_Click()
Dim k As Integer
Open App.Path & "\in3.dat" For Input As #1
For k = 1 To 100
Input #1, a(k)
Next k
Close #1
End Sub
Private Sub Command2_Click()
'考生编写
End Sub
Private Sub Form_Unload(Cancel As Integer)
Open App.Path & "\out3.dat" For Output As #1
Print #1, Text1.Text
Close #1
End Sub
(2)考生文件夹下有一个工程文件sjt4.vbp。在窗体Form1上有2个名称为Command1和Command2、标题分别为“重输“和”查找”的命令按钮。程序功能为:单击“重输”按钮,则清空Text1中的内容,等待用户输入由空格隔开的若干个英文单词;单击“查找“按钮,则找出Text1中最长的单词,并将其显示在Text2中。某一次的运行效果如图所示。请将”查找“按钮的Click事件过程中的注释符去掉,把?改为正确内容,以实现上述程序功能。
注意:考生不得修改窗体文件中已经存在的控件和程序,最后将程序按原文件名存盘。
Private Sub Command1_Click()
Text1.Text = ""
Text2.Text = ""
Text1.SetFocus
End Sub
Private Sub Command2_Click()
Dim x As String, word As String, word_max As String
Dim num As Integer, xmax As Integer
x = Trim(Text1.Text)
xmax = 0
Do While Len(x) > 0
num = InStr(x, Space(1))
If num = 0 Then
' word = ?
x = ""
Else
' word = Left(x, ? )
x = Mid(x, num + 1)
End If
If Len(word) >= xmax Then
xmax = Len(word)
' word_max = ?
End If
' ?
'Text2.Text = ?
End Sub
三、综合应用题
考生文件夹下有一个工程文件sjt5.vbp。在窗体Form1上有2个标题分别是“产生数
据“和”重新排列”的命令按钮,有2个标题为“原始数据“和“排列数据“的标签。程序功能如下:
①单击“产生数据”按钮,则随机产生20个一位整数,存入数组a中,并同时显示在Text1中。
②单击“重新排列“按钮,则重新排列数组a中的元素使等值的元素相邻存放,并且保持它们在数组a中首次出现的相对次序;最后将排列结果显示在Text2中。某一次运行结果如图所示。
请将“重新排列”按钮的click事件过程中的注释符去掉,把?改为正确内容,以实现上述程序功能。
注意:考生不得修改窗体文件中已经存在的控件和程序,最后程序按原文件名存盘。
Option Base 1
Dim a(20) As Integer
Private Sub Command1_Click()
Randomize (1)
Text1.Text = ""
For i = 1 To 20
a(i) = Int(Rnd * 10)
Text1.Text = Text1.Text + Str(a(i))
Next
End Sub
Private Sub Command2_Click()
' i = ?
Do While i < 20
For j = i + 1 To 20
If a(i) = a(j) Then
x = a(j)
i = i + 1
For k = j To i + 1 Step -1 '本循环把下标为i到j-1的元素向后移一个位置
' a(k) = ?
Next k
' a(i) = ?
End If
Next j
i = i + 1
Loop
Text2.Text = ""
' For i = 1 To ?
Text2.Text = Text2.Text + Str(a(i))
Next i
End Sub
|