#include<stdio.h>
#include<conio.h>
#define max 5
int front=-1,rear=-1,queue[max];
void inqueue();
void dequeue();
void display();
void main() //starting of the main() function
{
int i;
clrscr();
printf("program that implements a queue using queue and dequeue functions");
printf("\n\n\n\t\t------------OUTPUT------------");
while(1)
{
printf("\n\nenter 1 for inqueue");//taking input from the user
printf("\nenter 2 for dequeue");
printf("\nenter 3 for display");
printf("\npress any other integer key for exit");
printf("\n\nenter the value");
scanf("%d",&i);
if(i==1)
inqueue();
else if(i==2)
dequeue();
else if(i==3)
display();
else
{
printf("exit");
getch();
break;
}
}
}
void inqueue()
{
int d;
if(rear==max-1)
printf("\n\nqueue overflow");
else
{
printf("\nenter the value to be queued");
scanf("%d",&d);
if(rear==-1)
front=0;
rear++;
queue[rear]=d;
}
}
void dequeue()
{
int d;
if(front==-1)
printf("\n\nqueue underflow");//printing output
else
{
if(rear==front)
{
d=queue[front];
printf("\n\nthe value that has been dequeued is =%d",d);
rear=-1;
front=-1;
}
else
{
d=queue[front];
printf("\n\nthe value that has been dequeued is =%d",d);
front++;
}
}
}
void display()
{
int j;
printf("\n\n\n\t\t------------OUTPUT------------");
if(front==-1)
printf("\n\nthe queue is empty");
else
{
printf("\n\nthe values are=");//printing output
for(j=front;j<=rear;j++)
printf(" %d",queue[j]);
}
}