在考生文件夹下有工程文件sj5.vbp及窗体文件sj5.frm,该程序是不完整的。在名称为Forml的窗体上有3个Label控件和2个命令按钮,命令按钮的名称为Commandl与Command2,标题为“读取”与“保存并退出”。考生文件夹下的数据文件in5

admin2012-10-09  32

问题 在考生文件夹下有工程文件sj5.vbp及窗体文件sj5.frm,该程序是不完整的。在名称为Forml的窗体上有3个Label控件和2个命令按钮,命令按钮的名称为Commandl与Command2,标题为“读取”与“保存并退出”。考生文件夹下的数据文件in5.txt存放一些字符。要求程序运行时,按“读取”按钮后,从考生文件夹下的in5.txt中读出数据并识别出其中的非字母元素,按“保存并退出”按钮后,将非字母元素写入考生文件夹下的out5.txt文件中(以标准格式在一行中输出);执行完毕,“读取”按钮变成“完成”,且无效(变灰),单击“保存并退出”按钮,程序结束,如图29—5所示。

    注意:请将程序代码补充完整,但不能修改其他部分。存盘时不得改变文件名和文件夹,相应的txt文件也保存到考生文件夹下,否则没有成绩。

选项

答案本题主要考查文件的读入,根据一定的条件筛选后再输出到另一个文件中。其中用到了判断是否读到文件尾函数EOF()、将字符转换成ASCII码函数Ase()和求字符串长度函数Len()。补充后的代码如下: Dim str As String Private Sub Commandl_Click() Dim tmp As String str="" Open"App.Path&\in5.txt"For Input As#1 ’打开文件准备读取 While EOF(1)=False’读取文件知道文件尾 Input#l,trap ’将读取的文本放人trap中 str=str+trap’将tmp放入字符串中 Wend Commandl.Enabled=False’Commandl不可用 Commandl.Caption="完成" ’Commandl的Caption属性变为完成 End Sub Private Sub Command2_Click() Dim rel As String Dim tmp As String Dim i As Integer rel="" For i=1 To Len(str) ’利用for循环遍历字符串 tmp=Mid(str,i,1) ’逐个取出用来判断 If Asc(tmp)Asc("z")Then rel=rel+trap’如果不是字母,则放人输出字符串中 End If Next i Open"App.Path &\out5.txt"For Output As#2 Print#2,rel’将得到的字符串写入文件 Close#2 Unload Me End Sub 单击[*]按钮运行程序,并按要求保存。

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

最新回复(0)