📄 cxc5.frm
字号:
VERSION 5.00
Begin VB.Form cxc05
BackColor = &H00C0E0FF&
Caption = "冒泡排序(bubblesort)"
ClientHeight = 7995
ClientLeft = 165
ClientTop = 255
ClientWidth = 10875
FillColor = &H008080FF&
ForeColor = &H0080FF80&
Icon = "cxc5.frx":0000
LinkTopic = "Form1"
MaxButton = 0 'False
OLEDropMode = 1 'Manual
ScaleHeight = 7995
ScaleWidth = 10875
Begin VB.Timer Timer2
Enabled = 0 'False
Interval = 5400
Left = 9600
Top = 4560
End
Begin VB.ListBox List3
BackColor = &H00FFC0C0&
Height = 1500
Left = 6120
TabIndex = 14
Top = 5760
Width = 3975
End
Begin VB.ListBox List2
BackColor = &H00FFC0C0&
Height = 1500
Left = 6120
TabIndex = 13
Top = 3480
Width = 3975
End
Begin VB.Timer Timer1
Enabled = 0 'False
Interval = 1000
Left = 4680
Top = 6960
End
Begin VB.TextBox Text1
BackColor = &H00FFC0C0&
Height = 855
Left = 6120
TabIndex = 12
Text = "Text1"
Top = 1800
Width = 3975
End
Begin VB.ListBox List1
BackColor = &H00C0FFC0&
BeginProperty Font
Name = "幼圆"
Size = 10.5
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 5520
Left = 840
TabIndex = 11
Top = 1680
Width = 4335
End
Begin VB.Frame Frame1
BackColor = &H00C0C0FF&
Height = 975
Left = 0
TabIndex = 0
Top = -120
Width = 11000
Begin VB.Label Label1
Alignment = 2 'Center
BackColor = &H00C0C0FF&
Caption = "导入程序"
Height = 255
Index = 2
Left = 1200
TabIndex = 10
Top = 600
Width = 855
End
Begin VB.Label Label12
Alignment = 2 'Center
BackColor = &H00C0C0FF&
Caption = "自动运行"
Height = 255
Left = 2280
TabIndex = 9
Top = 600
Width = 855
End
Begin VB.Label Label11
Alignment = 2 'Center
BackColor = &H00C0C0FF&
Caption = "暂 停"
Height = 255
Left = 3360
TabIndex = 8
Top = 600
Width = 855
End
Begin VB.Label Label10
Alignment = 2 'Center
BackColor = &H00C0C0FF&
Caption = "单步运行"
Height = 255
Left = 5400
TabIndex = 7
Top = 600
Width = 855
End
Begin VB.Label Label6
Alignment = 2 'Center
BackColor = &H00C0C0FF&
Caption = "继 续"
Height = 255
Left = 4440
TabIndex = 6
Top = 600
Width = 855
End
Begin VB.Label Label7
Alignment = 2 'Center
BackColor = &H00C0C0FF&
Caption = "输入数据"
Height = 255
Left = 6600
TabIndex = 5
Top = 600
Width = 855
End
Begin VB.Label Label8
Alignment = 2 'Center
Appearance = 0 'Flat
BackColor = &H00C0C0FF&
Caption = "递增排序"
ForeColor = &H80000008&
Height = 255
Left = 7800
TabIndex = 4
Top = 600
Width = 855
End
Begin VB.Label Label9
Alignment = 2 'Center
BackColor = &H00C0C0FF&
Caption = "返 回"
Height = 255
Left = 9840
TabIndex = 3
Top = 600
Width = 855
End
Begin VB.Image Image13
Height = 240
Left = 480
Picture = "cxc5.frx":0CCA
Top = 240
Width = 270
End
Begin VB.Image Image12
Height = 240
Left = 1560
Picture = "cxc5.frx":0E0C
Top = 240
Width = 240
End
Begin VB.Image Image11
Height = 225
Left = 2640
Picture = "cxc5.frx":0F0E
Top = 240
Width = 225
End
Begin VB.Image Image10
Height = 225
Left = 3720
Picture = "cxc5.frx":1008
Top = 240
Width = 225
End
Begin VB.Image Image5
Height = 270
Left = 5760
Picture = "cxc5.frx":1102
Top = 240
Width = 240
End
Begin VB.Image Image6
Height = 225
Left = 4680
Picture = "cxc5.frx":1214
Top = 240
Width = 225
End
Begin VB.Image Image7
Height = 240
Left = 6960
Picture = "cxc5.frx":130E
Top = 240
Width = 240
End
Begin VB.Image Image8
Height = 225
Left = 10200
Picture = "cxc5.frx":1410
Top = 240
Width = 225
End
Begin VB.Image Image9
Height = 240
Index = 0
Left = 8160
Picture = "cxc5.frx":150A
Top = 240
Width = 240
End
Begin VB.Label Label4
Alignment = 2 'Center
BackColor = &H00C0C0FF&
Caption = "说 明"
Height = 255
Left = 120
TabIndex = 2
Top = 600
Width = 855
End
Begin VB.Label Label13
BackColor = &H00C0C0FF&
Caption = "递减排序"
Height = 255
Left = 9000
TabIndex = 1
Top = 600
Width = 735
End
Begin VB.Image Image9
Height = 240
Index = 2
Left = 9240
Picture = "cxc5.frx":160C
Top = 240
Width = 240
End
End
Begin VB.Label Label5
Alignment = 2 'Center
BackStyle = 0 'Transparent
Caption = "经冒泡排序后递减序列为:"
Height = 255
Left = 6120
TabIndex = 17
Top = 5520
Width = 3975
End
Begin VB.Label Label3
Alignment = 2 'Center
BackStyle = 0 'Transparent
Caption = "经冒泡排序后递增序列为:"
Height = 255
Left = 6120
TabIndex = 16
Top = 3240
Width = 3975
End
Begin VB.Label Label2
Alignment = 2 'Center
BackStyle = 0 'Transparent
Caption = "您输入的待排序序列为:"
Height = 255
Left = 6120
TabIndex = 15
Top = 1560
Width = 3975
End
End
Attribute VB_Name = "cxc05"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'**********************************************
'* desinded dy 丞相 E_mail:cxc-0378@163.com *
'**********************************************
Dim i, k As Integer
Dim a(100), c(10) As Integer
Dim b(10) As Variant
Private Sub Form_Load()
cxc05.Left = (Screen.Width - Width) / 2
cxc05.Top = (Screen.Height - Height) / 2
i = 0
a(0) = 5: a(1) = 6: a(2) = 7: a(3) = 8: a(4) = 10: a(5) = 11: a(6) = 12: a(7) = 13
a(8) = 5: a(9) = 6: a(10) = 7: a(11) = 15
a(12) = 5: a(13) = 6: a(14) = 7: a(15) = 8: a(16) = 10: a(17) = 11: a(18) = 12: a(19) = 13
a(20) = 5: a(21) = 6: a(22) = 7: a(23) = 15
a(24) = 5: a(25) = 6: a(26) = 7: a(27) = 8: a(28) = 10: a(29) = 11: a(30) = 12: a(31) = 13
a(32) = 5: a(33) = 6: a(34) = 7: a(35) = 15
a(36) = 5: a(37) = 6: a(38) = 7: a(39) = 8: a(40) = 10: a(41) = 11: a(42) = 12: a(43) = 13
a(44) = 5: a(45) = 6: a(46) = 7: a(47) = 15
a(48) = 5: a(49) = 6: a(50) = 7: a(51) = 8: a(52) = 10: a(53) = 11: a(54) = 12: a(55) = 13
a(56) = 5: a(57) = 6: a(58) = 7: a(59) = 15
a(60) = 5: a(61) = 6: a(62) = 7: a(63) = 8: a(64) = 10: a(65) = 11: a(66) = 12: a(67) = 13
a(68) = 5: a(69) = 6: a(70) = 7: a(71) = 15
c(0) = 0: c(1) = 1: c(2) = 2: c(3) = 3: c(4) = 4: c(5) = 5: c(6) = 6: c(7) = 7: c(8) = 8: c(9) = 9
End Sub
Private Sub Picture1_Click()
End Sub
Private Sub Label1_Click(Index As Integer) '导入程序
List1.AddItem ("冒泡排序(递增)自动运行显示")
List1.AddItem ("bubblesort(int m)")
List1.AddItem ("{")
List1.AddItem ("int i,j;")
List1.AddItem ("int exchange;")
List1.AddItem ("for(i=1;i<m;i++){")
List1.AddItem ("exchange=0;")
List1.AddItem ("for(j=m-1;j>=1;j--)")
List1.AddItem ("if(r[j+1].key<r[j].key)")
List1.AddItem ("{")
List1.AddItem ("r[0].key=r[j+1].key;")
List1.AddItem ("r[j+1].key=r[j].key;")
List1.AddItem ("r[j].key=r[0].key;")
List1.AddItem ("exchange=1;")
List1.AddItem ("}")
List1.AddItem ("if (!exchange) return;")
List1.AddItem ("}")
List1.AddItem ("}")
End Sub
Private Sub Label10_Click()
Call Timer1_Timer
Call Timer2_Timer
End Sub
Private Sub Label11_Click() '暂停
Timer1.Enabled = False
Timer2.Enabled = False
End Sub
Private Sub Label12_Click() '自动运行
Timer1.Enabled = True
Timer2.Enabled = True
End Sub
Private Sub Label13_Click() '递减
Dim textstr As String
Call bubblesort(b, 1)
For i = 0 To 9
textstr = textstr + Str$(b(i)) + Space(1)
List3.AddItem "第" + Str$(i + 1) + "趟:" + textstr
Next i
End Sub
Private Sub Label4_Click() '说明
cxc07.Show
End Sub
Private Sub Label6_Click() ' 继续
Timer1.Enabled = True
Timer2.Enabled = True
End Sub
Private Sub Label7_Click()
Dim i As Integer
Dim textstr As String
For i = 0 To 9
b(i) = InputBox("请逐个输入待排序序列(10个):")
If b(i) = "" Then
Exit For
End If
textstr = textstr + Str$(b(i)) + Space(1)
Text1.Text = textstr
Next i
End Sub
Private Sub Label8_Click() '递增
Dim textstr As String
Call bubblesort(b, 0)
For i = 1 To 10
textstr = textstr + Str$(b(i)) + Space(1)
List2.AddItem "第" + Str$(i) + "趟:" + textstr
Next i
End Sub
Private Sub Label9_Click()
cxc05.Hide
cxc02.Show
End Sub
Sub bubblesort(s(), ByVal nOrder As Integer) '冒泡排序程序
Dim i, j
Dim TEMP
j = LBound(s) '不超出下界
While (j <= UBound(s)) '不超出上界
i = j
Do
If i > LBound(s) Then
If nOrder = 0 Then '递增排序
If s(i) < s(i - 1) Then
TEMP = s(i)
s(i) = s(i - 1)
s(i - 1) = TEMP
i = i - 1
Else
Exit Do
End If
ElseIf nOrder = 1 Then '递减排序
If s(i) >= s(i - 1) Then
TEMP = s(i)
s(i) = s(i - 1)
s(i - 1) = TEMP
i = i - 1
Else
Exit Do
End If
End If
Else
Exit Do
End If
Loop
j = j + 1
Wend
End Sub
Private Sub Timer1_Timer()
If (i <= 100) Then
List1.Selected(a(i)) = True
End If
i = i + 1
End Sub
Private Sub Timer2_Timer()
If (k <= 10) Then
List2.Selected(c(k)) = True
End If
k = k + 1
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -