小李基于選擇排序思想編寫了一個(gè)VB程序?qū)崿F(xiàn)數(shù)據(jù)排序,排序后奇數(shù)在前、偶數(shù)在后,奇數(shù)和偶數(shù)都按升序排序。具體功能如下:產(chǎn)生10個(gè)隨機(jī)整數(shù)存數(shù)組a,在列表框List中顯示,單擊“排序”按鈕Command1,對(duì)數(shù)組a排序后在列表框List2中顯示。程序運(yùn)行界面如圖所示,實(shí)現(xiàn)上述功能的ⅤB代碼如下:
Constn=10
Dima(0Ton)AsInteger
PrivateSubForm_Load ( ?。?br />′程序功能:產(chǎn)生n個(gè)隨機(jī)整數(shù)存數(shù)組a,在列表框Listl中顯示,代碼略。
Endsub
PrivateSubCommand1_Click ( ?。?br />DimiAsInteger,jAsInteger,kAsInteger,tAsInteger,flagAsBoolean
i=1:flag=True
DoWhileI<=n-1
IfflagThen
k=0:flag=False
Forj=iTon
Ifa(j)Mod2=1Then
IfThenk=j:flag=True‘改正:a(j)<a(k)or flag=falsea(j)<a(k)or flag=false
EndIf
Nextj
IfflagThen
IfI<>kThent=a(i):a(i)=a(k):a(k)=t
Else
i=i-1i=i-1
EndIf
Else
K=i
Forj=i+1Ton
Ifa(j)<a(k)Thenk=j
Nextj
Ifi<>kThent=a(i):a(i)=a(k):a(k)=t
EndIf
i=i+1
Loop
Fori=1Ton
List2.AddItemStr(a(i))
Endsub
(1)代碼“Privatesubcommand1_click ( ?。敝械腃lick是CC。(單選,填字母:A.對(duì)象名/B.屬性名/C.事件名)
(2)將程序代碼中橫線處代碼補(bǔ)充完整。
(3)程序代碼中的加框處代碼有誤,請(qǐng)改正。
(4)程序代碼中,flag值為truetrue表示該遍處理是挑選未排序奇數(shù)中的最小數(shù)據(jù)排到合適的位置。
【考點(diǎn)】冒泡排序算法及其實(shí)現(xiàn).
【答案】a(j)<a(k)or flag=false;i=i-1;C;true
【解答】
【點(diǎn)評(píng)】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/11/22 3:0:2組卷:16引用:2難度:0.3
相似題
-
1.有如下 Python 程序段:
運(yùn)行后列表中的值可能是( )發(fā)布:2024/12/18 21:0:2組卷:5引用:3難度:0.3 -
2.用VB編寫的函數(shù)bubble_sort是一個(gè)用冒泡方法實(shí)現(xiàn)排序的函數(shù),其調(diào)用時(shí)需要三個(gè)參數(shù):布爾類型參數(shù)sx來確定是升序還是降序,sx為True時(shí)為升序,否則為降序;整數(shù)型數(shù)組a
比如有一個(gè)整數(shù)型數(shù)組a(1 to 10)需要降序排序,可以直接這樣調(diào)用:
a
該函數(shù)VB代碼如下:
Function bubble_sort(sx As Boolean,a
Dim i,j,t As Integer
For i=1 To n-1
For j=
If
If a(j)<a(j-1)Then t=a(j):a(j)=a(j-1):a(j-1)=t
Else
If a(j)>a(j-1)Then t=a(j):a(j)=a(j-1):a(j-1)=t
End If
Next j
Next i
bubble_sort=a
End Function
請(qǐng)將代碼補(bǔ)充完整:
①
②發(fā)布:2024/12/20 20:30:1組卷:23引用:2難度:0.3 -
3.用選擇排序法對(duì)一組數(shù)據(jù)進(jìn)行升序排序,第一趟排序結(jié)束后的順序?yàn)?、6、9、3、7,則原始數(shù)據(jù)順序不可能的是( )
發(fā)布:2024/12/18 23:0:1組卷:10引用:1難度:0.5
把好題分享給你的好友吧~~