商品货架管理实验报告.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
西安郵電學院 数据结构课内实验报告 题目 商品货架管理 院系名称: 计算机学院 专业名称: 软件工程专业 班 级: 学生姓名: 学号(8位): 需求分析 商品货架管理:把商品货架看成一个栈, 栈顶商品的生产日期最早, 栈底商品的生产日 期最近,上货时,需要倒货价,以保证生产日期较近的商品在较下的位置。 (1)输入的形式和输入值的范围:输入商品名称和日期如: aa⑵ 输出的形式:商品名称和生产日期 女口: bb(3) 程序所能达到的功能:商品上货时,需要倒货价,以保证生产日期较近的商品在较下 的位置。 (4) 测试数据: (5) 输入:abbcc输出:ccbba概要设计 数据类型的定义: struct in formation /* 定义商品信息 */ { char name[10]; /* 名称 */ long date; /* 生产日期 */ }; typedef struct/* 定义顺序栈 */ { struct in formati on sp[size]; int top; }seqstack; (1) int push(seqstack *s1): 进栈s1栈从栈顶top=0开始,按商品日期从近到晚输入,如先输入输入后输再输出结果; 流程图: (2) int cmp(seqstack *s1,seqstack *s2,int TOP) 插入新商品,输入新商品名字和日期, 1)旧:0707,0808,新0909,比较新旧商品的生产日期, 当si不为空栈和新商品的日期大 于si栈顶的日期如:20100707>0时,把si栈顶的内容出栈,并进栈道 s2,依次进 行比较,比较结束后,把新产品的数据进栈 si,然后把s2的数据依次从栈顶进展到 S2,。如 图: 新商品0909 2)旧0707,0808,新0606,因为0606-0707>0,直接将新商品进入 si栈; 0606 1 i si \ n厶 旷tv p i 0707 \ 0808 0606 3)旧 0606,0909.新 0707, si si 0707 流程图: (3) void pop(seqstack *s1,int TOP) 输出插入新商品后的货架商品顺序。 流程图: 开始 三?详细设计 实现概要设计中定义的所有数据类型, 对每个操作只需要写出伪码算法; 对主程序和其 他模块也都需要写出伪码算法(伪码算法达到的详细程度建议为:按照伪码算法可以在计算 机键盘直接输入高级程序设计语言程序 );画出函数和过程的调用关系图。 struct in formation /* 定义商品信息 */ { char name[10]; /* 名称 */ long date; /*生产日期 */ }; typedef struct/* 定义顺序栈 */ { struct in formati on sp[size]; int top; }seqstack; int push(seqstack *s1) { 初始化两个栈中元素商品信息, 一个用于出栈显示,另一个作为原始站参与以下各个操 作输出原来货架上的商品的商品的生产日期是 :原来货架上的商品的栈底商品的生产日期 是设置记录栈顶元素top =1;显示原始货架上的商品信息 int i=0,t; 〃s1栈从栈顶top=0开始,按商品日期从近到晚输入,如先输入再输入for(s1->top=0;s1->top<size-1;s1->top++) { prin tf("Please in put the %d's n ame and the date of product ion:",s1->top+1); scan f("%s %d",s1->sp[s1->top]. name, &s1->sp[s1->top].date); } prin tf("\n"); t=--s1->top; prin tf("Beg in en ter the new goods:\n"); prin tf("Name of goods || Date of product ion :\n ”); for(s1->top=t;s1->top>=0;s1->top--) { prin tf("%9s",s1->sp[s1->top] .n ame); printf(" %8d\n",s1->sp[s1->top].date); } return(t);//返回s1

文档评论(0)

497721292 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档