在考生文件夹下有一个工程文件sjt5.vbp。其窗体中有一个名称为Text1的文本框数组,下标从0开始。程序运行时,单击“产生随机数”按钮,就会产生10个3位数的随机数,并放入Text1 数组中,如图6(a)所示单击“重排数据”按钮,将把Text1中的奇数移到前面,偶数移到后面,如图6(b)所示。文件中已经给出了所有控件和部分程序。 要求:请去掉程序中的注释符,把程序中的?改为正确的内容,使其能正确运行,不能修改程序的其他部分和控件属性。最后把修改后的文件按原文件名存盘。 提示:在“重排数据”按钮的事件过程中有对其算法的文字描述,请仔细阅读。

第1题:
注意:下面出现的“考生文件夹”均为c:\wexam\25160001。
去掉程序中的注释符,把程序中的?改为正确的内容,使其实现下述功能,但不能修改程序中的其他部分。
在窗体上有三个菜单(名称分别为Read、Calc和Save,标题分别为“读入数据”、“计算并输出”和“存盘”),还有一个文本框(名称为Text1,MultiLine属性设置为True,ScrollBars属性设置为2),如图22-8所示。
程序运行后,如果执行“读入数据”命令,则读入datain1.txt文件中的100个整数,放入一个数组中,数组的下界为1;如果单击“计算并输出”按钮,则把该数组中可以被3整除的元素在文本框中显示出来,求出它们的和,并把所求得的和在窗体上显示出来;如果单击“存盘”按钮,则把所求得的和存入考生文件夹下的dataout.txt文件中。
在考生文件夹下有一个工程文件sjt5.vbp,窗体文件中的ReadData过程可以把datain1.txt文件中的100个整数读入Arr数组中;而WriteData过程可以把指定的整数值写到考生文件夹下指定的文件中(整数值通过计算求得,文件名为dataout.txt)。
注意:考生不得修改窗体文件中已经存在的程序。存盘时,工程文件名仍为sjt5.vbp,窗体文件名仍为sjt5.frm。

第二步:编写程序代码。
程序提供的代码:
Option Base 1
Dim Arr(100) As Integer
Dim temp As Integer
Sub ReadData()
Open App.Path & "\" & "datain1.txt" For Input As #1
For i=1 To 100
Input #1 Arr(i)
Next i
Close #1
End Sub
Sub WriteData(Filename As String Num As Integer)
Open App.Path & "\" & Filename For Output As #1
Print #1 Num
'?#1
End Sub
Private Sub Calc_Click()
'Text1.?=""
For i=1 To 100
If Arr(i) Mod 3=0 Then
Text1.Text=Text1.Text & Arr(i) & Space(5)
'temp=temp+9
End If
Next i
Print temp
End Sub
Private Sub Read_Click()
ReadData
End Sub
Private Sub Save_Click()
WriteData "dataout.txt" temp
End Sub
参考代码:
Option Base 1
Dim Arr(100) As Integer
Dim temp As Integer
Sub ReadData()
Open App.Path & "\" & "datain1.txt" For Input As #1
For i=1 To 100
Input #1 Arr(i)
Next i
Close #1
End Sub
Sub WriteData(Filename As String Num As Integer)
Open App.Path & "\" & Filename For Output As #1
Print #1 Num
Close #1
End Sub
Private Sub Calc_Click()
Text1.Text=""
For i=1 To 100
If Art(i) Mod 3=0 Then
Text1.Text=Text1.Text & Arr(i) & Space(5)
temp=temp+Arr(i)
End If
Next i
Print temp
End Sub
Private Sub Read_Click()
ReadData
End Sub
Private Sub Save_Click()
WriteData "dataout.txt" temp
End Sub
第三步:调试并运行程序。
第四步:按题目要求存盘。
第二步:编写程序代码。
程序提供的代码:
Option Base 1
Dim Arr(100) As Integer
Dim temp As Integer
Sub ReadData()
Open App.Path & "\" & "datain1.txt" For Input As #1
For i=1 To 100
Input #1, Arr(i)
Next i
Close #1
End Sub
Sub WriteData(Filename As String, Num As Integer)
Open App.Path & "\" & Filename For Output As #1
Print #1, Num
'?#1
End Sub
Private Sub Calc_Click()
'Text1.?=""
For i=1 To 100
If Arr(i) Mod 3=0 Then
Text1.Text=Text1.Text & Arr(i) & Space(5)
'temp=temp+9
End If
Next i
Print temp
End Sub
Private Sub Read_Click()
ReadData
End Sub
Private Sub Save_Click()
WriteData "dataout.txt", temp
End Sub
参考代码:
Option Base 1
Dim Arr(100) As Integer
Dim temp As Integer
Sub ReadData()
Open App.Path & "\" & "datain1.txt" For Input As #1
For i=1 To 100
Input #1, Arr(i)
Next i
Close #1
End Sub
Sub WriteData(Filename As String, Num As Integer)
Open App.Path & "\" & Filename For Output As #1
Print #1, Num
Close #1
End Sub
Private Sub Calc_Click()
Text1.Text=""
For i=1 To 100
If Art(i) Mod 3=0 Then
Text1.Text=Text1.Text & Arr(i) & Space(5)
temp=temp+Arr(i)
End If
Next i
Print temp
End Sub
Private Sub Read_Click()
ReadData
End Sub
Private Sub Save_Click()
WriteData "dataout.txt", temp
End Sub
第三步:调试并运行程序。
第四步:按题目要求存盘。
第2题:
在考生文件夹下有一个工程文件sjt5.vbp,其窗体上画有两个名称分别为Text1、Text2的文本框,其中Text1可多行显示。请画两个名称为Command1、Command2,标题为“产生数组”、“查找”的命令按钮。如图8所示。程序功能如下: ①单击“产生数组”按钮,则用随机函数生成10个0~100之间(不含0和100)互不相同的数值,并将它们保存到一准数组a中,同时也将这10个数值显示在Text1文本框内; ②单击“查找”按钮将弹出输入对话框,接收用户输入的任意一个数,并在一维数组a中查找该数,若查找失败,则在Text2文本框内显示该数“不存在于数组中”;否则显示该数在数组中的位置。 要求:请去掉程序中的注释符,把程序中的?改为正确的内容,使其实现上述功能,但不能修改窗体文件中已经存在的控件和程序。最后把修改后的文件按原文件名存盘。



第3题:
在窗体上画一个名称为Op1的单选按钮控件数组,其包含4个单选按钮,Index值从0到 3,标题分别为“答案1”、“答案2”、“答案3”和“答案4”;再画一个命令按钮,名称为C1,标题为“选择”;再画一个文本框Text1,名称为Text1,内容为空白。编写适当的程序。程序运行时,单击“选择”按钮,只有选择“答案1”单选按钮时,在Text1文本框中显示“选择正确”,否则显示“选择错误”。程序运行结果如图2—1所示。
注意,保存时必须存放在考生文件夹下,工程文件名为sjt3.vbp,窗体文件名为sjt3.frm。
2.在考生文件夹中有工程文件sjt4.vbp,其中包含窗体Form1,该程序是不完整的。请在有?号的地方填入正确内容,然后删除?及所有注释符(即'号),但不能修改其他部分。存盘时不得改变文件名和文件夹。本题描述如下:
在窗体上有三个名称分别为Text1、Text2、Text3的文本框,一个名称为Command1,标题

为“计算”的命令按钮(如图2—2所示)。要求程序运行后,在Text1和Text2中分别输入两个整数,单击“计算”按钮后,可把两个整数之间的所有整数(含着两个整数)累加起来并在Text3中显示出来。注意:保存时必须放在考生文件夹下,工程文件名为sjt4.vbp,窗体文件名为sjt4.frm。

② 分析:按试题要求在窗体上画一个单选按钮数组(含四个单选按钮)、一个文本框和一个命令按钮并分别将它们的属性按表3的内容进行设置。单选按钮是否被选取由其Value属性来确定当Value值为True时表示单选按钮被选取否则未被选取根据题意只有选择了Op1(0)单选按钮将字符串“选择正确”赋给Text1.Text否则将字符串“选择错误”赋给了Text1.Text。
③ 编程代码:
Private Sub C1_Click()
If Op1(0).Value=True Then
Text1.Text="选择正确"
Else
Text1.Text="选择错误"
End If
End Sub
2.① 试题提供的程序如下:
Private Sub Command1_Click()
Dim i As Integer
Dim j As Integer
'For i=Text1.Text To?
'j=?+i
Next i
Text3.Text=j
End Sub
② 要完成两个数之间所有整数的累加需要使用循环结构来读取两个数之间所有的整数然后将每一个整数累加到一个变量中。
③ 修改后的程序如下:
Private Sub Command1_Click()
Dim i As Integer
Dim j As Integer
For i=Text1.Text To Text2.
Text
j=j+i
Next i
Text3.Text=j
End Su
② 分析:按试题要求在窗体上画一个单选按钮数组(含四个单选按钮)、一个文本框和一个命令按钮,并分别将它们的属性按表3的内容进行设置。单选按钮是否被选取由其Value属性来确定,当Value值为True时,表示单选按钮被选取,否则未被选取,根据题意,只有选择了Op1(0)单选按钮,将字符串“选择正确”赋给Text1.Text,否则将字符串“选择错误”赋给了Text1.Text。
③ 编程代码:
Private Sub C1_Click()
If Op1(0).Value=True Then
Text1.Text="选择正确"
Else
Text1.Text="选择错误"
End If
End Sub
2.① 试题提供的程序如下:
Private Sub Command1_Click()
Dim i As Integer
Dim j As Integer
'For i=Text1.Text To?
'j=?+i
Next i
Text3.Text=j
End Sub
② 要完成两个数之间所有整数的累加,需要使用循环结构来读取两个数之间所有的整数,然后将每一个整数累加到一个变量中。
③ 修改后的程序如下:
Private Sub Command1_Click()
Dim i As Integer
Dim j As Integer
For i=Text1.Text To Text2.
Text
j=j+i
Next i
Text3.Text=j
End Su
第4题:
在考生文件夹下有一个工程文件sj5.vbp在名称为Form1的窗体上画一个文本框,名称为Text1,允许多行显示;再画三个命令按钮,名称分别为Command1、Command2和Command3,标题分别为“读取文本”、“大写”和“保存”,运行界面如图28-5所示。请编写适当的事件过程,使得在运行时,单击“读取文本”按钮,则从考生文件夹中读入sjin.txt文件(文件中只有字母和空格),放入Text1中;单击“大写”按钮,则把Text1中的所有小写字母转换为大写字母;单击“保存”按钮,则把Text1中的内容存入sjout.txt文件中。

注意:去掉程序中的注释符““’,把程序中的“?”改为正确的内容,考生必须把转换后的内容用“保存”按钮存入sjout.txt文件,否则无成绩。考生的工程文件以文件名sj5.vbp存盘,窗体文件以文件名sj5.frm存盘。
文本框的MuhiLine属性设置其是否能多行显示,为True表示能多行显示,为False表示不能多行显示。ScrollBars属性设置其是否有滚动条,值为0时表示没有滚动条,值为1时表示有水平滚动条,值为2时表示有垂直滚动条,值为3时表示水平、垂直滚动条都有。
对文件的操作一般包括以下步骤:打开或建立文件;进行读/写操作;关闭文件。
要将字符串的小写字母转换成大写字母,可以通过UCase函数实现。UCase函数将小写字母转换成大写字母,而大写或非字母字符均保持不变。其语法格式为:UCase(string)。省string为任何有效的字符串表达式。
根据题意,将一个文本框控件和3个命令按钮添加到窗体中,文本框的名称为Text1、MuhiLine属性为True、ScrollBar属性为2,命令按钮的名称分别为Command1、Command2和Command3,Caption分别为“读取文本”、“大写”和“保存”,设置完成后双击Command1进入代码编写窗口,其中Mid( )函数是将字符串中的字符提取出来,以判断字符是不是小写字母,EOF( )函数判断文件是否读取完成,补充后的具体代码如下:


第5题:
在考生文件夹中有一个工程文件exeeise105.vbp,请在Form1窗体上建立一个名称为 Opt1的单选按钮数组,含有3个单选按钮,其标题分别为“71”、“81”、“91”,Index属性分别为0、1、2;再绘制一个名称为Cmd1的命令按钮,标题为“计算”;绘制一个名称为Text1的文本框,如图所示,
程序的功能是在选定一个单选按钮并单击“计算”按钮后,可以计算出相应的阶乘值,在Text1中显示该阶乘值。请绘制出上述控件并编写程序。
注意:
不得修改工程中已经存在的内容,在结束程序运行之前,必须进行一次计算。必须通过单击窗体右上角的关闭按钮结束程序,否则无成绩。最后按原文件名存盘。

