冒泡法排序的动画演示课程设计

冒泡法排序的动画演示课程设计

ID:8483978

大小:270.50 KB

页数:14页

时间:2018-03-29

冒泡法排序的动画演示课程设计_第1页
冒泡法排序的动画演示课程设计_第2页
冒泡法排序的动画演示课程设计_第3页
冒泡法排序的动画演示课程设计_第4页
冒泡法排序的动画演示课程设计_第5页
资源描述:

《冒泡法排序的动画演示课程设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、沈阳航空航天大学课程设计学号:15班级:姓名:赵炀指导教师:鲁墨武2011年7月4日沈阳航空航天大学设计用纸沈阳航空航天大学课程设计任务书学院:机电工程学院专业:机械设计制造及其自动化班级:学号:15题目:“冒泡法”排序的动画演示一、课程设计时间2011年6月27日~7月1日。二、课程设计内容用控件数组技术实现动画演示,用冒泡法对一组随机数据(≥8个)由小到大排序,演示排序过程中元素变换的完整过程。要求:排序过程中欲交换值的2个元素,使用明显颜色、闪烁效果,并要有延时,延时时间可在界面手动设置。排序过程可以随时停止和继续。三、课

2、程设计要求程序质量:²贯彻事件驱动的程序设计思想。²用户界面友好,功能明确,操作方便;可以增加其它功能或修饰。²代码应适当缩进,并给出必要的注释,以增强程序的可读性。课程设计说明书:²课设结束后,上交课程设计说明书和源程序。课程设计说明书的内容参见提供的模板。四、指导教师和学生签字指导教师:鲁墨武学生签名:赵炀五、成绩六、教师评语第14页,共14页沈阳航空航天大学设计用纸目录一、需求分析4二、设计分析4三、技术要点5四、总结9五、完整的源程序10六、参考文献14第14页,共14页沈阳航空航天大学设计用纸一、需求分析题目要求用“冒

3、泡法”对一组数据进行由小到大排序,并且动画演示排序过程中元素变换的过程。也就是表示,比较相邻两个数大小和交换值得过程要可见,并用明显的颜色来区分正在比较的两个数字。颜色的变换、数字的交换实现了动画的效果。二、设计分析(1)基本原理:冒泡法”排序——使用Label控件数组,多个Timer控件。分别用来进行数组的输入和控制程序的运行。(2)总体设计:从数组第一个数开始,对数组中两个相邻的数比较,即a(0)与a(1)比较,若为逆序,则a(0)与a(1)交换;然后a(1)与a(2)比较,···,直到最后a(N-1)与a(N)比较,这时一

4、轮比较完毕,一个最大的数“沉底”,成为数组中的最后一个元素a(N),一些较小的数如同气泡一样“上浮”一个位置。第14页,共14页沈阳航空航天大学设计用纸然后对a(0)与a(N-1)的N个数进行同(1)的操作,次最大的数放入a(N-1)元素内,完成第二轮排序;依次类推,进行N轮排序后,所有的数均有序。排序结束。三、技术要点(1)产生随机数,并对标签数组赋值PrivateSubCommand1_Click()Dima(9)AsInteger,nAsIntegerForn=1To10a(n-1)=Int(n*10*Rnd+8-n)'产

5、生随机数Label1(n-1).Caption=a(n-1)'对个标签赋值NextnTimer1.Enabled=TrueTimer2.Enabled=FalseTimer3.Enabled=FalseTimer4.Enabled=TrueCommand1.Enabled=FalseCommand2.Enabled=TrueCommand3.Enabled=FalseCommand4.Enabled=TrueEndSub第14页,共14页沈阳航空航天大学设计用纸图1产生随机数,并对标签数组赋值(2)正在比较的两个数标签颜色分别为

6、红色和绿色StaticaAsInteger,bAsIntegerIfa=9Thena=0:b=b+1EndIfIfa+1<=10-b-1Then'在上一轮比较中最后两个数不参加本轮比较Label1(a).BackColor=QBColor(12)'正在比较的两个数颜色改变Label1(a+1).BackColor=QBColor(10)EndIfa=a+1Timer2.Enabled=TrueTimer1.Enabled=FalseEndSub第14页,共14页沈阳航空航天大学设计用纸图2在比较大小的两个数(3)若两个数逆序排列

7、则其标签显示边框并交换数字,交换数字后标签颜色变为黄色PrivateSubTimer2_Timer()StaticiAsInteger,jAsIntegerIfi=9Theni=0EndIfIfVal(Label1(i).Caption)>Val(Label1(i+1).Caption)ThenLabel1(i).BorderStyle=1:Label1(i+1).BorderStyle=1'逆序的两个数标签显示边框j=Label1(i).Caption:Label1(i).Caption=Label1(i+1):Label1(

8、i+1)=j'将逆序的两个数调换位置Label1(i).BackColor=QBColor(14)'改变顺序的两个标签颜色改变Label1(i+1).BackColor=QBColor(14)EndIfi=i+1Timer3.Enabled=True第14页,共

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。