c单向链表的排序解读

上传人:hs****ma 文档编号:486826841 上传时间:2022-08-04 格式:DOC 页数:19 大小:998.50KB
返回 下载 相关 举报
c单向链表的排序解读_第1页
第1页 / 共19页
c单向链表的排序解读_第2页
第2页 / 共19页
c单向链表的排序解读_第3页
第3页 / 共19页
c单向链表的排序解读_第4页
第4页 / 共19页
c单向链表的排序解读_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《c单向链表的排序解读》由会员分享,可在线阅读,更多相关《c单向链表的排序解读(19页珍藏版)》请在金锄头文库上搜索。

1、河北联合大学2011-2012 第 2 学期软件设计基础-C + +课程设计报告设计名称: 设计一个处理单向链表的程序:链表的排序姓 名:王学增学 号:201005100206专业班级:土木工程1班学 院:建筑工程学院设计时间:2012-5-31设计地点:机房指导教师评语:教师评定:自评成绩;75指导教师签字:年月日软件设计基础-C+课程设计报告第#页,共 17页目 录1课程设计目的 2课程设计任务与要求 3课程设计说明书 4课程设计成果 5程序调试过程 6设计问题的不足和改进方案 7课程设计心得 8参考文献软件设计基础-C+课程设计报告第#页,共 17页1. 课程设计目的软件设计基础-C+课

2、程设计是这门课程的实践性教学环节之一,本次设计结合实际应用的要求, 使课程设计既覆盖 C+的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际 分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌 握C+这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。2. 课程设计任务与要求:要求:本次课程设计利用软件设计基础 -C+课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。要求:1、对系统进行功能需求分析2、设计合理的数据结构和系统框架3、编程简练,

3、程序功能齐全,能正确运行4、说明书、流程图要清楚5、课题完成后必须按要求提交课程设计报告 任务:将自己选择题目的任务要求简单填写在此处。(1)要求用C+的思想来完成程序的设计。(2 )各个功能分别使用函数来完成,主函数和各个函数分别存放在不同的.cpp文件中,要求使用头文件。(3)在基本要求达到后,进行创新设计,例如:将两个非递减的链表合并成一个新的非递减的链表软件设计基础-C+课程设计报告第#页,共 17页软件设计基础-C+课程设计报告第#页,共 17页3. 课程设计说明书! m n nrw n in nir n r= r* pir n b anirf ri e概要设计主要写模块说明,模块结

4、构图,系统流程图(例 N-S流程图)(五号,宋体)模块说明:在我设计的程序中一共包括了六个模块,分别是:新增模块、查找模块、修改模块、完全打印模块、删除模块、退出系统模块。这六个模块中新增、查找和修改都是独立分开作为子函数的,另外三个则是作为 switch语句中的一部分,通过switch语句,把六大模块联系了起来,同时,为了实现多次使用这六大模块,就在switch语句外加了 while循环。我的程序模块说明:在我设计的程序中一共可以分成三个模块,分别是数据打印模块,冒泡排序模块,主函数模块。其中,数据打印模块和冒泡排序模块都采用了for循环。并且这两个模块都是软件设计基础-C+课程设计报告第#

5、页,共 17页软件设计基础-C+课程设计报告第#页,共 17页详细设计总体流程图:各功能模块流程图(1)打印数据的流程图:(以下是应用的for循环)coutn软件设计基础-C+课程设计报告第#页,共 17页软件设计基础-C+课程设计报告第#页,共 17页(接上页)(2)泡沫排序的流程图软件设计基础-C+课程设计报告第#页,共 17页软件设计基础-C+课程设计报告第#页,共 17页注:上述数组d为rj.score(3)主函数流程图软件设计基础-C+课程设计报告第#页,共 17页4. 课程设计成果 n * ara v* ar aw ara n ar r*arnahtb ar ! 工 程序源代码,运

6、行结果(可用屏幕抓图的方法说明)(五号,宋体)(多页)(1) 链表排序的源代码#in clude#i nclude /头文件#defi ne N 100typedef int keytype;typedef char xingmin g5;typedef char xin gbie5;typedef struct num /建立keytype score;xingming n ame;xin gbie sex;nu mpxN;struct num sqlistN+1;void px( numpx r,i nt n) /冒泡排序int i,j;for(i=1;i n; i+)for(j=1;jr

7、j+1.score)r0=rj;rj=rj+1;rj+1=r0;void print(nu mpx list, intn) /打印数据int i;for(i=1;i=n ;i+)cout listi.score;coutn;for(i=1;i=n ;i+)cout listi .n ame;coutn;for(i=1;i=n ;i+)cout listi.sex;coutn;void ma in () /主函数int n=10;numpx a=0,16, 小斯,男,24,伊娃,女,13,韦德,男,35,杜兰,男,20,阿伦,男 ,37,李娜,”女,55,凯文,男,11,罗斯,男,18,波什,男

8、,10,刘兰,女;coutn;cout原系列数据:n;prin t(a,10);coutn;px(a, n);cout排序的序列(从低到高):n;prin t(a ,n);软件设计基础-C+课程设计报告第#页,共 17页软件设计基础-C+课程设计报告第#页,共 17页(2)运行以上源程序后的运行结果:3513II-c:-椎舂IB品n需I链義.电hoJal xkey to continue排序的序列10刘兰罗 I女Pr-ess any15163524伊娃1S20181H 刘兰 女到13德男 低韦A(m【系列数据: 小葺伊雀3?李娜女20阿費37李娜女软件设计基础-C+课程设计报告第#页,共 17

9、页叵J回5.程序调试过程写出程序调试步骤,及遇到的问题。(1)这时程序已经可以运行,但数据出现错误:没有输出第一组数。C :U sers del|Deski op 毛腳 葩表,D 邑 buexe*C:ller5d s lIXDeskto p毛橇館审小岂宗.ewe原系列数据:24133S2037151118100伊蛙丰德社兰阿伦李娜凯文罗斯波什刘兰女男男男女男男男女排序的 序列(MSU高)B1011131S18202435 3?刘兰罗斯韦德凯文菠什阿伦伊蛙杜兰李挪女男男男男男女男女Pa nyto co ntinu.e原系列数据二lb24133S2371bllllB小斯伊娃韦德杜兰阿伦李娜凯文罗斯

10、披什刘二男女男男男女男男男女 排序的序列(从低到高:101113151610202435071兰罗斯韦德凯文小斯披什阿伦伊蛙杜兰李娜女男男男男男男女男女 Piess mny Ikey 七口 coinlJ.nuc这是字符数组那块的知识,在数据前加上“0,”即可是程序完整显示。软件设计基础-C+课程设计报告第#页,共 17页(2) 可以看出数据还是极不规范,需要对数据进行换行 需要在数据打印模块中每一个for循环后加cout2e韦男列16賣 阪35娃男序15斯男 列13伊男的13罗男 糸24娶序11三勇 原16小10刘女软件设计基础-C+课程设计报告第#页,共 17页软件设计基础-C+课程设计报告第#页,共 17页(3)下面对每组数据的间隔进行处理后面那两条语句也这样做。将语句 coutlisti.score; 改成 cout listi.score;调试后的程序:软件设计基础-C+课程设计报告第#页,共 17页软件设计基础-C+课程设计报告第#页,共 17页 C:Uer5d e I lD?skto p毛榜 1 擁表bu g 表,exe11 is 10回 SS庶系列数据:16 24 13 35 2 0 37 15 小廝伊娃韦德社兰1Q 11 12 15 i& 1S 20刘兰罗斯丰德 女男勇男男PvRISS fftny IcA

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号