注意:下面出现的“考生文件夹”均为%USER%。 在考生文件夹下有一个工程文件sjt5.vbp,考生文件夹下in5.dat文件中保存有一篇英文短文。程序运行时,单击“读取并统计”按钮,则按行读取in5.dat文件的内容,并显示到文本框Text1中,

admin2017-07-28  28

问题 注意:下面出现的“考生文件夹”均为%USER%。
    在考生文件夹下有一个工程文件sjt5.vbp,考生文件夹下in5.dat文件中保存有一篇英文短文。程序运行时,单击“读取并统计”按钮,则按行读取in5.dat文件的内容,并显示到文本框Text1中,同时调用Calculate过程统计每个英文字母(不区分大小写)及其出现的次数,并按字母顺序保存到二维数组data中,统计结束后,按字母顺序将统计结果显示到列表框List1中(字母用小写表示,且不含文中未出现的字母);单击“保存”按钮,则保存结果。“读取并统计”和“保存”按钮的cliek事件过程已经给出,请编写Calculate过程中的代码以实现上述功能。程序运行界面示意图如图所示。
    注意:考生不得修改窗体文件中已经存在的控件和程序,在结束程序运行之前,必须进行“读取并统计”,且必须单击“保存”按钮保存结果,否则无成绩。最后,程序按原文件名存盘。

选项

答案步骤1:打开本题项目工程。 步骤2:打开代码编辑窗口,填入相应的代码以实现题目的功能。 参考答案 Private Sub Calculate(s As String,d()As Variant) Dim ch As String Dim i As String For i=1 To Len(s) Ch=Asc(LCase(Mid(s,i,1))) If ch >= 97 And ch< =122 Then d(ch-96,1)=Chr(ch) d(ch-96,2)= d(ch-96,2)+1 End If Next i End Sub 步骤3:调试并运行程序,关闭程序后按题目要求存盘。

解析 Calculate过程中利用For循环逐个取出文本字符串s中的字符,然后将所有字符使用LCase函数转换为小写,小写字母的ASCII码取值范围为65到90之间,再将每个字母及其出现的次数存储到二维数组d中。
转载请注明原文地址:https://jikaoti.com/ti/Rfy0FFFM
0

最新回复(0)