[填空题] 下列程序的功能是:单击窗体时随机生成20个两位数依次赋值给一个由20个元素组成的数组,然后把数组反序存放,再输出。 Option base 1 Private Sub Form Click() Dim a(20)As Integer,i As Integer Dim t As Integer,j As Integer Randomize For i=1 To 20a=10+Int(90*Rnd)Print a(i); Next Print i=1: 【4】 Do While i<j t=a(i): 【5】 a(j)=t i=i+1: j=j-1 Loop For i=1 To 20Print a(i); Next i Print End Sub
正确答案:j=20 a(i)=a(j)
参考解析:数组逆序存放其实就是把数组的第一个元素和最后一个元素交换,第二个元素和倒数第二个元素交换,直到所有的元素都交换完毕。算法可描述如下:用变量i记下第一个元素的下标1,用变量j记下最后一个元素的下标20:交换a(i)和a(j);i加1指向后一个元素, j减1指向前一个元素:重复上述步骤,直到i≥j为止。【4】处应该填写j赋最后一个元素的下标,为"j=20"。【5】处是a(i)和a(j)交换的一条语句,应填“a(i)=a(j)”。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)