16.某地2017.1-2017.2月的日期及日最高氣溫數據保存在數據庫中.現要求根據日最高氣溫,找出這兩個月中連續降溫的次數、連續最長降溫天數及其日期.小劉為此編寫了VB程序,程序運行時,單擊按鈕Commandl后,在標簽Labell和Label2上輸出運行結果.實現上述功能的VB代碼如下,但加框處代碼有錯,請改正. Dim a(1 To 59)As String’依次存儲2017.1-2017.2 月的日期數據 Dim b(1 To 59)As Integer’依次存儲2017.1-2017.2月的日最高氣溫數據 Private Sub Form_Load( ) ’本過程從數據庫中按2017.1-2017.2的日期次序,讀取日期和日最高氣溫數據,分別并存儲在數組a和數組b中 ’代碼略 End Sub Private Sub Commandl_Click( ) Dim d As Integer,n As Integer Dim dmax As Integer,m As Integer n=0:d=1:dmax=1 For i=2 To 59 d=d+1 Else d=1 End If If d=2 Then n=n+1 If d>dmax Then dmax=d m=i End If Next i Label 1.Caption=〃連續降溫次數〃& Str(n) Label 2.Caption=〃連續最長降溫日期為: &〃持續天數為:〃& Str(dmax) End Sub.
(填數字). (2)請在①②③橫線處填入合適的代碼. Dim a(1 To 20)As Integer Private Sub Command1_Click( ) Dim i As Integer,j As Integer Listl.Clear:List2.Clear Randomize ’產生20個無重復的隨機整數,范圍為[10,99],并存儲在數組a中 For i=1 To 20 a(i)=
j=1 For j=1 To i-1 If a(i)=a(j)Then i=i-1 Exit For’退出循環 End If Next j Next i For i=1 To 20 Listl.Addltem Str(a(i)) Next i End Sub Private Sub Command2_Click( ) Dim flag As Boolean,i As Integer,j As Integer Dim temp As Integer,num As Integer,last As Integer num=0:last=1 flag=True Do While
flag=False For
If a(j)>a(j-1)Then temp=a(j):a(j)=a(j-1):a(j-1)=temp last=j flag=True’有交換發生 End If Next j num=num+1 Loop For i=1 To 20 List2.Additem Str(a(i)) Next i Label3.Caption=〃本次排序的冒泡遍數為:〃& Str(num) End Sub.