应用题 1. 在考生文件夹下有一个工程文件sjt3.vbp。程序运行后,单击“读入数据”按钮,可将考生文件夹下in3.txt文件中的所有英文单词读入,并在Text1文本框中显示;单击“插入列表框”按钮,则按顺序将每个单词作为一项添加到List1列表框中(如图所示)。
    在in3.txt文件中,每个单词之间用一个空格字符隔开,最后一个单词的后面没有空格。已经给出了所有控件和程序,但程序不完整。
    要求:请去掉程序中的注释符,把程序中的?改为正确的内容,使其能正确运行,但不能修改程序中的其他部分和控件属性。最后用原来的文件名保存工程文件和窗体文件。
   
【正确答案】【操作步骤】
   步骤1:打开本题工程文件。
   步骤2:打开代码编辑窗口,去掉程序中的注释符“'”,将问号改为正确的内容。
   参考答案(字体加粗部分是需考生填入的内容)
   private Sub Command1_Click()
   Dim st $,ch $
   Open App.Path& "\in3.txt" For Input As #1 '打开文件
   Do While Not EOF(1) '文件指针是否到达文件末尾
   Input #1,ch '达到文件末尾返回true,否则返回false
   st=st & ch '将读出的数据加到原有数据末尾
   Loop
   Close #1 '关闭文件
   Text1=st '将内容显示在文本框中
   End Sub
   Private Sub Command2_Click()
   Dim st $,word $,c $
   st=Text1
   n=Len(st)
   For k=1 To n
   c=Mid(st,k,1) '从st中依次取出1个字符进行比较
   If c<>""Then
   word=word & c
   Else
   List1.AddItem word
   word="" '将word清空,为下一次作准备
   End If
   Next
   List1.AddItem word
   End Sub
   步骤3:调试并运行程序,关闭程序后按题目要求存盘。
   
【答案解析】[考点] 本题考点有:列表框AddItem方法、Mid()函数、文件编辑、“&”连接符、Do While语句、Len()函数、For循环语句以及If判断语句。
本题首先要从文件中读入数据,再逐一检查文本框中每一个字符,如果发现空格则将其之前或两个空格之间的字符串作为一个单词用AddItem方法添加到列表框中。循环语句的上限为Len(st),赋值给变量n,判断语句的判断条件应为Mid(st,k,1)<>"",其中st=Text1.Text。每添加一个单词后清空变量word,将所取字符的起始位置加1,再次执行循环得到下一个单词。