【急】商品货架管理代码

来源:百度知道 编辑:UC知道 时间:2024/07/07 12:29:48
求商品货架管理代码 最好有问题描述、要求、算法思想、总结等 要详细 谢谢

一、 问题描述
商店货架以栈的方式摆放商品。生产日期越接近的越靠栈底,出货时从栈顶取货。一天营业结束,如果货架不满,则需上货。入货直接将商品摆放到货架上,则会使生产日期越近的商品越靠近栈顶。这样就需要倒货架,使生产日期越近的越靠近栈底。
一、 基本要求
设计一个算法,保证每一次上货后始终保持生产日期越近的商品越靠近栈底。
二、 设计思想
可以用一个队列和一个临时栈作为周转。
四、实现代码
#include<iostream>
using namespace std;
typedef int SElemType;
typedef struct { //建立顺序栈存储结构
SElemType *base;
SElemType *top;
int stacksize;
}Sqstack;
int init(Sqstack &s,int maxsize) //初始化
{
s.base=new SElemType[maxsize];
if(!s.base)exit(1);
s.top=s.base;
s.stacksize=maxsize;
return 0;
}
int push(Sqstack &s,int e) //入栈
{
if(s.top-s.base==s.stacksize)return 0;
else{*s.top=e;
s.top++;}
return 0;
}
int pop(Sqstack &s) //出栈
{
int e;
if(s.top==s.base){return 0;}
else{e=*--s.top;}
return e;
}
int length(Sqstack &L) //求栈长
{
SElemType *p;
p=L.base;
for(int i=0;p!