- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
洛 阳 理 工 学 院课 程 设 计 报 告 课程名称 数据结构课程设计 设计题目 仓库管理系统 专 业 软件工程 班 级 学 号 姓 名 完成日期 2018年1月12日 课 程 设 计 任 务 书设计题目:仓库管理系统 设计内容与要求:建立一个仓库管理程序,可以按顺序和货物名称查询仓库存储情况,也可以增加或删除货物信息、实现货物的入库出库,要求能用文件保存仓库货品信息。【基本要求】(1)记录货物编号,货物名称,货物数量。(2)能够实现按货物编号、按货物名称查询仓库中货物的库存情况。(3)能够实现货物入库、出库,并及时更新库存数量。 指导教师: 2017年12月27日课 程 设 计 评 语成绩: 指导教师: 2018 年 1月12 日1.算法思想:根据题意我们需要建立一个仓库管理系统,满足可以按顺序和货物名称查询仓库存储情况,可以增加或删除货物信息、实现货物的入库出库,能用文件保存仓库货品信息要求。经过考虑我用双链表来实现以上要求,双链表每个数据节点都有两个指针,分别指向直接后继和直接前驱,所以从双链表中的任意结点开始,都可以很方便地访问它的前驱结点和后继结点。方便我们的操作。2.模块划分:描述所设计程序的各个模块(即函数)功能,给出函数调用关系图,主要功能函数的流程图(至少画2个函数的)。各功能模块:void main()//主函数 DNode *create(DNode *L)//创建链表头节点 DNode *input(DNode *L)//入库函数 DNode *output(DNode *L)//按编号出库函数 void search(DNode *L)//查找的主要菜单 void save(DNode *L)//输出到文件函数 void search_bianhao(DNode *L)//按编号查找的函数 void search_name(DNode *L)//按名称查找的函数 void display(DNode *L) //显示货物清单DNode* add(DNode *L) //更新数据函数调用关系图:L-bianhaoin-bianhao直接入库插入L之前插入L之后输入货物名称、编号、数量L-next是否是头结点开始NNY结束入库函数流程图: 更新数据函数:表内是否有元素编号是否存在更新数据选择添加或减少表内无元素编号不存在开始NNYY减少添加结束3.数据结构:int ifempty=0;//标志,判断链表是无否为空typedef struct DNode //定义双向链表结构体 { int bianhao; //货物编号 char name[20]; //货物名称 int shuliang; //货物数量 struct DNode *prior, *next; // 定义两指针,分别指向其前驱和后继 }DNode; 4.测试测试菜单:测试入库函数:输入:名称:shui编号:1001数量:100测试出库函数输入出库货物编号:1001测试显示货物清单函数:在菜单栏选择4测试查找货物函数:按编号查询:输入10022:按名称查询:输入yifu:测试更新货物函数:添加货物:输入1002;输入添加数量200减少货物:输入编号1003输入减少货物50测试输出到文件函数:5.源程序:#includestdio.h #includestdlib.h #includestring.h #includemalloc.h#includewindows.h int ifempty=0;//标志,判断链表是无否为空 typedef struct DNode //定义双向链表结构体 { int bianhao; //货物编号 char name[20]; //货物名称 int shuliang; //货物数量 struct DNode *prior, *next; // 定义两指针,分别指向其前驱和后继 }DNode; void main();//主函数 DNode *create(DNode *L);//创建链表头节点 DNode *input(DNode *L);//入库函数 DNode *output(DNode *L);//按编号出库函数 void search(DNode *L);//查找的主要菜单 void save(DNode *L);//输出到文件函数 void search_bianhao(DNode *L);//按编号查找的函数 void search_name(DNode *L);//按名称查找的函数 void display(DNode *L) ; //显示货物清单DNode* add(DNode *L); //更新数据void main() { int x;
文档评论(0)