应用题 1.  考生文件夹下有一个工程文件sjt5.vbp。在窗体Form1上有两个标题分别是“产生数据”和“重新排列”的命令按钮,有两个标题为“原始数据”和“排列数据”的标签。程序功能如下。
    ①单击“产生数据”按钮,则随机产生20个一位整数,存入数组a中,并同时显示在Text1中。
    ②单击“重新排列”按钮,则重新排列数组a中的元素:使等值的元素相邻存放,并且保持它们在数组a中首次出现的相对次序;最后将排列结果显示在Text2中。某一次运行结果如图所示。
   
【正确答案】[操作步骤]
   步骤1:打开本题项目工程。
   步骤2:打开代码编辑窗口,去掉程序中的注释符“'”,将问号改为正确的内容。
   参考答案(加粗部分是需考生填入的内容)
   Private Sub Command2_Click()
   i=1
   Do While i<20
   For j=i+1 To 20
   If a(i)=a(j) Then
   x=a(j)
   i=i+1
   For k=j To i+1 Step -1'本循环把下标为i到j-1的元素向后移一个位置
   a(k)=a(k-1)
   Next k
   a(i)=x
   End If
   Next j
   i=i+1
   Loop
   Text2.Text=" "
   For i=1 To 20
   Text2.Text=Text2.Text+Str(a(i))
   Next i
   End Sub
   步骤3:调试并运行程序,关闭程序后按题目要求存盘。
   
【答案解析】 本题利用三重循环对数组中的元素进行移动操作,按照题目的要求移动结束后,将数组元素依次显示到Text2文本框中。