用VB编程,求输入的英语句子中单词的平均长度

例如:句子 All things are difficult before they are easy.中单词的平均长度为4.75.

控件:1个文本框,1个按钮

代码:

Private Sub Command1_Click()
a = Len(Text1.Text)
b = 0
For i = 1 To a
If " " = Mid(Text1.Text, i, 1) Then
b = b + 1 '统计空格数
End If
If "," = Mid(Text1.Text, i, 1) Or "." = Mid(Text1.Text, i, 1) Then
c = c + 1 '统计逗号和句号
End If
Next
MsgBox Str((a - b - c) / (b + 1))
End Sub

注意,如果出现冒号或者感叹号的话,需要对c的判断条件进行一下修正。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-21
Private Sub Command1_Click()
a = Len(Text1.Text)
b = 0
For i = 1 To a
If " " = Mid(Text1.Text, i, 1) Then
b = b + 1 '统计空格数
End If
If "," = Mid(Text1.Text, i, 1) Or "." = Mid(Text1.Text, i, 1) Then
c = c + 1 '统计逗号和句号
End If
Next
MsgBox Str((a - b - c) / (b + 1))
End Sub
第2个回答  2013-04-20
额 我的想法是这样
声明一个数组,把每个单词作为数组元素,然后用length函数求出每个单词的长度 ,然后除以数组下标+1