《服装仓库管理系统课程设计报告(共22页).doc》由会员分享,可在线阅读,更多相关《服装仓库管理系统课程设计报告(共22页).doc(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上重庆科技学院数据结构课程设计报告 学 院:_电气与信息工程学院_ 专业班级: 计科2011-04 学生姓名: 学 号: XXXX 设计地点(单位)_ _ 计算机基础自主学习中心 _ _ _设计题目:_ 服装仓库管理系统的设计_ 完成日期:2012年 7 月 6 日 指导教师评语: _ _ 成绩(五级记分制):_ _ 指导教师(签字):_ _ 重庆科技学院课程设计任务书设计题目:服装仓库管理系统的设计学生姓名课程名称数据结构课程设计专业班级计科2011-04地 点计算机基础自主学习中心起止时间2012.6.25-2012.7.6设计内容及要求内容:服装仓库管理系统至少具
2、有:入库、出库、查询、统计等功能。服装库存信息至少包括:品牌、分类、型号、大小、颜色、价格、数量、生产日期、生产厂家名称等,查询主要是针对服装品牌、分类、颜色、价格、生产日期、生产厂家名称等字段进行的,统计主要是对满足一定条件的数量、价格、大小、分类等特征进行的。要求:确定并使用适当的数据结构,能从外部文件读入服装库存信息,也能输出到外部文件进行永久保存。设计参数测试数据要求:在文本文件中创建初始库存信息,记录不少于500条。数据示例:七匹狼 上衣 Q1234 XXL 黑 799 20 2012-6-11七匹狼 三彩 羽绒服 SC213 XL 白 1588 -5 2012-1-21三彩数量大于
3、0表示入库,小于0为出库进度要求2012.6.25 完成任务的讲解、并接受课程设计任务,选定课程设计的题目2012.6.26 了解任务的算法、并画出算法的程序流程图,对任务的关键技术进行验证、并确定解决办法2012.6.27-2012.6.29 程序设计及编码,上机调试2012.7.02 对程序进行调试,设计测试用例进行测试2012.7.03 整理课程设计的过程、并进行总结,完善程序功能2012.7.04 编写课程设计报告初稿2012.7.05 完善课程设计报告、并准备答辨2012.7.06 提交课程设计报告和程序,进行答辨参考资料1严蔚敏 吴伟民, 数据结构,清华大学出版社,2007.32程
4、杰 ,大话数据结构,清华大学出版社,2011.63(美)Stephen Prata, C Primer Plus中文版(第五版),人民邮电出版社,2005.2其它说明1.本表应在每次实施前一周由负责教师填写二份,学院审批后交学院教务办备案,一份由负责教师留用。2.若填写内容较多可另纸附后。3.一题多名学生共用的,在设计内容、参数、要求等方面应有所区别。系主任:雷亮 指导教师:黄永文/王双明/熊茜/彭军/王成敏 2012年 6月 20日摘要 随着计算机技术的迅速发展,人们对管理方式有了新的要求,传统的手写记录的方式已经满足不了现代服装库存的需求,根据社会的需求,特制作了该服装库存管理软件。 通过
5、该软件能方便的是实现对服装库存的管理,该软件管理对象包括服装的品牌、分类、型号、大小。颜色、生产日期、生产厂家名称等;通过对以上信息的统计,在使用单链表实现了产品的出库、入库、数据录入、数据读取、统计等功能;通过这些功能的实现,操作员能对产品信息实现动态的管理。减少企业的生产成本。关键字:服装库存 动态管理 链表目录第一章 设计内容和要求 11.1 设计内容 11.2 设计要求 1第二章 需求分析 22.1 数据录入功能 22.2 数据删除功能 22.3 数据的修改 22.4 数据查询 22.5 信息统计 2第三章 系统设计 33.1 总体功能图 33.2 总体流程图 4第四章 主要功能设计流
6、程 54.1 录入功能流程图 54.2 入库功能流程图 64.3 修改信息流程图 74.4 出库函数流程图 8第五章 代码实现 95.1 录入函数代码的实现 95.2 出库函数代码的实现 105.3 信息查找代码的实现 115.4 统计函数代码的实现 12第六章 系统测试及使用说明14总结 16参考文献 17致谢 18第一章 设计内容和要求1.1 设计内容内容:服装仓库管理系统至少具有:入库、出库、查询、统计等功能。服装库存信息至少包括:品牌、分类、型号、大小、颜色、价格、数量、生产日期、生产厂家名称等,查询主要是针对服装品牌、分类、颜色、价格、生产日期、生产厂家名称等字段进行的,统计主要是对
7、满足一定条件的数量、价格、大小、分类等特征进行的。1.2 设计要求要求:确定并使用适当的数据结构,能从外部文件读入服装库存信息,也能输出到外部文件进行永久保存。第二章 需求分析2.1 数据录入功能 数据录入是该软间必备的基本功能,当链表为空时,通过服装变量的判断进行信息的录入。函数中用一临时变量接受参数,当输入一条信息后介入链表的尾端,依次录入信息形成一个完整的链表。2.2 数据删除功能 数据有添加就必须也有对应的删除功能,删除时一项对数据管理的基本功能。当服装出库时就要对其做相应的修改。删除数据时要输入服装的编号和数量,以便对应数据的查找,当记录不存在时实现提示信息,还要根据相应的数据进行判
8、断处理。2.3 数据的修改 输入时难免会有认为的错误,所以修改功能是必不可少的。修改数据首先得找到数据的位置,找到数据后再对需要修改的内容进行选择,然后,再做必要的修改。2.4 数据查询 查询是一项对信息管理的基本功能,当数据很多是如何精确快速的查找到数据,对一个管理员来说是很重要的。查询时可以通过多种方式,例如 编号、产品名称、进仓日期等。2.5 信息统计信息录入或者读取后需要相应的统计,数据统计是数据管理中必备的基本功能;数据统计时会对链表的节点逐个扫描,提取其中相应的数据信息进行累加操作,最后,返回统计后的数值。 第三章 系统设计3.1 总体功能图根据软件应用的需求,整体上实现了服装的出
9、库、入库、以及信息的读取、保存、查找、修改等功能。主函数服装入库修改信息服装出库服装查询服装统计读取文件 图3-1 总共功能图3.2 总体流程图 通过对各个函数实现的分析得到函数功能的总体流程图如下:主函数 读出信息信息为空插入服装信息显示信息服装出库服装入库创建信息服装查询服装统计信息修改删除服装信息查询服装信息统计服装信息修改服装信息 图3.2 总体流程图 第四章 主要功能设计流程4.1 录入功能流程图读取文件显示文件中保存的信息编号为零,无法录入当文件为空时信息录入录入服装信息录入服装编号 图4.1 录入功能流程图4.2 入库功能流程图 产品进库时管理员需要入库操作,起函数流程图如下所示
10、:入库函数输入入库服装编号录入数据信息扫描函数对服装数量进行处理存在相同编号的服装保存信息 4.2 入库函数流程图4.3 修改信息流程图函数针对库存服装的数量进行修改,其流程图如下所示:输入要修改的编号找到该数据输入要修改部分再次确认是否修改是否有此编号重新输入否是 图4.3 修改信息流程图4.4 出库函数流程图出库函数流程图如下所示:出库函数输入服装编号数量大于库存 扫描链表不存在 退出输入删除量 重新数量服装出库数量等于库存数量小于库存 图4.4 出库函数流程图第五章 代码实现5.1 录入函数代码的实现void addt(struct clothess *l);int enter(void
11、)/品牌、分类、型号、大小、颜色、价格、数量、生产日期、生产厂家FILE *fin;fin=fopen(in.txt,a+);assert(fin!=NULL);struct clothes eclothes;eclothes.brand=(char*)malloc(add*sizeof(char);/分配空间eclothes.kind=(char*)malloc(add*sizeof(char);eclothes.type=(char*)malloc(add*sizeof(char);eclothes.size=(char*)malloc(add*sizeof(char);eclothes.
12、color=(char*)malloc(add*sizeof(char);eclothes.factory=(char*)malloc(add*sizeof(char);printf(请依次输入品牌、分类、型号、大小、颜色、价格、数量、生产日期、生产厂家中间请用空格格开n);scanf(%s%s%s%s%s%lf%d%s%s,eclothes.brand,eclothes.kind,eclothes.type,eclothes.size,eclothes.color,&eclothes.prince,&eclothes.amount,eclothes.date,eclothes.factory
13、);fprintf(fin,%s %s %s %s %s %.1lf %d %s %sn,eclothes.brand,eclothes.kind,eclothes.type,eclothes.size,eclothes.color,eclothes.prince,eclothes.amount,eclothes.date,eclothes.factory);free(eclothes.brand);free(eclothes.kind);free(eclothes.type);free(eclothes.size);free(eclothes.color);free(eclothes.fac
14、tory);fclose(fin);printf(输入任意键继续);char ch;fflush(stdin);ch = getchar();system(cls);return 0;5.2 出库函数代码的实现int outcc(struct clothess *l)FILE *fin;fin=fopen(in.txt,w);assert(fin!=NULL);printf(请输入你要删除商品的条件n);struct clothesss n;struct clothess *p,*r;scanf(%s%s%s%s%s%lf%d%s%s,n.brand,n.kind,n.type,n.size,
15、n.color,&n.prince,&n.amount,n.date,n.factory);p=l;while(p-next!=NULL) p=p-next;if(!strcmp(p-next-brand,n.brand)&!strcmp(p-next-kind,n.kind)&!strcmp(p-next-type,n.type)&!strcmp(p-next-size,n.size)&!strcmp(p-next-color,n.color)&p-next-prince=n.prince&p-next-amount=n.amount&!strcmp(p-next-date,n.date)&
16、!strcmp(p-next-factory,n.factory)break;printf(%s %s %s %s %s %.1lf %d %s %sn,p-next-brand,p-next-kind,p-next-type,p-next-size,p-next-color,p-next-prince,p-next-amount,p-next-date,p-next-factory);struct clothess *cut;cut=p-next;p-next=p-next-next;free(cut);r=l;while(r-next!=NULL)r=r-next;fprintf(fin,
17、%s %s %s %s %s %.1lf %d %s %sn,r-brand,r-kind,r-type,r-size,r-color,r-prince,r-amount,r-date,r-factory);fclose(fin);return 0;5.3 信息查找代码的实现int cx()FILE *fin;fin=fopen(in.txt,r);assert(fin!=NULL);struct clothess *l;l=(struct clothess*)malloc(sizeof(struct clothess);l-next=NULL;struct clothess *p;struc
18、t clothess *q;while(!feof(fin)p=(struct clothess*)malloc(sizeof(struct clothess);fscanf(fin,%s%s%s%s%s%lf%d%s%sn,(*p).brand,(*p).kind,(*p).type,(*p).size,(*p).color,&(*p).prince,&(*p).amount,(*p).date,(*p).factory);p-next=l-next;l-next=p;printf(按品牌统计请按b,按分类统计请按k,按型号统计请按t,按大小统计请按s,按颜色统计请按c,);printf(按
19、价格统计请按p,按数量统计请按a,按时间统计请按d,按产商统计请按n);char c;fflush(stdin);scanf(%c,&c);switch(c)case b:cb(l);break;case k:ck(l);break;case t:ct(l);break;case s:cs(l);break;case c:cc(l);break;case p:cp(l);break;case a:ca(l);break;case d:cd(l);break;case f:cf(l);break;while(l-next!=NULL)q=l;l=l-next;free(q);fclose(fin
20、);printf(输入任意键继续);char ch;fflush(stdin);ch = getchar();system(cls);return 0;5.4 统计函数代码的实现int total()FILE *fin;fin=fopen(in.txt,r);assert(fin!=NULL);struct clothess *l;l=(struct clothess*)malloc(sizeof(struct clothess);l-next=NULL;struct clothess *p;struct clothess *q;while(!feof(fin)p=(struct clothe
21、ss*)malloc(sizeof(struct clothess);fscanf(fin,%s%s%s%s%s%lf%d%s%sn,(*p).brand,(*p).kind,(*p).type,(*p).size,(*p).color,&(*p).prince,&(*p).amount,(*p).date,(*p).factory);p-next=l-next;l-next=p;printf(按品牌统计请按b,按分类统计请按k,按型号统计请按t,按大小统计请按s,按颜色统计请按c,);printf(按价格统计请按p,按数量统计请按a,按时间统计请按d,按产商统计请按n);char c;ffl
22、ush(stdin);scanf(%c,&c);switch(c)case b:tb(l);break;case k:tk(l);break;case t:tt(l);break;case s:ts(l);break;case c:tc(l);break;case p:tp(l);break;case a:ta(l);break;case d:td(l);break;case f:tf(l);break;while(l-next!=NULL)q=l;l=l-next;free(q);fclose(fin);printf(输入任意键继续);char ch;fflush(stdin);ch = g
23、etchar();system(cls);return 0;第六章 系统测试及使用说明6.1 主界面6.2 文件查询6.3 商品的统计6.3 删除商品 总结 本次设计的服装库存管理软件实现了服装出库、入库、读取信息、录入信息等功能,方便了对服装信息的管理。很大程度上给库存管理员带来了诸多方便,为公司减少了人力成本。但本次设计时间有限,软件的设计还有一定的缺陷,有一些不满意的地方,像界面有些粗糙,程序可能过于冗长。参考文献1严蔚敏 吴伟民, 数据结构,清华大学出版社,2007.32程杰 ,大话数据结构,清华大学出版社,2011.63(美)Stephen Prata, C Primer Plus中文版(第五版),人民邮电出版社,2005.2致谢 本次程序设计的过程中遇到了许多问题,有些翻查了书本也是没用了,最后在老师指导下和同学的帮助下,成功的解决了那些问题。最终让我完成了本次的课程设计,再此对他们的帮助表示真诚的感谢! 2012/7/6 专心-专注-专业