数据结构课程设计《商店管理系统》

上传人:第*** 文档编号:32756755 上传时间:2018-02-12 格式:DOC 页数:17 大小:631KB
返回 下载 相关 举报
数据结构课程设计《商店管理系统》_第1页
第1页 / 共17页
数据结构课程设计《商店管理系统》_第2页
第2页 / 共17页
数据结构课程设计《商店管理系统》_第3页
第3页 / 共17页
数据结构课程设计《商店管理系统》_第4页
第4页 / 共17页
数据结构课程设计《商店管理系统》_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《数据结构课程设计《商店管理系统》》由会员分享,可在线阅读,更多相关《数据结构课程设计《商店管理系统》(17页珍藏版)》请在金锄头文库上搜索。

1、1浙江农林大学程序设计综合实习报告设计题目: 商店管理系统专 业 电子信息类 班 级 095 姓 名 陈晓艳 学 号 200905070507 起止时间 2010.7.5-2010.7.10 20092010 学年 第 三 学期2目 录第一章 需求分析 3第二章 概要设计 3第三章 详细分析 4第四章 运行结果分析 11第五章 参考文献 173一、需求分析在日常生活中,商店里所存商品成千上万,若没有一个方便快捷的系统来对商品进行有效的管理,我们就会花费很多的人力物力和时间。商店管理系统这一课题,是通过运用数据结构知识中线性表的存储结构和查找,插入,删除等基本运算,来实现对商店的商品简单管理,完

2、成对商品的添加,进货,卖出,查看,删除等基本操作。同时,通过对这个课题的完成,让大家更好地理解与运用所学知识,提高动手能力,提高编程能力和专业水平,更加增强了同学间的合作组织能力。二、概要设计1、抽象数据类型定义因程序中有大量的插入、删除,所以用线性表的链表存储结构来实现,ADT List数据对象:D=ai|aiElemSet,i=1,2,n,n0数据关系:R1=|ai-1,aiD,i=2,n2、主程序void main()switch()Case 1:Case 2:Case 3:3、程序模块:该程序有九个模块:主函数、链表存储结构、添加新商品函数、添加已有商品数量函数、查询商品函数、删除商品

3、函数、卖出商品函数、查看库存函数,页面函数4三、详细分析1、存储结构typedef structchar name25; / 商品名称int mount; /商品数量float price; /商品单价long data; /入库日期long num; /商品编码goods;typedef struct nodegoods data;struct node *next;LNode,*LinkList;2、主函数void main()int key;LinkList H;H=Creat_LinkList( );strcpy(H-data.name,computer);H-data.data=20

4、100609;H-data.mount=1000;H-data.num=1;H-data.price=20000;H-next=NULL;LinkList L;L=Creat_LinkList( );strcpy(L-data.name,car);L-data.data=20100609;L-data.mount=1000;L-data.num=2;L-data.price=20000;L-next=NULL;H-next=L;while(1)pri();scanf(%d,switch(key)5case 0:exit(0);case 1:Insert_LinkList(H);break;ca

5、se 2:add_LinkList(H);break;case 3:Search(H);break;case 4:H=Del_LinkList(H);break;case 5:Sell(H);break;case 6:Find(H);break;3.、查找函数void Search(LinkList H)/查找商品int n;LinkList p;long num;char name25;p=H;printf(请选择:n);printf(1、按商品名称查询n);printf(2、按商品编码查询n);printf(0、退出n);scanf(%d,switch(n)case 0:exit(0);c

6、ase 1:printf(请输入需要查找的商品名称:n);scanf(%s,name);while(p)6if(!strcmp(p-data.name,name)printf(查找成功!n);printf(商品名称%sn 商品数量%dn 商品单价%fn 入库日期%ldn 商品编码%ldn,p-data.name,p-data.mount,p-data.price,p-data.data,p-data.num);break;elsep=p-next;if(!p)printf(查找失败,库中不存在此商品!n);break;case 2:printf(请输入需要查找的商品编码:n);scanf(%l

7、d,while(p)if(p-data.num=num)printf(查找成功!n);printf(商品名称%sn 商品数量%dn 商品单价%fn 入库日期%ldn 商品编码%ldn,p-data.name,p-data.mount,p-data.price,p-data.data,p-data.num);break;elsep=p-next ;if(!p)printf(查找失败,库中不存在此商品!n);break;4、添加商品数量函数void add_LinkList(LinkList H)LinkList p;long num,m;int key;7p=H;while(key)printf

8、(请输入商品编码:n);scanf(%ld,while(p)/在库中查找if(p-data.num=num)break;elsep=p-next;if(p)/查到商品printf(请输入添加的商品数量:n);scanf(%d,p-data.mount+=m;printf(现在库存此商品%d 件n,p-data.mount);elseprintf(库中没有该商品!n);printf(1.继续添加 0.退出n);scanf(%d,5、添加新商品函数int Insert_LinkList(LinkList H)LinkList p,q;int key=1,amount;long anum,adata

9、;char aname25;float aprice;while(key)p=H;q=(LinkList)malloc(sizeof(LNode);if(!q)printf(申请空间失败n);return 0;else8printf(输入商品名称:n);scanf(%s,aname);printf(输入商品数量:n);scanf(%d,printf(输入商品单价:n);scanf(%f,printf(输入商品入库日期:n);scanf(%ld,printf(输入商品编码:n);scanf(%ld,/把新商品信息赋给新结点strcpy(q-data.name,aname);q-data.data

10、=adata;q-data.mount=amount;q-data.num=anum;q-data.price=aprice;/修改指针q-next=p-next;p-next=q;printf(新商品添加成功!n);printf(1.继续添加商品 0.退出n);scanf(%d,return 1;6、删除商品函数LinkList Del_LinkList(LinkList H)LinkList p,q;int key=1;long num;while(key)printf(请输入需要删除的商品编号:n);scanf(%ld,p=H;q=p;p=p-next;while(p)9if(p-dat

11、a.num=num)q-next=p-next;free(p);printf(删除成功!n);break;elseq=p;p=p-next;if(p=NULL)printf(没有你要删除的商品!n);printf(1.继续删除 0.退出n);scanf(%d,return H;7、卖出商品函数void Sell(LinkList H) LinkList p;long num,m;int key;p=H;while(key)printf(请输入商品编码:n);scanf(%ld,while(p)/在库中查找if(p-data.num=num)break;elsep=p-next;if(p)/查到

12、商品printf(请输入卖出的商品数量:n);scanf(%d,if(p-data.mount=m)/库中商品数量够出售10p-data.mount-=m;printf(此商品库中还有%d 件n,p-data.mount);elseprintf(库中该商品存货不足!n);elseprintf(库中没有该商品!n);printf(1.继续卖出 0.退出n);scanf(%d,8、查看库存函数void Find(LinkList H) LinkList p;p=H;printf( 商品名称 商品数量 商品价格 入库日期 商品编码n);while(p)printf(%20s %10d %10.2f

13、%10ld %10ldn,p-data.name,p-data.mount,p-data.price,p-data.data,p-data.num);p=p-next;9、页面函数void pri()printf(=n);printf(| 商店管理系统 |n);printf(=n);printf(| 1、添加新商品 |n); printf(| 2、添加已有商品数量 |n);printf(| 3、查询商品信息 |n);printf(| 4、删除商品信息 |n);printf(| 5、卖出商品 |n);printf(| 6、查看库存 |n);printf(| 0、退出 |n);printf(=n);printf(请输入功能选项:);11四、运行结果分析运行后,进入主界面添加新商品输入 1,进入后,按提示输入新商品各项信息后,显示新商品添加成功继续添加按 1,退出按 0返回主界面12添加已有商品输入 2,输入

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 工程造价

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号