用VB编写一个字符串分行程序,功能如下:单击“分行”按钮Command1将文本框Text1中的英文文本在列表框List1中分行显示(分行时单词不得跨行,每行字符尽可能多但不超过40个)并在标签Label1中输出总行数,运行效果如图所示。分行算法如下:⑴将文本框中的字符串保存到变量s中;
⑵当s中字符个数超过40时,循环执行下列①、②、③步,否则跳转到(3):
①如果第41个字符不是英文字母,则分行位置p = 40;否则,向左逐个查找,直至找到第一个非英文字母,将其位置作为分行位置p;
②截取s的前p个字符,作为新增行显示在列表框List1中,同时总行数加1 ;
③将s中未分行部分重新赋值给变量s。
⑶将s作为新增行显示在列表框List1中,同时总行数加1。
实现上述功能的VB程序如下,请在划线处填入合适代码。
Private Sub Commandl_Click()
Dim s As String,c As String
Dim r As Integer, total As Integer,p As Integer
total = 0
s ={#blank#}1{#/blank#}
Do While Len(s) > 40
r = 41
c = Mid(s,r,1)
If Not((c>= "a"And c<="z" ) Or (c>="A"Andc<="Z")) Then
p = 40
Else
’从第41个字符幵始向左找到第1个非英文字母,并将其位置值赋给p
Do While (c >= "a" And c <= "z") Or (c >= "A"
And c <= "Z")
r ={#blank#}2{#/blank#}
c = Mid(s,r,1)
Loop
p = r
End If
List1. Addltem Mid(s,1,p)
total = total + 1
s ={#blank#}3{#/blank#}
Loop
List1. AddItem s
total = total + 1
Labell. Caption ="共"+ Str(total) + "行"
End Sub