考生文件夹下有工程文件sjt5.vbp和数据文件in5.txt。in5.txt中有多条记录,每条记录占一行,含4个数据项,数据项的含义依次是:姓名、数学成绩、语文成绩、英语成绩。 窗体上按钮“读取数据”的功能是把in5.txt中的所有记录读到数组a

admin2015-10-23  33

问题 考生文件夹下有工程文件sjt5.vbp和数据文件in5.txt。in5.txt中有多条记录,每条记录占一行,含4个数据项,数据项的含义依次是:姓名、数学成绩、语文成绩、英语成绩。
    窗体上按钮“读取数据”的功能是把in5.txt中的所有记录读到数组a中(每个数组元素中有一条记录);按钮“排序”的功能是按总分从大到小排序,结果仍放在数组a中;按钮“保存”的功能是存盘,其代码已经给出,不能修改。
    请将事件过程中的注释符去掉,把?改为正确的内容,并编写“排序”按钮的事件过程。
    注意:考生不得修改窗体文件中已经存在的控件和程序,必须运行程序,并依次按下“读入数据”、“排序”、“保存”按钮,否则无成绩,最后将程序按原文件名存盘。

选项

答案步骤1:打开本题项目工程 步骤2:打开代码编辑窗口,去掉程序中的注释符“’”,将问号改为正确的内容。 Private Sub Command1_Click() Open App.Path&"\in5.txt"For Input As#1 k=1 Do While Not EOF(1) Input #1,a(k).name,a(k).Math,a(k).Chi。 nese,a(k).English k=k+1 Loop Close #1 num=k End Sub Private Sub Command2 Click() Dim temp As rec Dim i,j As Integer For i=1 To num For j=1 To num-i If sum(j)<sum(j+1)Then temp=a(j) a(j)=a(j+1) a(j+1)=temp End If Next j Next i End Sub 步骤3:调试并运行程序,关闭程序后按题目要求存盘。

解析 利用冒泡排序法对数组中的元素进行排序,冒泡排序法的算法思想为:对数组中n个元素按照升序或降序进行排列。利用循环结构对数组中相邻的两个元素进行比较,如果第i项小于第i+1项,则进行交换。这样经过n-1趟,便可以将数组中的元素排序完毕。
转载请注明原文地址:https://kaotiyun.com/show/WWLp777K
0

最新回复(0)