3. 综合应用(1小题,计30分)
注意:下面出现的“考生文件夹”均为%USER%
在考生文件夹下有一个工程文件sjt5.vbp, 其窗体上有二个标题分别为“读数据”和“统计”的命令按钮。请画二个标签,其名称分别是 Label1和Label2, 标题分别为“单词的平均长度为”和“最长单词的长度为”;再画二个名称分别为 Text1和Text2,初始内容为空的文本框,如图所示。程序功能如下:
1)如果单击“读数据”命令按钮,则将考生文件夹下 in5.dat文件的内容读到变量s中(此过程已给出);
2)如果单击“统计”按钮,则自动统计变量s(s中仅含有字母和空格,而空格是用来分隔不同单词的)中每个单词的长度,并将所有单词的平均长度(四舍五入取整)显示在 Text1文本框内,将最长单词的长度显示在Text2文本框内。
“读数据”命令按钮的Click事件过程已经给出,请为“统计”命令按钮编写适当的事件过程,实现上述功能。
注意:
考生不得修改窗体文件中已经存在的控件和程序, 在结束程序之前,必须进行统计, 且必须通过单击窗体右上角的“关闭”按钮结束程序,否则无成绩。最后,程序按原文件名存盘。
解题思路:
启动Visual Basic系统,打开考生文件夹下需编辑的工程文件sjt5.vbp,相应的窗体文件名为sjt5.frm。
由于所提供的窗体控件不完整,需画二个标签控件,通过其属性窗口将名称分别设为 Label1和Label2,标题(Caption属性)分别设为“单词的平均长度为”和“最长单词的长度为”。画二个文本框控件,通过其属性窗口将名称分别设为Text1和Text2,初始内容(Text属性)均设为空。
由于所提供的窗体程序不完整,需在“统计”命令按钮的Click事件过程中加入语句:
Private Sub Command2_Click()
'需考生编写
n = Len(s): t = ""
Dim word_max As Integer, word_num As Integer, word_len As Integer
For i = 1 To n
c = Mid(s, i, 1)
If c <> " " Then
t = t + c
Else
word_len = word_len + Len(t)
word_num = word_num + 1
If Len(t) > word_max Then
word_max = Len(t)
End If
t = ""
End If
Next i
Text1.Text = CInt((word_len + Len(t)) / (word_num + 1))
If Len(t) > word_max Then
word_max = Len(t)
End If
Text2.Text = word_max
End Sub
参考文件:c:/wexam/26990001/hlpsys/参考答案/sjt5.vbp、sjt5.frm、sjt5.vbw、out5.dat
请把这些文件复制到c:/wexam/26990001中,然后打开sjt5.vbp文件并运行。
① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;
② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。