填空题 下面程序的功能是把文件file1.txt中重复的字符去掉后(即若有多个字符相同,则只保留1个)写入文件file2.txt。请填空。 Private Sub Commana1_Click() Dim inchar As String,temp As String,outchar As String outchar="" Open "file1.txt" For Input As #1 Open "file2.txt" For Oulput As{{U}} {{U}} {{/U}} {{/U}} n=LOF({{U}} {{U}} {{/U}} {{/U}}) inchar=Input$(n,1) For k=1 To n temp=Mid(inchar,k,1) IfInStr(outchar,temp)={{U}} {{U}} {{/U}} {{/U}}Then outchar=outchar & temp End If Next k Ptint #2,{{U}} {{U}} {{/U}} {{/U}} Close #2 Close #1 End Sub
  • 1、
【正确答案】 1、[8] #2 [9] 1 [10] 0 [11] outchar    
【答案解析】[解析] Open语句的基本语法是Open "文件名"(可包含路径)For 模式 As 文件号 [Len=记录长度]。模式为以下形式之一: Output:打开一个文件,将对该文件进行写操作。 Input:打开一个文件,将对该文件进行读操作。 Append:打开一个文件,将在该文件末尾追加记录。 如果未指定方式,则以Random访问方式打开文件。 文件号是一个介于1~511之间的整数。当打开一个文件并为它指定一个文件号后,该文件号就代表该文件,直到文件被关闭后,此文件才可以再被其他文件使用。由“Print #2,{{U}} 【11】 {{/U}}”可知,该题的第1空应该填#2。 LOF函数是用来返回已打开文件的长度。将#1文件的长度作为循环变量,所以该题的第2空应该填1。 Input$(读取的字符数,#文件号):该函数可以读取指定数目的字符。Mid(s,index,length)用来从字符串s中的第 index字符开始连续取出length个字符。InStr([首字符位置]字符串1,字符串2[,n])用来在“字符串1”中查找“字符串2”,如果找到,则返回“字符串2”的第一个字符在“字符串1”中的位置。“&”:字符串连接运算符,将两个字符串按顺序连接起来。For循环的作用是将#1文件中出现过的字符不重复地连接起来(即若同一字符出现多次,则只保留一个)赋给outchar变量,所以该题的第3空应该填0。 将数据写入磁盘文件所用的命令是Write #或Print #命令,形式为Print #文件号,[输出列表]。由程序可知是将字符串变量outchar中的内容写到#2文件中,所以该题的第4空应该填outchar。