16.任意一個大于2位的正整數(各個位上數全相同的除外,如111),如297,三個位上的數從大到小和從小到大各排一次,為972和279,相減,得693按上面做法再做一次,得到594,再做一次,得到495之后反復都得到495,495就為黑洞數.小麗編寫了一個查找4位正整數黑洞數的程序,功能如下: 在文本框(text1)中輸入,一個任意的四位正整數(全相同的除外,如1111),點擊計算按鈕,在列表框(List1)中顯示計算結果,在標簽Label1中顯示找到的黑洞數,具體代碼如下所示,請完成下列問題: Dim su(1To 10)As Integer‘su(i)數組用來存放原始4位數和每次計算結果 Dim a(1To 4)As Integer‘用來存放4位數每一位上的值 Private Sub Command1_Click ( ) su(1)=Val(Text1.Text) su(2)=zp(su(1)) p=2 Do While su(p)<>su(p-1) p=p+1
Loop
For i=1To p List1.AddItem su(i) Next i Label1.Caption=Str(su(p)) End Sub
Function zp(m As Integer) As Integer a(1)=m Mod 10 a(2)=(m\10)Mod 10 a(3)=(m\100)Mod 10 a(4)=m\1000 For i=1To 3 For j=
Step-1 If a(j)>a(j-1)Then t=a(j):a(j)=a(j-1):a(j-1)=t End If Next j Next i
17.以下程序的功能是隨機生成20個1到100之間的正整數,用選擇排序法將其按從大到小的順序排列后輸出.請將下列程序補充完整. Private Sub Command1_Click
Dim a(20)As Integer,i As Integer Dim j As Integer,temp As Integer Prin“排序前:” For i=1 To 20 a(i)=Int(Rnd*100)+1 Print a(i); Next i Print For i=1 To 19 For
To 20 If
Then t=a(i) a(i)=a(j)
End If Next j Next i Print“排序后:” For i=1To 20 Print a(i); Next i End Sub (1)程序中橫線處①應填入