


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、无课课 程程 设设 计计学学号号班班级级姓姓名名指导教师指导教师2008 年年3 月月7 日日无课 程 设 计 任 务 书课 程 设 计 任 务 书一、一、课程设计题目:课程设计题目: 冒泡法与选择法排序效率比较冒泡法与选择法排序效率比较二、课程设计工作自二、课程设计工作自 2008 年年 3 月月 3 日至日至 2008 年年 3 月月 10 日止日止三、课程设计内容:三、课程设计内容:用 C 语言编写软件完成一下任务:比较“冒泡排序”和“选择排序”两种排序方法。完成同样的工作,一个算法的时间效率越高(使用的时间越少) ,越容易受欢迎。假设算法的时间主要消耗在两个方面:赋值运算,比较运算。请
2、用程序读取给定的数据(file24.txt,由教师提供)后,分别使用“冒泡排序”和“选择排序”两种方法进行排序,并分别统计出各自需要的“赋值运算次数”和“比较运算次数” ,从而对它们的时间效率进行初步评价。四、课程设计要求四、课程设计要求1. 程序质量:程序质量:贯彻结构化的程序设计思想。用户界面友好,功能明确,操作方便。用户界面中的菜单至少应包括“读取数据” 、 “冒泡法排序” 、 “选择法排序” 、 “退出”4 项。代码应适当缩进,并给出必要的注释,以增强程序的可读性。2. 课程设计说明书:课程设计说明书:课程结束后,上交课程设计说明书(打印稿和电子稿) ,其内容下:封面课程设计任务书目录
3、需求分析(分析题目的要求)程序流程图(总体流程图和主要功能模块流程图)核心技术的实现说明及相应程序段个人总结参考资料源程序及适当的注释指导教师:指导教师:学生签名:学生签名:_无目录目录一、需求分析.1二、程序流程图.1三、核心技术的实现说明及相应程序段.4四、个人总结.7五、参考文献.7六、源程序.7无一、需求分析一、需求分析经过对程序题目的分析可知, 整个程序分为四大部分。每一部分对应一个函数。它们的功能分别是:文件装载(read) ;冒泡法排序(maopao) ;选择法排序(xuanze) ;效率比较主函数(main) 。1文件装载函数实现装载所给文件, 读取文件所给数值。2冒泡法排序函
4、数主要实现数据的冒泡法排序和赋值运算与比较运算的次数。3选择法排序函数主要实现数据的选择法排序和赋值运算与比较运算的次数。4效率比较主函数实现冒跑法排序与选择法排序效率比较 与界面显示。二、程序流程图二、程序流程图1、冒泡排序法流程图、冒泡排序法流程图无定义 int i,j,t,a=0,b=0;当 j08当 i09-jif(studi.num studi+1.num)是否交换 studi.num studi+1.numa+3,b+1输出冒泡法:赋值运算 a 次,比较运算 b 次反还 a+b2、选择法排序流程图、选择法排序流程图无定义 int i,j,t,a=0,b=0,num=0;当 j101
5、mini;a当 i0jif(studi.numstudmin.num)是否min=i;交换studi.num和studmin.num,a4,b1输出选择法:赋值运算 a 次,比较运算 b 次反回 a+b3、文件装载流程图、文件装载流程图for(i=0;i10;i+)读取 stdi关闭文件4、排序效率比较模块的流程图、排序效率比较模块的流程图无bs&b!=0&s!=0冒泡排序法效率高是否输出输出选择排序法效率高请先运行两种排序方法三、核心技术的实现说明及相应程序段三、核心技术的实现说明及相应程序段本程序主要由三个自定义函数和一个主函数组成,其中主函数以菜单形式调用三个自定义函数来
6、实现所有功能。其中冒泡法排序函数与选择法排序函数是核心部分。现分别进行说明:1文件装载函数该函数用于打开指定文件,以便下面的程序段使用其中的数据.其过程是定义一个文件指针,并使之指向指定的文件,然后用 fopen 函数打开文件.这样文件就装载完毕.具体程序段如下:无#include struct uint num;u10;void read()/ 声明声明 read 函数函数/int i;FILE *fp;if(fp=fopen(d:file24.txt,r)=NULL)/打开文件打开文件“file24.txt”/printf(文件打开失败文件打开失败n);return;for(i=0;i10
7、;i+)/构成循环构成循环/fscanf(fp,%6d,&ui.num);fclose(fp);/关闭文件关闭文件/2 .冒泡法排序函数该函数对指定数据排序.通过两次循环,依次比较两相邻数据之后替换.直至循环完毕. 这时排序完毕.具体函数段如下:maopao()/冒泡法排序冒泡法排序/int i,j,t,a=0,b=0;read();for (j = 0; j 9; j+)for (i = 0; i 9-j; i+)if (ui.num 0;j-)min=j;a+;for(i=0;i=j;i+)if(ui.numumin.num)min=i;a+;b+;t=umin.num;a+;um
8、in.num=uj.num;a+;uj.num=t;a+;printf(选择法选择法:赋值运算赋值运算%d 次次,比较运算比较运算%d 次次n,a,b);return(a+b);/返回运算次数返回运算次数/无四、个人总结四、个人总结一个星期的课程设计结束了, 在这几天的学习过程中我学到了很多,让我对 C+和 WORD 的使用更加的了解和熟练。在实践的过程中让我体会到了挫折与失败的滋味, 同时也让我体会到了成功的喜悦。在编写程序时遇到了很多的困难, 但这些并不能阻止我要写好程序的决心,俗话说: “只有功夫深,铁杵磨成针” 。在我不懈的努力和老师的帮助下,一个个困难被我征服,一个崭新的程序完成了。
9、看着程序的完成心里有说不出的高兴,那是成功的喜悦。我相信通过这次实践我学到的所有知识将会收益终生。五、参考文献五、参考文献1 谭浩强C 程序设计北京:清华大学出版社,20052 刘成等C 语言程序设计实验指导与习题集北京:中国铁道出版社,2006六、源程序六、源程序#include struct uint num;无u10;void read()int i;FILE *fp;if(fp=fopen(d:file24.txt,r)=NULL)printf(文件打开失败文件打开失败n);return;for(i=0;i10;i+)fscanf(fp,%6d,&ui.num);fclose(
10、fp);maopao()int i,j,t,a=0,b=0;read();for (j = 0; j 9; j+)for (i = 0; i 9-j; i+)if (ui.num 0;j-)min=j;a+;for(i=0;i=j;i+)if(ui.numumin.num)min=i;a+;b+;t=umin.num;a+;umin.num=uj.num;a+;uj.num=t;a+;printf(选择法选择法:赋值运算赋值运算%d 次次,比较运算比较运算%d 次次n,a,b);return(a+b);void main()int i,a=0,b=0;char e;printf(-n);pri
11、ntf(-n);printf(-欢迎使用冒泡选择比较程序欢迎使用冒泡选择比较程序-n);printf(-l 装载文件装载文件 file24.txt-n);printf(-a 使用冒泡法排使用冒泡法排-n);printf(-b 使用选择法排序使用选择法排序-n);printf(-c 比较两种排序方法的效比较两种排序方法的效-n);printf(-q 退出退出-n);printf(-n);for(;)无scanf(%c,&e);if(e=l)read();printf(nfile24.txt 文件装载成功,其中数据为:文件装载成功,其中数据为:n);for(i=0;i10;i+)printf(%d,ui.num);printf(n);else if(e=a)a=maopao();printf(数据排序成功,排序结果为:数据排序成功,排序结果为:n);for(i=0;i10;i+)printf(%d,ui.num);printf(n);else if(e=b)b=xuanze();printf(数据排序成功,排序结果为:数据排序成功,排序结果
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年生产经营单位安全培训考试试题(典型题)
- 2025工程主体钢筋外包工合同
- 2025国内劳务合同范本
- 2025正规网约车买卖合同模板
- 2025金融借款合同模板
- 2025餐饮业雇佣合同模板
- 2025二手房购房合同协议书
- 2025年某合同段兰渝铁路高风险隧道施工实施细则
- 2025物流运输合同样本
- 2025华泰创新动力灵活配置混合型证券投资基金基金合同
- 与幼儿园相关的法律知识及案例(课堂PPT)
- 《昆明机床企业财务造假的案例分析(论文)3200字》
- 液压泵盖夹具设计说明书(含毛坯图)
- 玻璃水汽车风窗玻璃清洗剂检验报告单
- 机动车驾驶人考试场地及其设施设置规范-
- DB37-T 2673-2019 医疗机构能源消耗定额标准-(高清版)
- 2023届毕业论文格式要求(福建农林大学)
- 玻璃工艺学:第8章 玻璃的熔制
- 黄元御“下气汤十二方”治诸多内科杂病疑难重症
- 肝硬化-本科授课课件
- 《蒋勋眼中的宋词》阅读练习及答案
评论
0/150
提交评论