实践 选择法排序 练习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实践冒泡排序
1、实践目标
(1)理解冒泡排序算法。
(2)初步掌握冒泡排序算法的程序实现。
2、任务描述
(1)用随机数函数生成一批数据,存放在数组d(1 to 8)中,生成的数据显示在待排序列表框中。
(2)用冒泡排序算法,对d中的数据进行排序,结果显示在已排序列表框中。
3、操作提示
(1)算法分析对数组d进行冒泡排序的算法流程图所示
(2)界面设计。(已经设计好)
(3)数据生成。初始化随机数发生器,清空待排序列表框。取一个随机数,添加至街排序列表框,保存到数组d中,直到数组中存满数据。需要合使用的语句、函数功能说明如下:主要代码实现如下:
Private Sub Command2_Click() '产生8个随机数,范围为0<=X<=1000
Randomize '随机数初始化
List1.Clear '原始数据清空
List2.Clear '将排序后的列表数据清空
For i = 1 To _____
d(i) = __________ 'Rnd 函数返回的随机数介于0 和1 之间,可等于0,但不等于1 List1.AddItem Str(d(i)) '将数据显示到原始数据列表中
Next
End Sub
(4)冒泡排序算法。根据冒泡算法流程图填写完善下面的程序代码。
Private Sub Command1_Click() '对8个数进行冒泡法排序
List2.Clear '将排序后的列表数据清空
For i = 1 To_____ '选择第i个最小的数
Min = i
For_________ '如果找到更小的,用min记住它的编号If d(Min) > d(j) Then ________
Next j
If Min <> i Then '如果最小的数所在的位置不是i,则交换
k = d(i)
d(i) = d(Min)
__________
End If
Next i
For i = 1 To 8
List2.AddItem Str(d(i)) '在列表2中显示排序后的数据Next i
End Sub
(5)调试运行程序。
(6) (观赏FLASH流程图)并完成课本35页的体验