在考生文件夹下有一个工程文件sj5.vbp,窗体Forml上有两个标签、两个文本框与一个命令按钮。其中命令按钮的名称为Commandl、标题为“查找”;文本框的名称分别是Textl与Text2,内空;标签名称分别是Labell与Label2,标题为“查找内

admin2009-08-26  24

问题 在考生文件夹下有一个工程文件sj5.vbp,窗体Forml上有两个标签、两个文本框与一个命令按钮。其中命令按钮的名称为Commandl、标题为“查找”;文本框的名称分别是Textl与Text2,内空;标签名称分别是Labell与Label2,标题为“查找内容”、“查找结果”。窗体上给出了所有程序需要的控件,但程序代码是不完整的,请去掉程序中的注释符“’”,把程序中的“?”改为正确的内容。
    本程序的功能是:当在Textl中输入一个姓氏后,如果单击“查找”按钮,则在in5.txt中进行查找,若找到,就把所有与Textl中相同姓氏的姓名显示在Text2中,如图53—5所示;若未找到,则在Text2中显示“未找到!”;若Textl中没有查找内容,单击“查找”按钮,则在Text2中显示“未输入查找内容!”。

注意:考生不得修改程序的其他部分和控件的属性,把修改后的文件按原文件名存盘。

选项

答案本题程序功能描述为:先用Open语句打开文件in5.txt,用While循环的Input#方法读取文件,再判断若有输入,用For循环在in5.txt文件中逐一查找与Textl中内容相符的元素,相符的标准是Textl.Text=Mid(str(i),j,1),若有相匹配的,则在文本框中显示结果,若没找到则显示“未找到”,若Textl中未输入内容,则显示“未输入查找内容!”的提示。补充后的代码如下: Dim str()As String Dim num As Integer Dim rel As String Private Sub Commandl_Click() Dim tmp As String Dim j As Integer Dim i As Integer num=0 rel="" Open”App.Patb&\in5.txt”For Input As#1’打开文件进行读取 While EOF(1)=False’判断是否读取到文件末尾 Input#1,tmp num=num+1 ’获得字符串个数 Wend Close#1 ReDim str(num) ’重新分配数组控件 Open"App.Path&\in5.txt"For Input As#1 For i=1 To num Input#1,str(i) ’读取字符串数组 Next i Close#1 For i=1 To num’利用For循环进行查找 For j=1 To Len(str(i)) ’逐个字符查找 If Textl.Text=Mid(str(i),i,1)Then rel=rel+str(i)+"" ’将查找到的结果放人字符串中 Else j=j+1 ’如果没有查找则计数加1 End If Next j Next i If rel=""Then rel="未找到!" ’如果没有查找到则显示"未找到" End If If Textl.Text=""Then rel="未输入查找内容!" End If Text2.Text=rel’在Text2中显示结果 End Sub 单击[*]按钮运行程序,并按要求保存。

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

随机试题
最新回复(0)