程序设计挑战式课程设计极限挑战挑战,不是为着征服自然,而是为着突破自我,超越自我生命有极限,思想无极限,高度有极限,境界无极限 作 业名称: 算法演示程序 学 院: 航海学院 班 级: 0 3 0 1 1 4 0 3 学 号: 2 0 1 3 3 0 0 9 5 1 姓 名: 苏和 团队组成: 西北工业大学 2 0 2 2 年 4 月 2 5 日 程序设计挑战式课程设计报告 - 2 - 1 、问题与背景(描述程序所要解决的问题或应用背景) C 语 言 经 过 几 十 年 的 发 展 已 经 发 展 出 多 种 多 样 的 的 排 序 方 法 ,网 上 的 解 释 和 代 码 良 莠 不 齐 , 许 多 具 有 严 重 的 错 误 , 给 学 习 者 打 来 极 大 的 不 便 。 因此, 我将目前比较流行的 7 种 排 序 法 : 1.冒泡排 序 2.选择排 序 3.插入排 序 4.快速排 序 5 堆排 序 6 归并排 序 7.基数排 序 加以总结, 标明注释 , 成为这个演示程序 , 以供交流学 习 使用。 2 、开发工具(列出所使用的开发工具和第 3 方开发库) Co de::blo ck 3 、主要功能(详细说明程序的功能) 基本功能:本程序 可实现对 100 个及以下的 数据排 列的 功能。 拓展 功能:1.选择不 同的 排 序 法 进行排 序 。 2.选择数据正序 排 列, 还是逆序 排 列。 4 、设计内容(详细描述解决问题的原理和方法、算法、数据结构等) 本程序 的 数据变换主要在数组中进行。 1. 冒泡排 序 相邻两个记录之间进行比较和 互换, 使较小的 记录逐渐从底部移向顶部。一次排 序 后最大 的 记录沉底, 再比较前 n -1 个记录直到最后一次程序设计挑战式课程设计报告 - 3 - 排 列 时 只 有 两 个 记 录 。排 列 结束后最小的记 录 自然上浮至第一位。 2. 选择排 序 第 i 趟选择排 序通过 n -i 次关键码的比较,从 n -i+1 个 记 录 中选出关键码最小的记 录 ,并和记 录 i 交换。 3. 插入排 序 把新插入记 录 的关键码与已排 好序的逐个 比较,但找到第一个 比其大的记 录 时 ,该记 录 之前即为插入位置 k 。从序列 最后开始到该记 录 ,逐个 后移一个 单元,将新纪录 插入 k 位置。如果新纪录 比其他记 录 都大,则插入到最后。 4. 快速排 序 通过一趟排 序将要排 序的记 录 分...