在考生文件夹下有工程文件sj5.vbp及窗体文件sj5.frm,该程序是不完整的。在名称为Forml的窗体画两个Label控件,名称分别为Labell和Label2,其中Labell中显示“总人数”,Label2中显示“总分”,添加两个名称分别为Textl

admin2010-07-13  30

问题    在考生文件夹下有工程文件sj5.vbp及窗体文件sj5.frm,该程序是不完整的。在名称为Forml的窗体画两个Label控件,名称分别为Labell和Label2,其中Labell中显示“总人数”,Label2中显示“总分”,添加两个名称分别为Textl和Text2的文本框,再画两个命令按钮,名称分别为Commandl与Command2、标题分别为“读取数据”与“计算总分”,数据文件in5.txt存放成绩。
    要求程序运行后:单击“读取数据”按钮后,从考生文件夹下的in5.txt中读出数据,并在标签Textl中显示人数;单击“计算总分”便在Text2中显示总分并将结果写入考生文件夹下out5.txt文件中;执行完毕,“读取数据”按钮变成“读取完成”,且无效(变灰),如图60一5所示。

    注意:请在有“?”号的地方填入正确内容,然后删除“?”及代码前的所有注释符(即“’”号),但不能修改其他部分。存盘时不得改变文件名和文件夹,程序编写完整后执行一次操作,将结果保存到考生文件夹下的out5.txt文件中,否则没有成绩。

选项

答案 本题主要考查文件的读取和求和计算。打开顺序文件的基本格式为:Open FileName For Mode As#FileNumber。FileName表示要打开的文件的路径;Mode为打开模式,OutPut用于输出、Append用于追加写入、Input用于读取;FileNumber为打开文件时指定的句柄。 本题在读文件时,用While循环和Input#语句读入数据,以EOF(文件号)=False为循环条件.EOF(文件号)用于判断是否读到文件结尾。补充后的代码如下: Dim hum As Integer Dim arr()As Integer Private Sub Commandl_Click() Dim a As Integer num=0 Open App.Path&"\in5.txt"For Input As # 1 ’第一次读取个数以便分配数组 While EOF(1)=False ’在读到文件尾前一直读取 Input#1,a num=num+1 ’计数 Wend Close#1 ’关闭文件 ReDim arr(num)As Integer’重新分配数组控件 Open App.Path&"\in5.txt"For Input As#1 ’打开文件准备读取 For i=1 To nkllTl Input#1,arr(i) ’利用For循环读取 Next i Close#1 Textl.Text=nLlm ’在Textl中显示个数 Commandl.Enabled=False’Commandl变为不可用 Commandl.Caption="读取完成" ’Commandl的Caption属性变为“读取完成” End Sub Private Sub Command2_Click() Dim total As Long total=0 Dim i As Integer For i=1 To nUlTI’for循环 total=total+arr(i) ’求数组中所有数的和 Next i Text2.Text=total’在Text2中显示总分 Open App.PathS"\out5.txt"For Output As#1 Write#1,total Close#1 End Sub 单击[*]按钮运行程序,并按要求保存。

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

最新回复(0)