【加试题】编写一个VB程序,将一个长度为n的有序序列a(1)、a(2)、……a(n),以整数t(1≤t≤n)将该有序序列划分为两段,并将序列a的前t个数与后n-t个数对调,且保持这两段数(t个数和n-t个数)之间的相对位置不变(即t个数和n-t个数各自有序)。例如,长度为6的有序序列10、19、24、32、76、87,当t=2时重排结果为24、32、76、87、10、19。功能如下:在文本框Text1中输入n,单击“生成”按钮Command1后在列表框List1中显示n个有序数,在文本框Text2中输入t,单击“对调”按钮Command2,在列表框List2输出t个数与n-t个数对调后的数字序列。程序运行界面如下图所示。
实现上述功能的VB程序如下,请在划线处填入合适的代码。 Dim a(1 To 100)As Integer Dim n As Integer Private Sub Command1_Click() '生成n个有序数,显示在List1中 ’有序代码略 End Sub Private Sub Command2_ Click) Dim t As Integer,i As Integer,j As Integer,temp As Integer t=Val(Text2.Text) For Temp= For j=i To i+1-t Step -1 a(j)=a(j-1) Next j Next i For i=1 To n List2.AddItem Str(a(i)) Next i End Sub
答案:【1】n=val(text1.text)【2】i=t+1 to n【3】a(i)【4】a(j)=temp/a(i-t)=temp