问题 单项选择题

运行下列过程,当输入一组数据:10,20,50,80,40,30,90,100,60,70,输出的结果应该是()。

Sub p1( )

Dim i, j, arr(11) As Integer

k = 1

while k <= 10

arr(k) = Val(InputBox(“请输入第” & k & “个数:”, “输入窗口” ))

k = k + 1

Wend

For i = 1 To 9

j = i + 1

If arr(i ) > arr(j) Then

temp = arr(i)

arr(i) = arr(j)

arr(j) = temp

End If

Debug.Print arr(i)

Next i

End Sub

A.无序数列

B.升序数列

C.降序数列

D.原输入数列

答案

参考答案:A

解析:

本题中的While循环用来进行10个数据的输入操作,存放在数组arr()中,之后的For循环是一个单循环,i从1开始,每次递增1,循环 9次,之后判断前一个数是否大于后一个数,如果大于则两者交换,之后输出。当i=1时,j=2,arr(1)小于arr(2)不交换,输出arr(1)为 10。以此类推,输出arr(2)为20,arr(3)为50。当i=4时,j=5,arr(4)大于arr(5),两者交换,输出arr(4)为交换后 的40,由此可以看出结果是无序数列。故本题答案为A)。

判断题
单项选择题