设计目的 随着计算机技术的发展,各种排序算法不断的被提出
排序算法在计算机科学中有非常重要的意义,且应用很广泛
在以后的发展中排序对我们的学习和生活的影响会逐渐增大,很有必要学习排序知识
此次课程设计一方面使自己掌握排序的知识,另一方面锻炼一下团队合作开发系统的能力
1 设计内容和要求 设计内容: (1)实现各种内部排序
包括直接插入排序,希尔排序,冒泡排序,快速排序,直接选择排序,归并排序,堆排序
(2)待排序的元素的关键字为整数或(字符)
可用随机数据和用户输入数据作测试比较
比较的指标为有关键字参加的比较次数和关键字的移动次数(关键字交换以 3 次计)
(3)演示程序以人机对话的形式进行
每次测试完毕显示各种比较指标值的列表,以便比较各种排序的优劣
本设计所采用的数据结构 typedef struct { int key; }RecType; 4
功能模块详细设计 1 4
1 详细设计思想 主函数: #include #include #include #define L 8 //排序元素个数 #define FALSE 0 #define TRUE 1 typedef struct { int key; }RecType; RecType R[L]; int num; int sum; int sun; //定义排序趟数的全局变量 //主函数 int main() { Seqlist S; int i,k; char ch1,ch2,q; printf("\n\t\t 排序算法演示系统\n\n\t\t 请输入%d 个待排序的数据:",L); for(i=1;i