1、第 1 页 共 23 页 课程设计报告 课程名称:课程名称:数据结构课程设计 设计题目设计题目: 商品货架管理系统 系系 别:别: 计算机科学系 专专 业:业: 软件工程 组组 别:别: 学生姓名学生姓名: : - 学学 号号: - 起止日期起止日期: 2013 年 12 月 7 日2013 年 12 月 21 日 指导教师指导教师: 教研室主任:教研室主任: 第 2 页 共 23 页 目目 录录 一、一、 课程设计目的课程设计目的. 3 二、二、 问题描述问题描述 3 三、三、 需求分析需求分析 3 四、四、 概要设计概要设计 3 五、五、 详细设计详细设计 4 六、六、 测试分析测试分析
2、7 七、七、 使用说明使用说明 9 八、八、 测试数据测试数据 10 九、九、 源程序清单源程序清单 10 十、十、 模块说明模块说明 19 第 3 页 共 23 页 一课程设计目的 通过实习, 了解并初步掌握设计、 实现较大系统的完整过程, 包括系统分析、 编码设计、 系统集成、以及调试分析,熟练掌握数据结构的选择、设计、实现以及操作方法,为进一步 的应用开发打好基础。 二问题描述 设计、实现一个商品货架管理系统,实现商品出售,增加,查询(按商品代号,商品名 字,生产日期) ,修改,输出过期商品,输出小于多少数量的商品。 三需求分析 printf(“tt *n“); printf(“tt -
3、 1.建立目前商品信息 -n“); printf(“tt - 2.添加商品 -n“); printf(“tt - 3.出售商品 -n“); printf(“tt - 4.查询商品 -n“); printf(“tt - 5.修改商品 -n“); printf(“tt - 6.显示所有商品信息 -n“); printf(“tt - 0.退出系统 -n“); printf(“tt *nn“); 按序号依次实现功能。 四概要设计 4.1 系统用到的抽象数据类型定义: 1、/定义结构体 typedef struct node int n; /商品代号 char name20; /商品名称 int dat
4、e; /生产日期 int validity; /保质期(天) int num; /商品数量 struct node *next; LiStack,*sqstack; 基本操作: 第 4 页 共 23 页 五、详细设计 /输出所有商品 p 的名字、生产日期、保质期。 void print(sqstack p) sqstack L=(LiStack *)malloc(sizeof(LiStack); L=p-next; if else /增加商品 sqstack push(LiStack *top) /创建一个存放商品信息的栈 sqstack creat() /出售商品 sqstack pop(L
5、iStack *top) 第 5 页 共 23 页 /按序号查找商品 void SequenceNumberF(LiStack *top) /按商品名字查询商品 void NameF(LiStack *top) /按商品生产日期查找商品 void ProductionDateF(LiStack *top) /按商品数量查找商品,查找小于该数量的商品 void NumberF(LiStack *top) /date 加 validity,并返回 date,到期时间。 int DateF(int date,int validity) /查询过期商品信息 void OverdueF(LiStack *top) /查询商品 void find(LiStack *top)