应用题 5.考生文件夹下有工程文件sjt5.vbp。窗体的设计界面、各控件初始属性设置及有关代码见窗体文件。
考生文件夹下in5.dat文件中保存有一篇英文文章,并有如下要求和限制:
文章中除英文单词外,还可含有英文圆括号“()”、逗号“,”、句号“.”、连字符“一”等标点符号和空格符。
英文单词间可由一至多个空格符分隔或标点符号分隔。
(3)标点符号前后可以有零至多个空格符。
(4)连字符(一)可出现在行内两个单词间或行末,前后不允许有空格符或其他标点符号,连字符两边连接的两个单词视为一个单词。当连字符出现在行末时,表示下一行的第一个单词与本行末的单词为一个单词。
程序的功能是,当程序运行时,单击“读取并统计”按钮,则按行读取in5.dat文件的内容,并显示到文本框Textl中,同时调用函数过程CountWords统计该行出现的单词数。当文章内全部内容统计结束后,统计结果显示在文本框Text2中;单击“保存”按钮,则保存结果。
“读取并统计”和“保存”按钮的Click事件过程已经给出,请编写CountWords过程中的代码,以实现上述功能。程序运行界面示意图如图所示。
【正确答案】【操作步骤】
步骤1:打开本题工程文件。
步骤2:打开代码编辑窗口,填入相应的代码以实现题目的功能。
参考答案(阴影部分是需要填入的内容)
Option Base l
Dim TotalWords As Integer
Private Function CountWords(s As String)As Integer
′========================
考生编写的程序=================
【答案解析】Line Input语句用于读取顺序文件中一行全部字符,直到遇到回车符为止,故函数Cou-ntWords()的参数为每次读取的一行字符。判断一个字符是否为英文字母,可以将该字符转换为大写,再判断该字符是否满足大于等于“A”且小于等于“Z”,若满足,则为英文字母。