📄 排序.frm
字号:
VERSION 5.00
Begin VB.Form 排序算法
AutoRedraw = -1 'True
Caption = "排序算法"
ClientHeight = 4845
ClientLeft = 60
ClientTop = 345
ClientWidth = 9900
BeginProperty Font
Name = "Arial Black"
Size = 21.75
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
LinkTopic = "Form1"
ScaleHeight = 4845
ScaleWidth = 9900
StartUpPosition = 3 '窗口缺省
Begin VB.CommandButton cmdMP
Caption = "冒泡法"
Height = 735
Left = 7080
TabIndex = 6
Top = 3900
Width = 1515
End
Begin VB.CommandButton cmdXZ
Caption = "选择法"
Height = 795
Left = 3900
TabIndex = 5
Top = 3840
Width = 1695
End
Begin VB.CommandButton cmdHH
Caption = "互换法"
Height = 795
Left = 1080
TabIndex = 2
Top = 3840
Width = 1635
End
Begin VB.Label lblSorted
BackColor = &H8000000E&
Height = 855
Left = 60
TabIndex = 4
Top = 2640
Width = 9735
End
Begin VB.Label lblOrgNum
BackColor = &H8000000E&
Height = 795
Left = 120
TabIndex = 3
Top = 960
Width = 9675
End
Begin VB.Label Label2
Caption = "排序后: "
Height = 675
Left = 120
TabIndex = 1
Top = 1860
Width = 1695
End
Begin VB.Label Label1
Caption = "排序前: "
Height = 675
Left = 120
TabIndex = 0
Top = 180
Width = 1695
End
End
Attribute VB_Name = "排序算法"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Const N As Integer = 10
Dim S(1 To N) As Integer
Dim St$
Private Sub cmdHH_Click()
'互换排序核心算法
For I = 1 To N - 1
For J = I + 1 To N
If S(J) > S(I) Then
t = S(I)
S(I) = S(J)
S(J) = t
End If
Next J
Next I
'输出这N个排序后的数
St = ""
For I = 1 To N - 1
St = St + Str(S(I)) + ","
Next I
St = St & S(N)
lblSorted = St
End Sub
Private Sub cmdMP_Click()
'冒泡法排序核心算法
For I = 1 To N - 1
iMax = I
For J = 1 To N - I
If S(J) > S(J + 1) Then
t = S(J)
S(J) = S(J + 1)
S(J + 1) = t
End If
Next J
Next I
'输出这N个排序后的数
St = ""
For I = 1 To N - 1
St = St + Str(S(I)) + ","
Next I
St = St & S(N)
lblSorted = St
End Sub
Private Sub cmdXZ_Click()
'选择法排序核心算法
For I = 1 To N - 1
iMax = I
For J = I + 1 To N
If S(J) > S(iMax) Then iMax = J
Next J
t = S(I)
S(I) = S(iMax)
S(iMax) = t
Next I
'输出这N个排序后的数
St = ""
For I = 1 To N - 1
St = St + Str(S(I)) + ","
Next I
St = St & S(N)
lblSorted = St
End Sub
Private Sub Form_Load()
'产生N个随机数
For I = 1 To N
S(I) = Int(Rnd() * 100)
Next I
'输出这N个随机数
St = ""
For I = 1 To N - 1
St = St + Str(S(I)) + ","
Next I
St = St & S(N)
lblOrgNum = St
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -