16.編寫輸出所有字符串子串的VB程序,實現如下功能:在文本框Text1中輸入一串不重復的字符串,單擊命令按鈕“子串”Command1后,在列表框List1中輸出該字符串的所有子串和子串的總數。程序運行界面如圖所示,VB程序代碼如下。 程序代碼中,語句加框處有錯,請改正。 Private Sub Command1_Click ( ) Dim s As String,sum As Integer Dim i As Integer,j As Integer List1.Clear s=Text1.Text n=len(s) ’(1) For i=1To n For j=1To n-i+1 List1.AddItem ’(2) sum=sum+1 Next j Next i List1.AddItem“總共有“+Str(sum)+“個子串“ End Sub
17.小王用VB編寫一個自動統計英文字母和單詞個數的程序。功能如下:在文本框Text1中輸入任意的英文句子,單擊“統計”命令按鈕Command1,程序自動統計出每個字母出現的頻率,并將其輸出到列表框List1,且將出現次數最多的字母輸出在標簽Label1中,另外將單詞個數在標簽label2中輸出。程序界面如圖所示,實現上述功能的VB程序如下。請回答以下問題: (1)請在橫線處填入合適的代碼。 Private Sub Command1_Click ( ) Dim a(65To 122)As Integer Dim i As Integer,ch As String,count As Integer Dim Max As Integer,Maxi As Integer,flag As Boolean List1.Clear flag=False count=0 s=Text1.Text For i=1To Len(s) ch=Mid(s,i,1) If ch>=“a“And ch<=“z“Or ch>=“A“And ch<=“Z“Then a(Asc(ch))=①
If flag=False Then count=count+1 flag=True End If Else ②
End If Next i Max=0:Maxi=0 For i=65To 122’A的ASCII碼值為65,a的ASCII碼值為97 If a(i)>0Then List1.AddItem Chr(i)+“:“+Str(a(i)) End If[ If a(i)>Max Then Max=a(i) Maxi=i End If Next i Label1.Caption=“頻率最高字母:“+③
Label2.Caption=“共有單詞數:“+Str(count)+“個“ End Sub (2)從代碼可知,當出現兩個以上的字母次數最高時(例如字母a和d都出現4次,且為最高次數),則程序最終輸出的是