数据结构课设报告 第 1 页 共 2 6 页 目录 一. 设计题目 ……………………………………2 二.需求分析 ……………………………………2 1.程序设计问题描述…………………………………2 2.基本要求 …………………………………………2 3.流程图 …………………………………………2 三.详细设计 ………………………………………3 1.数据结构定义………………………………………4 2.主要算法设计 ……………………………………5 3.函数调用关系图……………………………………8 4.程序主要流程 ……………………………………8 四.调试分析 ………………………………………13 五.用户手册 ………………………………………15 六.测试结果 ………………………………………19 七.源代码(带注释 )………………………………21 八.参考文献…………………………………………26数据结构课设报告 第 2 页 共 2 6 页 一.设计题目 多关键字排序 二.需求分析 1.程序设计问题描述 多关键字的排序有其一定的实用范围。例如:在进行高考分数处理时,除了需对总分进行排序外,不同的专业对单科分数的要求不同,因此尚需在总分相同的情况下,按用户提出的单科分数的次序要求排出考生录取的次序。 2.基本要求 (1)假设待排序的记录数不超过 10000,表中记录的关键字数不超过 5,各个关键字的范围均为 0 至 100。按用户给定的进行排序的关键字的优先关系,输出排序结果。 (2)约定按 LSD 法进行多关键字的排序。在对各个关键字进行排序时采用两种策略:其一是利用稳定的内部排序法,其二是利用"分配"和"收集"的方法。并综合比较这两种策略。 (3)测试数据由随机数生成器产生。 3.流程图 开始 输出菜单 输入记录数 选择排序方法 判断 1 2 内部排序 基数排序 输入不是 1 或 2 ,重新输入选择排序方法 数据结构课设报告 第 3 页 共 2 6 页 三.详细设计 本程序是对语文,数学,英语,体育,综合这5 门成绩按照此顺序进行优先排序。各科分数为0~100。 由于本实验约定按LSD 进行多关键字的排序。在对个关键字进行排序时采用两种策略:其一是利用稳定的内部排序法,其二是利用“分配”和“收集”的方法。所以在一个程序里实现了这两种排序方法。 第一种排序方法由于要使用稳定的排序方法,故参考书上的几种排序方法后,选用了冒泡排序和静态链表存储方式,每一趟排序后,找出...