在考生文件夹下有一个工程文件sjt5.vbp,其窗体上有两个命令按钮、三个标签和三个文本框,均使用默认名称。程序的功能如下: ①如果单击“读数据”命令按钮,则将考生文件夹下in5.dat文件中两组已按升序方式排列的数(每组30个数)分别读人数组A和B,

admin2018-07-11  58

问题  在考生文件夹下有一个工程文件sjt5.vbp,其窗体上有两个命令按钮、三个标签和三个文本框,均使用默认名称。程序的功能如下:
  ①如果单击“读数据”命令按钮,则将考生文件夹下in5.dat文件中两组已按升序方式排列的数(每组30个数)分别读人数组A和B,并分别在Text1、Text2中显示。
  ②如果单击“合并”命令按钮,则将A、B两个数组合并为另一个按从小到大排列的数组C,并将合并后数组C中的数据显示在Text3中。窗体中给出了所有控件(如图所示)以及“读数据”命令按钮的Click事件过程,请完善“合并”命令按钮的Click事件过程,使其实现上述功能。
    注意:不得修改已经存在的控件和程序,在结束程序运行之前,必须进行合并操作,且必须通过窗体右上角的“关闭”按钮结束程序,否则无成绩。最后,程序按原文件名存盘。

选项

答案【操作步骤】 步骤1:打开本题工程文件。 步骤2:分析并编写程序代码。 程序提供代码 Dim a(30) As Integer, b(30) As Integer, c(60) As Integer Private Sub Command1_Click() Dim k As Integer Open App.Path & "\in5.dat" For Input As #1 For k = 1 To 30     Input #1, a(k)     Text1 = Text1 + Str(a(k)) + Space(2) Next k For k = 1 To 30     Input #1, b(k)     Text2 = Text2 + Str(b(k)) + Space(2) Next k Close #1 End Sub Private Sub Command2_Click() ’考生编写程序开始 ’======================= ’======================= ’考生编写程序结束 ’以下程序将合并后的数组C显示在Text3中 For k = 1 To 60     Text3 = Text3 + Str(c(k)) + Space(2) Next k End Sub Private Sub Form_Unload(Cancel As Integer) Open App.Path & "\out5.dat" For Output As #1 Print #1, Text3.Text Close #1 End Sub 程序结束 参考答案 c(1) = a(1) For i = 2 To 30 c(i) = a(i) Next c(31) = b(1) For j = 32 To 60 c(j) = b(j - 30) Next For i = 1 To 60 f = True For j = 1 To 59 If c(j) > c(j + 1) Then t = c(j) c(j) = c(j + 1) c(j + 1) = t f = False End If Next If f Then Exit For End If Next 步骤3:调试并运行程序,关闭程序后按题目要求存盘。

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

最新回复(0)