《算法与数据结构》课程设计报告Word文档下载推荐.docx
- 文档编号:15841264
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:20
- 大小:79.87KB
《算法与数据结构》课程设计报告Word文档下载推荐.docx
《《算法与数据结构》课程设计报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《《算法与数据结构》课程设计报告Word文档下载推荐.docx(20页珍藏版)》请在冰豆网上搜索。
评分项目
分值
得分
①课程设计报告符合规范
10
②类层次结构图和用例图合
3
③主要技术路线正确
30
④设计报告条理清晰,重点突出
20
⑤有一定的创新性,难易程度
成绩:
指导教师签字:
任务下达日期:
2011年4月25日
评定日期:
1课程设计的目的………………………………………………………………1
2课程设计的要求………………………………………………………………1
3课程设计内容……………………………………………………………………1
3.1主要内容…………………………………………………………………1
3.2需求分析…………………………………………………………………2
3.3程序总体设计…………………………………………………………………2
3.4设计过程与程序功能展示……………………………………………………3
4总结…………………………………………………………………………………7
参考文献……………………………………………………………………………7
源代码………………………………………………………………………………7
1.设计目的
1)复习和巩固算法与数据结构的基础知识,进一步加深对算法的理解和掌握;
2)提高程序设计能力,掌握算法与数据结构的基本方法;
3)培养我们在项目开发中团队合作精神、创新意识及能力。
2.设计要求
1)掌握算法与数据结构基本方法,设计并实现一个应用系统;
2)设计要实用,算法要简练;
3)说明书、流程图要清楚;
4)通过课程设计,要求学生在指导教师的指导下,独立完成课程实习的全部内容;
5)上交课程设计内容。
3.课程设计内容
3.1主要内容
教学实验设备信息包括:
设备编号、设备种类(如:
微机打印机扫描仪等等)设备名称、设备价格、设备购入日期、是否报废、报废日期等。
试设计一实验设备信息管理系统,使之能提供以下功能:
(1)能够完成对设备的录入和修改
(2)对设备进行分类统计
(3)设备的查询
3.2需求分析
实验室设备信息用文件存储,提供文件的输入输出操作;
要能够完成设备的录入和修改,需要提供设备添加和修改操作;
实现对设备进行分类统计,需要提供排序操作;
实现对设备查询需要提供查找操作,设备的查询可根据设备编号、设备种类、设备购入日期、正常设备(未报废的)等多种方式查询;
另外还要根据键盘式选择菜单以实现功能选择。
3.3程序总体设计
3.4设计过程与程序功能展示
3.4.1主函数
voidmain()
{
Node*equipment;
FILE*fo;
intflag;
Node*p,*q;
printf("
\t\t\t\t设备信息管理系统\n"
);
equipment=(Node*)malloc(sizeof(Node));
equipment->
next=NULL;
p=equipment;
fo=fopen("
设备信息管理系统"
"
wb+"
q=(Node*)malloc(sizeof(Node));
if(fread(q,sizeof(Node),1,fo))//将文件的内容放入接点中
q->
p->
next=q;
p=q;
//将该接点挂入链表中
}
fclose(fo);
//关闭文件
while
(1)
***********************目录********************************"
\n1添加记录\n"
\n2修改记录\n"
\n3显示记录\n"
\n4统计分类记录\n"
\n0*-EXIT-*\n"
请输入你要操作的序号:
"
scanf("
%d"
&
flag);
switch(flag)
case0:
printf("
\n>
>
提示:
已经退出系统,ByeBye!
\n"
break;
case1:
Add(equipment);
break;
//增加记录
case2:
Modify(equipment);
//修改记录
case3:
Disp(equipment);
//显示记录信息
case4:
Tongji(equipment);
//统计记录
default:
输入错误!
}
3.4.2各功能模块设计
(1)输入模块
Structshebei
{charID[10];
charname[15];
charkind[15];
charover[15];
charyesno[10];
chartime[10];
charprice[10];
};
(2)追加模块
voidAdd(Node*equipment)//添加记录
Node*p,*r,*s;
charid[10];
//先用于输入ID,也用于判断是否跳出循环
r=equipment;
s=equipment->
next;
//使s为第一个有用的结点
while(r->
next!
=NULL)//这个循环的作用是使r为最后一个有用的结点
r=r->
//将指针置于最末尾
输入0则返回主菜单!
\n请你输入设备ID号:
%s"
id);
if(strcmp(id,"
0"
)==0)break;
p=(Node*)malloc(sizeof(Node));
//申请空间
strcpy(p->
data.ID,id);
\n请输入设备名称:
p->
data.name);
\n请输入设备种类:
data.kind);
\n请输入报废日期:
data.over);
\n请输入设备是否报废:
data.yesno);
\n请输入设备购买时间:
data.time);
\n请输入设备价格:
data.price);
已经完成一条记录的添加。
r->
next=p;
//这一步是必需的,将p与先前的链表连起来构成一条新链表
r=p;
//也是必需的.将r又重设为新链的最后一个有用结点
(3)修改模块
voidModify(Node*equipment)//修改
Node*p;
charfind[20];
if(!
next)
没有资料可以修改!
return;
请输入要修改的设备ID号:
find);
p=equipment->
while(p!
=NULL)
if(strcmp(p->
data.ID,find)==0)//如果找到的话返回的是符合要求
p=p->
if(p)//若找到
intx;
while
(1)
完成修改请输入0否则输入任意数再进行修改:
x);
if(x==0)
{break;
请输入新设备号(原来是%s):
data.ID);
请输入新设备名称(原来是%s):
请输入新设备设备种类名称(原来是%s):
请输入新设备报废日期名称(原来是%s):
请输入新设备是否报废(原来是%s):
请输入新设备购买时间(原来是%s):
请输入新设备价格(原来是%s):
该项记录资料已经成功修改!
elseprintf("
你要修改的信息不存在!
(4)输出记录
voidDisp(Node*equipment)//输出记录
p)
没有记录可以显示!
\t\t\t\t显示结果\n"
设备号码,设备名称,设备种类,报废日期,是否报废,购买时间,价格\n"
while(p)
\n%-10s%-10s%-10s%-10s%-10s%-10s%-10s\n"
data.ID,p->
data.name,p->
data.kind,p->
data.over,p->
data.yesno,p->
data.time,p->
(5)统计模块
voidTongji(Node*equipment)//统计
intsel;
intflag2=0,ha=0;
charfind[20];
next)//若链表为空
没有资料可以
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法与数据结构 算法 数据结构 课程设计 报告