数据结构仓库管据理课程设计.doc

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课程设计 2013-11-12 目 录 一:程序设计题目……………………………………………2 二:程序设计目标……………………………………………2 三:问题描述…………………………………………………2 四:.需求分析………………………………………………2 五:概要设计…………………………………………………2 六:详细设计………………………………………………3 初始化表 ……………………………………………4 仓库管理系统和仓库链表的建立…………………4 插入数据……………………………………………4 仓库链表的查询……………………………………5 删除数据…………………………………………6 仓库链表的输出……………………………………6 测试分析…………………………………………6 使用说明…………………………………………6 数据测试…………………………………………6 七:程序源代码:课程设计总结 一.程序设计题目:仓库管理系统 二.程序设计目标:帮助学生熟练掌握线性表的基本操作在俩种存储结构上的实现,其中以双向链表链表的操作和应用为重点内容。 三.问题描述:建立一个仓库管理程序,可以按顺序和货物名称查询仓库存储情况,也可以增加或删除货物以及建立新的仓库存储系统。 四 .需求分析: 创建双向链表,设计仓库管理系统。 向链表中插入数据,输入数据 删除链表中的数据 查找链表中的内容 销毁双向链表,释放内存空间; 输出表格 五.概要设计:;可以采用双向链表的存储结构,如可定义如下的存储结构: typedef struct dnode /*定义双向链表结构体*/ { int number; /*商品编号*/ char name[max]; /*商品名称*/ int counter; /*商品数量*/ struct dnode *prior,*next; /*定义两指针,分别指向其前驱和后继*/ }dlnode; 六.详细设计: 总体操作步骤: 分配存储空间,初始化表; (2) 对表进行插入、删除操作; (3)完成操作。 初始化表 ? (1)申请内存 (2)数据置空 (3)置表头,完成操作 2.仓库管理系统和仓库里链表的建立 3. 插入数据 ? (1)申请内存 (2)置数据 (3)将结点插入,完成操作 4.数据查询(仓库链表的查询) 5. 删除数据 ?(1)判断相应结点是否存在 (2)从链中取出该结点 (3)将结点释放,完成操作 6.新的仓库管理系统,仓库链表的输出: 7.测试分析 白盒: 查看代码完整性 黑盒: 测试是否可以正确的创建,删除,插入,打印,查找等操作 8.使用说明 插入删除语句:删除1条内容 插入语句:插入一条信息 自动打印:打印内容 9.测试数据: 测试内容 测试结果 删除一条数据 正确 插入一条数据 正确 正常打印数据 正确 正常查找内容 正确 七:程序源代码 #includestdio.h #include string.h #include stdlib.h char NO[10]; //商品编号 char name[30]; //商品名称 char count[5]; //商品数量 } DataType; typedef struct node { //结点类型定义 DataType data; //结点数据域 struct node *next; //结点指针域 } ListNode; typedef ListNode *LinkList; LinkList head; ListNode *p; LinkList CreateList(void); void InsertNode(LinkList head,ListNode *p); ListNode *ListFind(LinkList head); void DelNode(LinkList head); void PrintList(LinkList head); /*******尾插法建立带头结点的仓库管理链表算法*******/ LinkList CreateList(void) { LinkList head=(ListNode *)malloc(sizeof(ListNode)); //申请头结点 ListNode *p,*rear; char flag=y; //int flag=0; //结束标志置0 rear=head; //尾指针初始指向头结点 while (flag==y) { p=(ListNod

文档评论(0)

kkko + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档