7-2 队列的实现及基本操作添加链接描述
给定一个初始为空的队列和一系列入队、出队操作,请编写程序输出每次出队的元素。队列的元素值均为整数。
输入格式:
输入第1行为1个正整数n,表示操作个数;接下来n行,每行表示一个操作,格式为1 d或0。1 d表示将整数d入队,0表示出队。n不超过20000。
输出格式:
按顺序输出每次出队的元素,每个元素一行。若某出队操作不合法(如在队列空时出队),则对该操作输出invalid。
输入样例:
在这里给出一组输入。例如:
7
1 1
1 2
0
0
0
1 3
0
输出样例:
在这里给出相应的输出。例如:
1
2
invalid
3
#include <stdio.h>
int main()
{
int n;
scanf("%d",&n);
int a[10000];
int i,end;
int kaishi,xh,caozuo;
end=0;
kaishi=0;
for (i=1;i<=n;i++){
scanf("%d",&caozuo);
if(caozuo==1){
scanf("%d",&xh);
a[end]=xh;
end++;
}
else {
if(kaishi==end){
printf("invalid\n");
}
else {
printf("%d\n",a[kaishi]);
kaishi++;
}
}
}
return 0;
}