商品货架管理实验的报告
商品货架管理实验报告
篇一:商品货架管理实验报告 西安郵電學院 数据结构课内实验报告 题 目:商品货架管理 院系名称: 计算机学院 专业名称: 软件工程专业 班 级: 学生姓名:学号(8位): 一. 需求分析 商品货架管理:把商品货架看成一个栈,栈顶商品的生产日期最早,栈底商品的生产日期最近,上货时,需要倒货价,以保证生产日期较近的商品在较下的位置。 (1) 输入的形式和输入值的范围:输入商品名称和日期如:aa XX0505 (2) 输出的形式:商品名称和生产日期 如:bb XX0606 (3)程序所能达到的功能:商品上货时,需要倒货价,以保证生产日期较近的商品在较下的位置。 (4)测试数据: (5) 输入:aaXX0808 bb XX0707 cc XX0505 输出:cc XX0505 bb XX0707 aaXX0808 二. 概要设计 数据类型的定义: struct information /*定义商品信息*/ { char name[10]; /*名称*/long date; /*生产日期*/ }; typedef struct/*定义顺序栈*/ { struct information sp[size];int top;}seqstack; (1)int push(seqstack *s1): 进栈s1栈从栈顶top=0开始,按商品日期从近到晚输入,如先输入XX0808再输入XX0707然后输入XX0606,再输出结果; 流程图: (2)int cmp(seqstack *s1,seqstack *s2,int TOP) 插入新商品,输入新商品名字和日期, 1)旧:0707,0808,新0909,比较新旧商品的生产日期,当s1不为空栈和新商品的日期大于s1栈顶的日期如:XX0909-XX0707>0时,把s1栈顶的内容出栈,并进栈道s2,依次进行比较,比较结束后,把新产品的数据进栈s1,然后把s2的数据依次从栈顶进展到s2,。如图: 新商品0909 s1 2)旧0707,0808,新0606,因为0606-0707>0,直接将新商品进入s1栈; 3)旧0606,0909.新0707, 流程图:s1 s1 (3) void pop(seqstack *s1,int TOP) 输出插入新商品后的货架商品顺序。 流程图:篇二:商品货架管理 洛 阳 理 工 学 院 课 程 设 计 报 告 课程名称 设计题目 专 业 课 程 设 计 任 务 书 设计题目:商品货架可以看成一个栈,栈顶商品的生产日期最早,栈底商品的生产日期最近。上货时,需要倒货架,以保证生产日期较近的商品在较下的位置。 设计内容与要求:针对一种特定商品,实现上述管理过程。 课 程 设 计 评 语 成绩: 指导教师:_______________年月日 1. 问题描述 商品货架可以看成一个栈,栈顶商品的生产日期最早,栈底商品的生产日期最近。上货时,需要倒货架,以保证生产日期较近的商品在较下的位置。 2. 基本要求 针对一种特定商品,实现上述管理过程。 3. 数据结构 struct information /*定义商品信息*/ { char name[10]; /*名称*/ long date; /*生产日期*/ }; typedef struct/*定义顺序栈*/ { struct information sp[size];int top; }seqstack; 4.总体设计 Push函数 cmp函数Pop函数 5.详细设计 1 输入模块: 输入商品信息 2 排序模块:按照要求实现商品生产日期排序的功能 3 输出模块:输出商品信息 在这次实验中,我主要采用了栈这一数据结构,通过建立两个栈,一个输入栈, 一个辅助栈,辅助栈在插入的时候将较新商品早的移入,新商品进主栈后将辅助栈的数据移到主栈中,主栈就按生产日期较近的商品在较下位置存放。再编写一个购买程序将栈顶的商品上架,实现产品的出栈。 6.测试与调试 7.源程序 #include #include #define size 4 struct information /*定义商品信息*/ { 篇三:商品货架管理 合肥学院 计算机科学与技术系 课程设计报告 XX ~ XX 学年第二学期 课 程