c++单向链表的排序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
河北联合大学 2011-2012 第 2 学期
《 软 件 设 计 基 础 -C++》
课程设计报告
设计名称:设计一个处理单向链表的程序:链表的排序 姓 名:王学增 学 号:201005100206
专业班级:土木工程 1 班 学 院:建筑工程学院
设计时间:2012-5-31 设计地点:机房
指导教师评语: 教师评定: 自评成绩;75
指导教师签字:
年 年 月 月 日 日
《软件设计基础-C++》课程设计报告
第
2
页,共
16 页
目
录
1.课程设计目的···································· ···································· ···································· 2.课程设计任务与要求 ································ ································ ······························· 3.课程设计说明书··································· ··································· ·································· 4.课程设计成果···································· ···································· ···································· 5.程序调试过程···································· ···································· ···································· 6.设计问题的不足和改进方案 ···························· ···························· ··························· 7.课程设计心得···································· ···································· ···································· 8.参考文献······································· ······································· ······································
《软件设计基础-C++》课程设计报告
第
3
页,共
16 页
1.课程设计目的
《软件设计基础-C++》课程设计是这门课程的实践性教学环节之一,本次设计结合实际应用的要求, 使课程设计既覆盖 C++的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际 分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌 握 C++这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。
2.课程设计任务与要求:
要求:
本次课程设计利用《软件设计基础-C++》课程中所学到的编程知识和编程技巧,完成具有一定难度和 工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。 要求: 1、对系统进行功能需求分析 2、设计合理的数据结构和系统框架 3、编程简练,程序功能齐全,能正确运行 4、说明书、流程图要清楚 5、课题完成后必须按要求提交课程设计报告 任务:
将自己选择题目的任务要求简单填写在此处。
(1)要求用 C++的思想来完成程序的设计。 (2)各个功能分别使用函数来完成,主函数和各个函数分别存放在不同的.cpp 文件中,要求使用头文 件。 (3)在基本要求达到后,进行创新设计,例如:将两个非递减的链表合并成一个新的非递减的链表
《软件设计基础-C++》课程设计报告
第
4
页,共
16 页
3.课程设计说明书
⑴概要设计 主要写模块说明,模块结构图,系统流程图(例 N-S 流程图) (五号,宋体)
模块说明: 在我设计的程序中一共包括了六个模块,分别是:新增模块、查找模块、修改模块、完全打印模块、删除 模块、 退出系统模块。 这六个模块中新增、 查找和修改都是独立分开作为子函数的, 另外三个则是作为 switch 语句中的一部分,通过 switch 语句,把六大模块联系了起来,同时,为了实现多次使用这六大模块,就在 switch 语句外加了 while 循环。 我的程序模块说明: 在我设计的程序中一共可以分成三个模块,分别是数据打印模块,冒泡排序模块,主函数模块。其中, 数据打印模块和冒泡排序模块都采用了 for 循环。并且这两个模块都是
模块结构图:
链表的排 序 打印数 据 主函数排序后输出
冒泡排 序
⑵详细设计 总体流程图:
头文件 建立函数 冒泡排序 打印数据
主函数进行排 序,输出。
各功能模块流程图
(1) 打印数据的流程图: (以下是应用的 for 循环)
《软件设计基础-C++》课程设计报告
第
5
页,共
16 页
i=1
判断 i>n?
否 执行 print i
i=i+1
结束循环,cout<<"
"<cout<<"\n"
i=1
判断 i>n?
否 执行 print i
i=i+1
结束循环,cout<<"
"<cout<<"\n"