考生文件夹下的工程文件sjt5.vbp中的窗体如图3-162所示。考生文件夹下的随机文件in5.dat中有20条记录,每条记录含姓名和三个分数(均为100以内的正整数)。在程序中已经定义了类型Recordtype,此类型变量可以存放一条记录。要求如下:

admin2016-01-31  46

问题 考生文件夹下的工程文件sjt5.vbp中的窗体如图3-162所示。考生文件夹下的随机文件in5.dat中有20条记录,每条记录含姓名和三个分数(均为100以内的正整数)。在程序中已经定义了类型Recordtype,此类型变量可以存放一条记录。要求如下:
    ①请为“计算最大最小值”按钮编写Click事件过程,其功能是:读取文件中的记录,计算每人的总分,找出其中最大总分和最小总分,分别放入变量maxval,minval中(这两个变量已经给出,不得修改)。
    ②运行程序,单击“计算最大最小值”按钮后再单击“存盘”按钮。
   
    注意:考生不得修改窗体文件中已经存在的控件和程序,在结束程序运行之前,必须依次单击“计算最大最小值”、“存盘”按钮,否则无成绩。最后,程序按原文件名存盘。

选项

答案审题分析 本题源程序设计思路:在“计算最大最小值”命令按钮的单击事件过程中,先用Open语句打开考生文件夹下的随机文件in5.txt;然后预定义最大值为0,最小值为300(3门课程总成绩不可能超过300),在For循环中,依次使用Get语句取出记录内容到自定义数据类型变量s,然后将s的各元素累加起来,并将总分(s中各元素的累加和)和预定义的最大值以及最小值进行比较,如果总分大于最大值则将其存入最大值,如果总分小于最小值则将其存入最小值,然后进行下一次循环判断下一条记录。 操作步骤 步骤1:打开考生文件夹中的本题工程文件sjt5.vbp,在代码编辑窗口的适当位置编写代码。 参考代码: Private Sub Command1_Click() Dim s As Recordtype Open"in5.dat"For Random As #1 Len=Len(s) maxval=0 minval=300 For k=1 To 20 Get #1,,s sumval=s.a1+s.a2+s.a3 If sumval>maxval Then maxval=sumval If sumval<minval Then minval=sumval Next k Close #1 End Sub 步骤2:运行程序,单击“计算最大最小值”命令按钮,然后单击“存盘”按钮。 步骤3:按要求将文件保存至考生文件夹中。 考点链接 随机文件、For循环结构。

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

最新回复(0)