#include <stdio.
h>
#include <stdlib.h>
#define MAX 5
int queue[MAX];
int front=-1;
int rear=-1;
void enqueue();
void dequeue();
void isempty();
void isfull();
void display();
int main()
{
int choice;
while(1)
{
printf("1.enqueue 2.dequeue 3.isempty 4.isfull 5.display 6.exit\n");
printf("Enter your choice:\n");
scanf("%d",&choice);
switch(choice)
{
case 1:
enqueue();
break;
case 2:
dequeue();
break;
case 3:
isempty();
break;
case 4:
isfull();
break;
case 5:
display();
break;
case 6:
exit(0);
default: printf("Wrong choice\n");
}
}
return 0;
}
void enqueue()
{
int ele;
printf("Enter the element to insert\n");
scanf("%d",&ele);
if((rear+1)%MAX==front)
{
printf("Queue is full\n");
}
else if(front==-1 && rear==-1)
{
front++;
rear++;
queue[rear]=ele;
printf("%d inserted successfully\n",ele);
}
else
{
rear = (rear+1)%MAX;
queue[rear]=ele;
printf("%d inserted successfully\n",ele);
}
}
void dequeue()
{
if((front==-1 && rear==-1))
{
printf("Queue is empty\n");
}
else if(front==rear)
{
printf("%d deleted successfully\n",queue[front]);
front=-1;
rear=-1;
}
else
{
printf("%d deleted successfully\n",queue[front]);
front=(front+1)%MAX;
}
}
void isempty()
{
if((front==-1 && rear==-1))
{
printf("Queue is empty\n");
}
else
{
printf("Queue is not empty\n");
}
}
void isfull()
{
if((rear+1)%MAX==front)
{
printf("Queue is full\n");
}
else
{
printf("Queue is not full\n");
}
}
void display()
{
int i=front;
if((front==-1 && rear==-1))
{
printf("Queue is empty\n");
}
else
{
while(i!=rear)
{
printf("%d ",queue[i]);
i=(i+1)%MAX;
}
printf("%d\n",queue[i]);
}
}