成 绩 评 定 表学生姓名吴琼班级学号专 业通信工程课程设计题目基于选择排序方法的类模板设计与实现评语组长签字:成绩日期 20 年 月 日课程设计任务书学 院信息科学与工程专 业通信工程学生姓名吴琼班级学号课程设计题目 基于选择排序方法的类模板设计与实现实践教学要求与任务建立一维数组数据结构的模板类,使一维数组中的数据元素可以是 char, int, float等多种数据类型,并对数组元素实现选择类排序。主要完成如下功能:(1) 实现数组数据的输入和输出;(2) 实现简单选择排序功能;(3) 实现树形选择排序功能;(4) 实现堆排序功能;(5) 将每种排序功能作为类的成员函数实现,编写主函数测试上述排序功能。工作计划与进度安排第 17 周:分析题目,查阅课题相关资料,进行类设计、算法设计;第 18 周:程序的设计、调试与实现;第 19 周:程序测试与分析,撰写课程设计报告,进行答辩验收。指导老师: 201 年 月 日专业负责人:201 年 月 日学院教学副院长:201 年 月 日摘 要计算机中存储的数据,初始时没有任何排列规律,根据实际需求,常常要排列成有规律的数据序列也就是将数据序列按关键字升序或降序规律排列。选择排序是排序法中很经典的算法,选择排序法可以分为简单选择排序、树形选择排序和堆排序。本文采纳 C++语言实现了选择排序功能,设计了模板类,实现了 int 型 float 型和char 型数组的排序,设计了简单选择排序、树形选择排序和堆排序的三个函数体,采纳 Visual C++ 6.0 的控制台工程和 MFC 工程分别实现了各类型数组的排序,通过对两种程序的测试结果表明:简单选择排序是选择排序的基础,而树形选择排序和堆排序是简单选择排序的改进。关键词:模板类;简单选择排序;树形选择排序;堆排序;控制台工程;MFC 工程。目 录1 需求分析...............................................................................................................................12 算法基本原理.......................................................................................................................13 类设计...................................................................................................................................34 基于控制台的应用程序.....................................................................