算法与数据结构课程设计 产品进销存管理系统.doc

算法与数据结构课程设计 产品进销存管理系统.doc

ID:61497252

大小:173.00 KB

页数:13页

时间:2021-02-06

算法与数据结构课程设计 产品进销存管理系统.doc_第1页
算法与数据结构课程设计 产品进销存管理系统.doc_第2页
算法与数据结构课程设计 产品进销存管理系统.doc_第3页
算法与数据结构课程设计 产品进销存管理系统.doc_第4页
算法与数据结构课程设计 产品进销存管理系统.doc_第5页
资源描述:

《算法与数据结构课程设计 产品进销存管理系统.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实习报告题目:编制一个产品进销存管理系统的程序一、需求分析1.针对食品这一行业,对其进行库房的产品进销存管理,选择线性顺序表来存储产品类,选择线性链表来存储属于此产品类的产品,并将产品链挂接到相应的产品类上。其中存储产品时还应将属于此产品的一些信息如产品的进货总量,进货日期,销出数量,销售时间等进行相应存储。2.能够对此库房产品进销存管理系统进行产品类的添加、产品的添加、产品数量的添加。3.能够用一定的查询方法查询库房每种产品的总量、进货日期、销出数量、销售时间等4.本演示程序以用户和计算机的对话方式执行,即在计算机终端上显

2、示“提示信息”之后,由用户在键盘上输入演示程序中规定的操作命令;相应的操作结果显示在其后。二、概要设计1.设定顺序表挂接链表的抽象数据类型定义:ADTsqmountlink{数据对象:D={ai

3、ai∈kindlist,i=1,2,…,n,n≥0}数据关系:R={

4、ai-1,ai∈D,i=2,3,…,n}基本操作:InitMountList(&L)操作结果:构造一个空的顺序表挂接链表L。DestroyMountList(&L)初始条件:顺序表挂接链表L已存在。操作结果:销毁顺序表挂接链表L。CreatMou

5、ntList(&L)初始条件:顺序表挂接链表L不存在。操作结果:创建一个顺序表挂接链表L,并将L返回。KindInsert(&L,n)初始条件:顺序表挂接链表L已存在。操作结果:向顺序表挂接链表L中添加n个产品类。ProductInsert(&L,i,n)初始条件:顺序表挂接链表L已存在且要将产品插入的产品类i已存在。操作结果:向顺序表挂接链表L中的产品类i中添加n种产品。ProQuantity_add(&L,i,e,n)初始条件:顺序表挂接链表L已存在且需添加数量的产品及产品所属的类也已存在。操作结果:添加顺序表挂接链表L

6、的产品类i中的产品e的总量。Visit(&L,i,e)初始条件:顺序表挂接链表L已存在且待查询产品所属产品类i也已存在。操作结果:在顺序表挂接链表L中查询产品e的各项信息(其进货总量、进货日期、销出数量、销售时间等)。DisplayList(&L)初始条件:顺序表挂接链表L已存在。操作结果:显示顺序表挂接链表L的内容。}2.本程序包含两个模块:1)主程序模块:voidmain(){初始化一个空的顺序表挂接链表L;创建初始的产品类、产品顺序表挂接链表L;列出要执行的各项操作;Loop:输入各项操作命令;switch(命令){接

7、受命令;处理命令;}}2)顺序表挂接链表单元模块——实现顺序表挂接链表的抽象数据类型;各模块之间的调用关系如下:主程序模块顺序表挂接链表单元模块一、详细设计1.程序设计#include#include#include#defineok1#defineerror0#defineoverflow0#defineSQMOUNTLINK_INIT_SIZE100#defineSQMOUNTLINKINCREMENT10typedefstructdate{intyear;int

8、month;intday;}date;//日期typedefstructproductlnode{charpname[30];//产品名称inttotalquantity;//产品总量dategoodsdate;//进货日期intsalesquantity;//销出数量datesalestime;//销售时间structproductlnode*nextproduct;}productlnode,*plinklist;typedefstructkindlnode{productlnode*firstproduct;charp

9、kindname[30];}kindlnode;typedefstruct{kindlnode*kindelem;intlength;intlistsize;}sqmountlink;intInitMountList(sqmountlink&L){//初始化一个空的顺序表挂接链表Linti;L.kindelem=(kindlnode*)malloc(SQMOUNTLINK_INIT_SIZE*sizeof(kindlnode));if(!L.kindelem)exit(overflow);L.length=0;L.lists

10、ize=SQMOUNTLINK_INIT_SIZE;for(i=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。