题型:单选题 题类:常考题 难易度:普通
浙江省高中信息技术 排序算法及程序实现同步练习
For i=1 To 3
For j=8 To i+1 Step-1
If a(j) < a(i) Then
t=a(j): a(j)=a(i): a(i)=t
End If
Next j
Next i
数组元素a(1)到a(8)的值依次为“35, 18, 14, 20, 30, 15, 28, 26”,运行该程序段后,a(5)到a(8)的值依次是( )
排序前 |
86 |
71 |
5 |
41 |
81 |
79 |
37 |
89 |
排序后 |
5 |
37 |
41 |
71 |
79 |
89 |
86 |
81 |
实现上述功能的VB代码如下,但加框处有错,请改正。
Const n=8
Dim a(1 To n)As Integer
Private Sub Commandl_Click()
Dim i As Integer,j As Integer,k As Integer,t As Integer
Dim flag As Boolean
'读取一组正整数,存储在数组a中,代码略
For i= 1 To n-1
'(1)
If IsPrime(a(k))Then flag = True Else flag = False
For j = i + 1 To n
If IsPrime(a(j)) Then
If Then '(2)
k=j
flag = True
End If
End If
Next j
If k <> i Then
t=a(k):a(k)= a(i):a(i)= t
End If
If Not flag Then Exit For 'Exit For表示退出循环
Next i
'依次输出排序后的数据。代码略
End Sub
Function IsPrime(m As Integer)As Boolean
'本函数判断m是不是素数:是素数返回值为True,不是素数返回值为False
'代码略
End Function
⑴{#blank#}1{#/blank#} ⑵{#blank#}2{#/blank#}
试题篮