题目来源:大工慕课 链接
原题:Visual Basic程序设计教程(第二版)龚沛曾主编,高等教育出版社 实验1-6
作者:Caleb Sung
题目要求
编一子过程MaxLength(s,MaxWord),在已知的字符串s中,找出最长的单词MaxWord。假定字符串s内只含有字母和空格,空格分隔不同的单词。程序运行界面如图所示。
题目提示
- 首先利用Instr函数从s中从左边开始查找第一个出现的空格,利用Left函数分离出空格左边的单词,与MaxWord最长单词进行比较(MaxWord初态为空):
i=InStr(s," ") ' 找第一个出现的空格
Word=Left(s,i-1) ' 分离出空格左边的单词
word与MaxWord 比较决定是否替换为MaxWord
- 取S中剩余字符串,重复(1),直到S为空。
s=Mid(s,i+1) ' 取S中剩余字符串
操作提示
关于vb里如何设置textbox的滚动条
1、点击textbox,在属性中把MultiLine属性设置为True
2、在属性中设置ScrollBars的值,可以根据自己需要选择
0:无
1:水平滚动条
2:竖直滚动条
3:水平+竖直滚动条
参考代码
Private Sub Command1_Click()
Dim MaxWord$
Maxlength Text1 & " ", MaxWord
Text2 = MaxWord
End Sub
Sub Maxlength(s$, MaxWord$)
Dim Word$
MaxWord = ""
Do While s <> ""
i = InStr(s, " ")
Word = Left(s, i - 1)
If Len(Word) > Len(MaxWord) Then MaxWord = Word
s = Mid(s, i + 1)
Loop
End Sub