16.n(n<=1000)個數(shù)存儲在數(shù)組 a 中,給定一個整數(shù) p(1≤p≤n),將數(shù)組 a 的前 p 個數(shù)與后 n-p 個數(shù)對調,且不改變這 p 個數(shù)(或 n-p 個數(shù))之間的相對位置。例如數(shù)組 a 的各個數(shù)值分別是 1,2,3,4,5,當 p=2 時,重排結果為 3,4,5,1,2.小明為此編寫了 VB 程序,程序運行時,在文本框 Text2 中輸入 p 值,單擊按鈕 Command1 后,文本框 Text4 中輸出運行結果。實現(xiàn)上述功能的 VB 代碼 如下,但加框處代碼有錯,請改正。 Private Sub Command1_Click( ?。?nbsp;Dim a(1To 1000)As Single Dim p As Integer,i As Integer,j As Integer n=Val(Text1.Text) p=Val(Text2.Text) Text3.Text=““ For i=1To n a(i)=Int(Rnd*100)+1Text3.Text=Text3.Text+Str(a(i)) Next i For i=p+1To n
小李編寫了一個將楊輝 4 階幻方轉換為莫斯納幻方的 VB 程序,運行結果整齊地顯示在列表框中,程序運行界面如圖3 所示。請在橫線處填入合適的代碼。 Dim msy(1To 16)As Integer Dim msm(1To 16)As Integer Function adj(c As Integer) As String'變量前添加適當?shù)目崭?nbsp;Dim tmp1As String,n As Integer tmp1=CStr(c):n=5'CStr(x)函數(shù)是將數(shù)值變量 x 轉換成字符串類型,并把前導空格刪除。For i=1To n-Len(tmp1) tmp1=““+tmp1Next i adj=tmp1End Function Private Sub Form_Load ( ) '生成楊輝 4 階幻方顯示在 List1 中,并將數(shù)據(jù)按行依次放入 msy(1)至 msy(16)中,如 msy(1)=4,msy(2)=9 '上述操作代碼略 End Sub Private Sub Command1_Click ( ?。?br />Dim pb As Integer,tmp As Integer,i As Integer,line As String For i=1To 16'變化列 If i Mod 4=1Then ① ElseIf i Mod 4=3 Then pb=i-2 Else pb=pb+2 End If ② Next i For i=1To 8'交換行 If ③Then tmp=msm(i):msm(i)=msm(i+12):msm(i+12)=tmp Else tmp=msm(i):msm(i)=msm(i+4):msm(i+4)=tmp End If Next i line=““ List2.Clear For i=1To 16 If i Mod 4=1 Then List2.AddItem line line=adj(msm(i)) Else Line=line+adj(msm(i)) End If Next i List2.AddItem line End Sub