选择法与插入法排序比较C++报告书

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C 河北联合大学 2011-2012 第 2 学期
《 软 件 设 计 基 础 -C++》
课程设计报告
设计名称: 选择法与插入法排序比较
姓 名:
学 号:
专业班级:
学 院:
设计时间: 2012 年 5 月 20 日—2012 年 6 月 15 日
设计地点: 学校机房
指导教师评语:
成绩:
指导教师签字:
年月日

《软件设计基础-C++》课程设计报告
第 2 页,共 11 页
目录
1.课程设计目的 ··············································································3 2.课程设计任务与要求 ·····································································3 3.课程设计说明书 ···········································································4 4.课程设计成果 ··············································································5 5.程序调试过程 ············································································10 6.设计问题的不足和改进方案 ···························································11 7.课程设计心得 ············································································12 8.参考文献 ··················································································13

《软件设计基础-C++》课程设计报告
1.课程设计目的
第 3 页,共 11 页
(1)培养学生综合利用 C++语言进行程序设计的能力,掌握排序算法,使学生能够解决信息管理系统中的 一些问题。
(2)提高学生建立程序文档、归纳总结的能力。
2.课程设计任务与要求:
要求:
本次课程设计利用《软件设计基础-C++》课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量 的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。 要求:
1、对系统进行功能需求分析 2、设计合理的数据结构和系统框架 3、编程简练,程序功能齐全,能正确运行 4、说明书、流程图要清楚 5、课题完成后必须按要求提交课程设计报告 任务: (1)要求用 C++模块化设计的思想来完成程序的设计; (2)要求各个功能分别使用函数来完成,各个函数分放在不同文件中。 (3)源代码程序要求必要的注释。 创新: 在基本要求达到后,可以进行创新设计,如讨论各种排序算法的优劣。

《软件设计基础-C++》课程设计报告
第 4 页,共 11 页
3.课程设计说明书
⑴概要设计
模块说明: 在我设计的程序中一共包括了俩个模块,分别是:选择排序模块、插入排序模块。这三个模块中输入、排序、
输出都是独立分开,俩模块是通过 switch 语句联系起来的,同时,为了实现多次使用这俩个模块,就在 switch 语句外加了 while 循环。
⑵详细设计 总体流程图:
Main
While
Switch


Case1
循 环
Input
Selectsort
Case2 Input Insertsort
Default
Output
Output
If(flag=’n’||flag==’N’)
1
0
退出程序循环

《软件设计基础-C++》课程设计报告
4.课程设计成果
程序源代码:
主函数: #include
#include"Sort.h" #define N 10
第 5 页,共 11 页
void main()
{
while(1)
{
//输入菜单
cout<<"
菜单\n";
cout<<"*****************************************\n";
cout<<"1、选择法排序
2、插入法排序\n";
cout<<"*****************************************\n";
int data[N];//排序数组
int count=0;
int select;
char flag;//退出判断
cout<<"请选择排序方法...\n";
cin>>select;
switch(select)
{
case 1://选择选择法排序
{
Input(data,N);//输入数组
SelectSort(data,N,count);//选择法排序
Output(data,N,count);//输出
break;
}
case 2://选择插入法排序
{
Input(data,N);//输入数组

《软件设计基础-C++》课程设计报告
InsertSort(data,N,count);//插入法排序 Output(data,N,count);//输出 break; } default: cout<<"输入有误,请重新输入!!!\n"; continue; } cout<<"按“n”或“N”退出,按其它任意键继续!!!\n"; cin>>flag; if(flag=='n'||flag=='N')//判断是否退出 break; } } 调用函数: #include #include"Sort.h"
void Input(int *data,int n) {
//输入数组 cout<<"请输入"<cin>>data[i]; } } void Output(int *data,int n,int count) { //输出排序好的数组 cout<<"排序结果为:\n"; for(int i=0;icout<// 用于对数组进行选择排序法操作
void SelectSort(int *data,int n,int &count)
第 6 页,共 11 页

相关文档
最新文档