#P2580. 数组模拟队列

数组模拟队列

Description

#include <iostream>

#define MAXN 5

using namespace std;

//队列

int queue[MAXN] = {0};

//头指针

int front = 0;

//尾指针

int rear = 0;

//入队

void addqueue(int value) {

if(rear >= MAXN) {

cout<<"队满! "<<endl;

} else {

queue[rear] = value;

rear++;

}

}

//出队

int delqueue() {

int r;

if(front == rear) {

cout<<"队空"<<endl;

r = -1;

} else {

r = queue[front];

front++;

}

return r;

}

//显示队

void display() {

int i;

for(i = front; i < rear; i++) {

cout<<queue[i]<<" ";

}

cout<<endl;

}

int main() {

int order;//口令

int value,t;

cout<<"输入指令"<<endl;

while(1 == 1) {

cout<<"1 入队,2 出队,3 显示! "<<endl;

cin>>order;

if(order == 1) {

cin>>value;

addqueue(value);

display();

} else if(order == 2) {

t = delqueue();

if(t!=-1) {

cout<<t<<"已经出队"<<endl;

display();

} else {

cout<<"队列已空"<<endl;

}

} else if(order == 3) {

display();

} else {

cout<<" 口令错误!"<<endl;

}

}

return 0;

}

 

Source

知识点