在考生文件夹下有一个工程文件sj5.vbp,程序代码中已经写入部分代码,要求根据下面的描述在窗体模块中定义3个名称分别为readdatal、readdata2和writedata的Sub过程。 请先装入工程文件sj5.vbp,然后完成以下操作:

admin2009-08-26  23

问题  在考生文件夹下有一个工程文件sj5.vbp,程序代码中已经写入部分代码,要求根据下面的描述在窗体模块中定义3个名称分别为readdatal、readdata2和writedata的Sub过程。
    请先装入工程文件sj5.vbp,然后完成以下操作:
    在名称为Forml的窗体上画3个命令的按钮,其名称为Commandl、Command2和Command3,标题分别为“读取数据”、“计算”和“存盘”。程序运行后,如果单击“读取数据”按钮,则读入inl.txt和in2.txt文件中的各25个整数,分别放人a1和a2两个数组中:如果单击“计算”按钮,则把两个数组中对应下标的元素相加,其结果放人第3个数组中(即:第一个数组的第n个元素加上第2个数组的第n个元素,其结果作为第3个数组的第n个元素。这里的n为1,2,…,25),然后计算第3个数组各元素之和,并把所求得的和在窗体上显示出来;如果单击“存盘”按钮,则把所求得的和存人考生文件夹的out5.txt文件中。程序运行时的窗体界面如图27—5所示。

    注意:考生只需添加必要的控件,并将程序代码补充完整,使其实现上述功能即可。考生不得修改窗体文件中已经存在的程序,必须把求得的结果用“存盘”按钮存入考生文件文件夹下的out5.txt文件中,否则没有成绩。存盘时,工程文件名仍为sj5.vbp,窗体文件名仍为sj5.frm。

选项

答案 Visual Basic中要对文件操作,首先要先打开一个文件,然后对此文件进行读或写的操作,操作完成后,关闭文件。打开文件的基本格式为:Open FileName For Mode As#FileNumber。打开方式主要有Output、Append、Input、Random等几种方式。以Output、Append、Input方式打开的文件进行的读写操作都是以顺序方式进行的。其中Output、Append打开的文件主要用来输出数据,与Print#、Write#等方法配合使用;以Input方式打开的文件主要用来输入数据,它与Input#、LineInput#语句配合使用。以Random方式打开的文件主要用于随机文件的读与写,它不分Output与Input,统一使用Random标识。 本题原程序三个命令按钮的Click事件过程已给出,要求考生定义三个读或写文件的过程。文本文件是顺序文件,三个过程都用Open语句打开文件。其中WriteDate过程以Output的方式打开文件,并使用Print#语句输出数据;readdatal与readdata2以Input的方式打开文件,并使用Input#语句读入数据。Close#语句用于关闭打开的文件。App.Path用于取得当前工程文件所在的文件夹路径,App.Path&"\"&Filename指明了文件的物理位置。语句:Option Base l用于修改数组的下标默认从1开始编号。 题目给出的源程序如下: Option Base 1 Dim al(25)As Integer Dim a2(25)As Integer Dim Sum As Integer Private Sub Commandl_Click() readdatal readdata2 End Sub Private Sub Command2 Click() Dim a3(25)As Integer Sum=0 For i=1 To 25 a3(i)=al(i)+a2(i) Sum=Sum+a3(i) Next i Print"Sum=";Sum End Sub Private Sub Command3 Click() writedata"out5.txt",Sum End Sub 根据题意,readdatal、readdata2和writedata过程的参考代码如下: Sub readdatal() Open App.Path&"\inl.txt"For Input As#1 For i=1 To 25 Input#1,al(i) Next i Close#1 End Sub Sub readdata2() Open App.Path&"\in2.txt"For Input As#1 For i=1 TO 25 Input#1,a2(i) Next i Close#1 End Sub Sub writedata(FName As String,data As Integer) Open App.Path&"\out5.txt"For Output As#1 Print#1,data End Sub 单击[*]按钮运行程序,并按要求保存。

解析
转载请注明原文地址:https://jikaoti.com/ti/UQq0FFFM
0

最新回复(0)