【加试题】随机产生一个存有两位整数组a,先排序,然后进行数据重组,使被排序的数据呈现中间小,并逐次向两边增大。小李编写了该VB程序,运行程序时,在列表框List1中显示排序前数据,单击“重组”按钮Command2,在列表框List2中显示“重组”后的数据,程序运行界面如图所示。
实现上述功能的VB程序如下,但加框处代码有错,请改正。 Dim a(0 To 20)As Integer,d(0 To 20)As Integer Dim n As Integer Private Sub Command1_Click() ‘产生n个[10,99]之间的随机整数,存储在a(0 To n-1)中,同时显示在List1中,代码略 End Sub Private Sub Command2_Click() Dim i As Integer n=Val(Text1.Text) For i=0 To n-2 For j=i+1 To n-1 If Then ‘(1) temp=a(i):a(i)=a(j):a(j)=temp End If Next j Next i If n Mod 2<>0 Then d(n\2)=a(n-1) ‘个数为奇数,最小值放中间位置 For i=0 To n\2—1 d(i)=a(i*2) =a(2*i+1) ‘(2) Next i ‘在列表框List2中输出数组d,代码略 End Sub
(1)
处加框代码应改为;
(2)
处加框代码应改为。
答案: 【1】a(i)<a(j)
【1】d(n-i-1)