设为首页 加入收藏

TOP

顺序结构栈与队列之货物货架管理(一)
2018-11-08 16:10:15 】 浏览:338
Tags:顺序 结构 队列 货物 货架 管理
#include <iostream>
#include<string.h>
using namespace std;
static int n;       //货架(栈)的最大容量
 
//信息结构体
typedef struct /*Inform*/      //可以去掉Inform,在需要在结构体中定义结构体对象(指针)时不能去掉
{
    string name;
    int a;
}Inform;
 
//栈的*顺序*结构体
typedef struct
{
    Inform *base;      //栈和队列存储的元素都为inform类,所以指针定义为inform类
    Inform *top;
    int stacksize;
}SqStack;
 
//队列*顺序*结构体
typedef struct
{
    Inform *base;
    int fro;
    int rear;
}SqQueue;
 
void Found1(SqStack &s);      //货物上架
void Found2(SqStack &s);      //创建顺序空栈
void Foundd(SqQueue &d);      //创建顺序队列
void TurnsZ1(SqStack &s1,SqQueue d);      //对于前天未剩余(第一天)倒货
void TurnsZ2(SqStack &s1,SqStack &s1_,SqStack s2);      //对于前天有剩余倒货
void Print(SqStack &s1);        //取下货架上的货物
 
int main()
{
    int day=1,k;
    cout << "请输入货架的最大容量\t";
    cin >> n;
    SqStack s1,s1_,s2;      //s1为货架货物;  s1_为第二天上架货物暂存处  s2:临时栈
    SqQueue d;      //声明队列
    Found2(s1);
    Found2(s1_);
    Found2(s2);    //创建四个空栈
    while(k!=3)
    {
       cout<<"第"<<day++<<"天货物上架"<<endl;
       if(s1.base==s2.top)
       {
           Found1(s1);
           TurnsZ1(s1,d);
           cout<<"1:出售货物 2:继续上货 3:结束上货"<<endl;
           if(k==1)
              cin>>k;
           switch(k)
           {
               case 1:
                   {
                   Print(s1);
                   cout<<"2:继续上货 3:结束上货"<<endl;
                   cin>>k;
             &n
首页 上一页 1 2 3 4 下一页 尾页 1/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇关于约瑟夫循环使用单链表的问题 下一篇数据结构与算法:链表——递增排序

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目