有如下VB程序段: n = 8 For i = 1 To n a(i) = Int(Rnd() * 10) + 1 Next i For i = 1 To n \ 2 If a(i) < a(i + 1) Then p = i: q = i + 1 Else p = i + 1: q = i For j = i + 2 To n - i + 1 If a(j) < a(p) Then q = p: p = j ElseIf a(j) < a(q) Then q = j End If Next j If i <> p Then t = a(p): a(p) = a(i): a(i) = t If i = q Then q = p If n - i + 1 <> q Then t = a(q): a(q) = a(n - i + 1): a(n - i + 1) = t Next i 执行该程序段后,a(1)~a(8)各元素可能的值为( )。
A . 1,2,4,6,7,8,9,10
B . 2,6,8,9,11,9,7,5
C . 10,8,6,5,3,6,7,9
D . 1,3,5,8,10,7,5,3
答案:D