您的位置:首页 > 其它

循环队列

2015-04-08 21:19 162 查看
这个题主要是需要注意队列溢出的情况:存入数据不能超出题中所述

#include<stdio.h>

#include<string.h>

struct Date

{

int rear,front;

int arr[100];

};

int main()

{

void res(struct Date p);

struct Date p;

res(p);

return 0;

}

void res(struct Date p)

{

char str[10];

int room,total,num[100];

while(scanf("%d",&room)!=EOF)

{

p.front=p.rear=0;

scanf("%d",&total);

int i,j=0,N;

for(i=0;i<total;i++)

{

scanf("%s",str);

if(strcmp(str,"in")==0)

{

scanf("%d",&N);

if(p.rear-p.front+1<room)

{

p.arr[p.rear]=N;

p.rear++;

}

}

else if(strcmp(str,"out")==0)

{

p.front++;

}

}

for(i=p.front;i<p.rear;i++)

{

if(i==p.front)

printf("%d",p.arr[i]);

else

printf(" %d",p.arr[i]);

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: