[单项选择题] 在窗体上画一个名称为Commandl的命令按钮。有下列程序: Option Base 1 Private Sub Command1_Click()Dim aa=Array(45,2

17 查阅

[单项选择题] 在窗体上画一个名称为Commandl的命令按钮。有下列程序: Option Base 1 Private Sub Command1_Click()Dim aa=Array(45,27,34,24,91,37,11,67,82,63)For i = 1 To 9 For i = i + 1 To 10 If a(i)> a(j)Thena1 = a(i)a(i) = a(j)a(j) = a1 End If Next jNext iFor i = 1 To 10 Print a(i)Next i End Sub 程序运行后,单击命令按钮,则窗体上第2行和第3行显示的内容是

A.27和34

B.34和24

C.45和63

D.24和27

参考答案:

D解析:[分析]: 冒泡排序是常用的一种排序方法,它是每次对两个数据进行比较的方法,本题中就是a(i)和a(j)进行比较,循环变量i和j的关系为j=i+1。由此,对同一个数组操作,i的范围应是1~9,而j的范围应是i+1~10。容易犯错误的地方就是取i的范围为1~10,这样势必会造成在对j进行操作时会出现j=11,因此产生数组下标溢出的错误。如果是“按升序排列”,那么就是将满足“a(i)>a(j)”条件时,将 a(i)和a(j)进行交换,数据交换时需要通过一个临时变量来进行。

计算机考试