在考生目录下有一个工程文件sjt5.vbp和文本文件in5.dat,其中有若干个用一个空格符隔开的英文单词。窗体上有2个命令按钮,其功能是: 单击“读数据”按钮,可以读入in5.dat文件中的所有内容并显示在文本框中。 单击“统计”按钮,能

admin2020-04-08  29

问题 在考生目录下有一个工程文件sjt5.vbp和文本文件in5.dat,其中有若干个用一个空格符隔开的英文单词。窗体上有2个命令按钮,其功能是:
    单击“读数据”按钮,可以读入in5.dat文件中的所有内容并显示在文本框中。
    单击“统计”按钮,能够统计长度为5的单词的个数和含有小写字母“a”的单词的个数,并把统计结果依次显示在Text2、Text3文本框中。
    要求:去掉程序中的注释符,把程序中的?改为正确的内容。
    编写函数found的代码。
注意:不能修改程序的其他部分和控件属性,必须通过单击窗体右上角的“×”结束程序,否则无成绩。最后把修改后的文件按原文件名存盘。

选项

答案【操作步骤】 步骤1:打开本题工程文件。 步骤2:打开代码编辑窗口,填入相应的代码以实现题目的功能。 参考答案(划线部分是需要填入的内容) Option Base 1 Dim s As String Private Sub Commandl_Click() Open App.Path&"\in5.dat"For Input As#1 Line Input#1.s Close#l Textl.Text=s End Sub Private Sub Command2_Click() If kn(s)=0 Then MsgBox"请先使用“读数据”功能!". Else ch$ ="" For k=l To Len(s) c=Mid(s,k,1) If C<>""Then ch=ch+c Else IfLen(ch)=5 Then m=m+l End If If found(ch,"a")Then n=n+1 End If ch="" End If Next k Text2.Text=m Text3.Text=n End If End Sub Private Function found(st As String,ch As String) As Boolean ′*****************************考生编写*********************************** For k=1 To Len(st) a=Mid(st,k,l) If a=ch Then Found=True Exit Function End If Nxet k Found=False ′*******************************考生编写结束********************************* End Function Private Sub Form_Unload(Cancel As Integer) Open App.Path&"\out5.dat"For Output As#1 Prnt#1.Text2.Text,Text3.Text Close#l End Sub 步骤3:调试并运行程序,单击“读数据”按钮,再单击“统计”按钮,结果如图5.5所示,最后关闭程序后按题目要求存盘。 [*]

解析 Mid()函数的作用是从一个字符串中截取出指定数量的字符。对取得的字符串s的每一个字符进行遍历,若字符不为空格,则将遍历的字符进行拼接;若字符为空格,则对拼接的字符长度进行判断,若为5个字符,则长度为5的单词个数加1;再对拼接的字符是否含有“a”进行判断,若存在字符“a”,则含有字母“a”的单词个数加1。
转载请注明原文地址:https://kaotiyun.com/show/SNTp777K
0

最新回复(0)