| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1476 人关注过本帖
标题:出栈进栈的简单操作!求帮忙改一下我的程序!
取消只看楼主 加入收藏
jj369258
Rank: 4
等 级:业余侠客
帖 子:116
专家分:226
注 册:2010-12-2
结帖率:69.57%
收藏
已结贴  问题点数:5 回复次数:0 
出栈进栈的简单操作!求帮忙改一下我的程序!
题目要求:(栈和队列)
输入输出要求如:
输入:5
输入(五个数):4 9 6 8 7
输入:3
输出的则是除了前面3个数之外的数: 8 7
如果输入:2
输出的则是除了前面2个数之外的数:6 8 7
如果输出的数大于或者等于5
则输出:无打印作业!
程序:
#include<iostream.h>
#include<conio.h>
#define Max 100
typedef int ElemType ;
typedef struct
{
 ElemType data[Max];
 int front;
 int rear;
}SQUEUE;
void InitQueue(SQUEUE *SQ)//初始化
{
 SQ->front=0;
 SQ->rear=0;
}
int EnQueue(SQUEUE *SQ,ElemType x)//进栈
{
 if((SQ->rear+1)%Max==SQ->front)
  return 0;
 SQ->rear=(SQ->rear+1)%Max;
 SQ->data[SQ->rear]=x;
 return 1;
}
int Empty(SQUEUE *SQ)//判断是否为空
{
 return(SQ->front==SQ->rear)?1:0;
}
int OutQueue(SQUEUE *SQ)//出栈
{
 if(Empty(SQ))
  return NULL;
 SQ->front=(SQ->front+1)%Max;
}
void main()
{
 int t,n,m,i,j=0;
 cin>>t;
 for(i=0;i<t;i++)
 {
  SQUEUE qu;
  ElemType work;
  cin>>n;
  cout<<endl;
  while(j!=n-1)
  {
   InitQueue(&qu);
      EnQueue(&qu);
   j++;
  }
  cout<<endl;
  cin>>m;
  cout<<endl;
  if(m>=n)
   cout<<"无打印作业!"<<endl;
  else
  {
   while(!Empty(&qu))
   {
   work=OutQueue(&qu);
   cout<<work<<" ";
   }
   getch();
  }
   }
}
 
搜索更多相关主题的帖子: include 
2011-10-13 12:58
快速回复:出栈进栈的简单操作!求帮忙改一下我的程序!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.063183 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved