【数据结构】超市商品库存信息管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
东北大学信息科学与工程学院
数据结构课程设计报告题目超市商品库存信息管理系统课题组长宋振
课题组成员常玉颖于红爽
专业名称计算机科学与技术
班级计1307
指导教师杨雷
2015 年1月
课程设计任务书
目录
1 课题概述 (4)
1.1 课题任务 (4)
1.2 课题原理 (4)
1.3 相关知识 (4)
2 需求分析 (5)
2.1 课题调研 (5)
2.2 用户需求分析 (5)
3 方案设计 (5)
3.1 总体功能设计 (5)
3.2 数据结构设计 (10)
3.3 函数原型设计 (11)
3.4 主算法设计 (12)
3.5 用户界面设计 (14)
4 方案实现 (15)
4.1 开发环境与工具 (15)
4.2 程序设计关键技术 (16)
4.3 个人设计实现(按组员分工)
4.3.1 宋振设计实现 (17)
4.3.2 常玉颖设计实现 (17)
4.3.3于红爽设计实现 (17)
5 测试与调试 (23)
5.1 个人测试(按组员分工) (23)
5.1.1 宋振测试 (23)
5.1.2 常玉颖测试 (23)
5.1.3 于红爽测试 (23)
5.2 组装与系统测试 (33)
5.3 系统运行 (36)
6 课题总结 (39)
6.1 课题评价 (39)
6.2 团队协作 (40)
6.3 团队协作 (41)
6.4 个人设计小结(按组员分工) (42)
6.4.1宋振设计小结 (42)
6.4.2 常玉颖设计小结 (42)
6.4.3 于红爽设计小结 (42)
7 附录A 课题任务分工 (50)
A-1 课题程序设计分工 (50)
A-2 课题报告分工 (51)
附录B 课题设计文档(光盘) (52)
B-1课程设计报告(电子版) (52)
B-2源程序代码(*.H,*.CPP) (52)
B-3工程与可执行文件) (52)
B-4屏幕演示录像文件(可选) (52)
附录C 用户操作手册(可选) (53)
C.1 运行环境说明 (53)
C.2 操作说明 (54)
1 课题概述
1.1课题任务
超市商品库存信息管理系统
【问题描述】
对一个中小型超市的库存商品信息管理作一个简单的模拟。
【设计要求】
设计超市库存商品信息维护管理的模拟程序。
(1)采用顺序表或结构体链表存储结构。
(2)实现超市商品的创建、分类、出库、入库、修改等管理功能。
(3)实现库存商品的各种查询和统计功能。
(4)考虑采用优化的查询和排序算法。
(5)其它完善性功能。
1.2 课题原理
本程序采用邻接表的结构,将用户信息存在邻接表的顺序表中,将入库出库的商品信息存储在链表中。程序运行前,将文件中的信息读入一个三维数组中,然后把三维数组读入邻接表中。程序运行结束后,将邻接表的信息存储到三维数组中,再将三维数组的信息转存到文件中,实现了信息的长久存储。
总而言之,本实验的入库出库查询等功能,均是对邻接表的操作,存储是借助了一个三维数组存入到文件中。
1.3 相关知识
数据结构:邻接表、邻接表的遍历,排序、查找、文件、顺序表。
2 需求分析
2.1 课题调研
本实验开始之前,询问了几家中小型超市,了解了他们商品库存运营的模式。每一件商品都经历了入库、在库、出库三个过程。入库需要的商品信息比较多,包括商品名称,入库时间,入库价格,入库数量,计量单位,经手人等相关信息。而出库,在需要出售价格,
出售数量,出手日期,经手人即可。
2.2 用户需求分析
现代中小型超市基本都要走向实现商品信息智能化管理的道路,而商品库存管理系统能够有效的帮助他们记录每天的进账,出账,库存和交易记录。此系统有效地解决了传统记账的繁琐,账本数据易丢失,账本信息不安全等问题,是未来包括超市在内的商店运营必备的产品。
3 方案设计
3.1 总体功能设计
该程序主要分为以下几大功能,包括入库,出库,以及对库存的操作。对库存的操作又包括分类,查询等功能。而查询又包括按商品名称查询,按商品交易记录查询等子功能。而这些均建立在对邻接表的操作基础上实现的。
3.2 数据结构设计
程序的数据结构包括邻接表、顺序表。
顺序表用来存储从客户端输入的商品入库出库信息,然后读入邻接表中,邻接表的顺序表存储用户信息,链表存储商品信息。
struct commodity//商品信息的结构体
{
char name[20];
char brand[20];
float purprice; //商品进价
float selprice; //售价
int count; //数量
char purtime[20]; //进货时间
char seltime[20]; //出货时间
char unit[20]; //计量单位
char brokerage[20]; //经手人
char abstract[20]; //摘要
struct commodity *next;
int lin_len; //链表有多少节点
int sign; //做相同累加运算时的标记位