在考生文件夹下有一个工程文件sj5.vbp,窗体上有两个文本框,名称分别为Textl、Text2,都可以多行显示;三个命令按钮,名称分别为C1、C2、C3,标题分别为“取数”、“排序”、“存盘”。“取数”按钮的功能是将考生文件夹下的in5.dat文件中的5

admin2009-03-26  32

问题 在考生文件夹下有一个工程文件sj5.vbp,窗体上有两个文本框,名称分别为Textl、Text2,都可以多行显示;三个命令按钮,名称分别为C1、C2、C3,标题分别为“取数”、“排序”、“存盘”。“取数”按钮的功能是将考生文件夹下的in5.dat文件中的50个整数读到数组中,并在Textl中显示出来;“排序”按钮的功能是对这50个数按升序排序,并显示在T’eXt2中;“存盘”按钮的功能是把排好序的50个数存到考生目录下的out5.dat文件中。如图9—5所示。在窗体中已经给出了全部控件和部分程序代码,要求阅读程序并去掉程序中的注释符,把程序中的?改为正确的内容,并编写”排序”按钮的Click事件过程。

    注意:使其实现上述功能,但不能修改程序中的其他部分,也不能修改控件的属性。最后将修改后的文件按原文件名存盘。

选项

答案 本题考查Str()函数,“冒泡法”排序,For循环语句,If判断语句及文件操作。根据题意,打开本题工程文件,打开代码编辑窗口,去掉程序中的注释符“’”,将问号改为正确的内容,编写如下代码: Dim a(50)As Integer Private Sub C1 Click() Dim k As Integer,ch As String Open App.Path&"/in5.dat"For Input As#1 ch="" For k=1 To 50 Input#1,a(k) ch=ch+Str(a(k))+"" Next k Close#1 Textl.Text=ch End Sub Private Sub C2 Click() Dim t As Integer Dim i As Integer Dim j As Integer Dim ch As String ch="" For i=50 To 2 Step-1 For j=1 To 49 If a(j)>a(j+1)Then t=a(j+1) a(j+1)=a(j) a(j)=t End If Next j Next i For j=1 To 50 ch=ch+Str(a(j))+"" Next j Text2.Text=ch End Sub Private Sub C3 Click() Open App.Path&"/out5.dat"For Output As#1 Print#1,Text2.Text Close#1 End Sub 单击[*]按钮运行程序,并按要求保存。

解析
转载请注明原文地址:https://kaotiyun.com/show/wV1p777K
0

最新回复(0)