在考生文件夹下有一个工程文件Sj5.vbp,窗体上有一个文本框,名称为Textl,可以多行显示。还有3个命令按钮,名称分别为Commandl、Command2和Command3,标题分别为“读取数据”、“降序排列”和“保存”。“读取数据”按钮的功能是从考生

admin2012-10-09  27

问题 在考生文件夹下有一个工程文件Sj5.vbp,窗体上有一个文本框,名称为Textl,可以多行显示。还有3个命令按钮,名称分别为Commandl、Command2和Command3,标题分别为“读取数据”、“降序排列”和“保存”。“读取数据”按钮的功能是从考生文件夹下的in5.dat文件中读取40个整数到数组中,并在Textl中显示出来;“降序排列”按钮的功能是对这40个数降序排序,并显示在Textl中;“保存”按钮的功能是把排好序的40个数存到考生文件夹下的out5.dat文件中。程序运行界面如图38—5所示。

    注意:在窗体中已经给出了全部控件和部分程序,要求阅读程序并去掉程序中的注释符“’”,把程序中的“?”改为正确的内容,使其实现上述功能,但不能修改程序中的其他部分,也不能修改控件的属性。最后把修改后的文件按原文件名存盘。

选项

答案本题在排序中,使用双重循环,外循环每循环一次,确定内循环的次数,内循环就是把本次循环中最小的数,放在数组的最后面,这样就可以实现对40个数的降序排序。原代码补充后如下: Dim a(40)As Long Dim str(40)As String Dim tex As String Dim i As Integer Private Sub Commandl Click() ’读取数据 tex="" Open"App.Path&\in5.dat"For Input As#1 For i=1 To 40 Input#1,a(i) ’逐个读取40个数据 str(i)=a(i) tex:tex+str(i)+"" ’将数组放到一个字符串中 Next i Close#1 Textl.Text=tex ’在Textl中显示字符串 End Sub Private Sub Command3 Click() ’保存数据 Open"App.Path&\out5.dat"For Output As#1 Print#1,Textl.Text Close#1 End Sub 并在Command2的Click事件中编写以下代码: Private Sub Command2 Click() For i=1 To 40 ’降序排列 temp=a(i) For j=1 To i If a(j)
解析
转载请注明原文地址:https://kaotiyun.com/show/X3hp777K
0

最新回复(0)