// shuJuJieGou.duiLie.xunHuanDuiLie.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include
#define MAXSIZE 10
using namespace std;
typedef struct DuiLie
{
int data1[MAXSIZE];
int front; //都是从0开始自加1增长,rear总是要大于或等于front的
int rear;
}*Head;
Head s;
//入队
void inDuiLie(int x)
{
if(((s->rear)+1)%MAXSIZE==s->front)
{
cout<<"队已经满了!入队失败!"<rear+1)%MAXSIZE;
//s->rear=(s->rear+1)%MAXSIZE;//不要改变s->rear的值,使其“顺利”递增//先移动指针位置,再赋值
s->data1[l]=x;
(s->rear)++;
cout<<"入队成功!"<rear==s->front)////都是从0开始自加1增长,rear总是要大于或等于front的.且rear和front自增长的值可能大于MAXSIZE
{
cout<<"队为空!出队失败!"<front)++;//先 移动指针位置,再去值;规定front所指的位置是没有元素的
lo=(s->front)%MAXSIZE;
//s->front=(s->front)%MAXSIZE;//不要改变s->front的值,使其“顺利”递增
z=s->data1[lo];
}
return z;
}
//输出队列中的元素值
void findEach()
{
int p;
p=(s->front)+1;
while(p<=s->rear)//可能存在p和rear都大于MAXSIZE
{
cout<data1[p%MAXSIZE]<<" ";
p++;
}
cout<front=-1;//规定front所指的位置是没有元素的
s->rear=-1;//先移动指针位置,再赋值,注定要为-1开始
int x,i=0;
while(i<3)//连续入队三次
{
cout<<"输入入队元素:"<>x;
inDuiLie(x);
i++;
}
cout<<"队中的元素值:"<