More Related Content
Similar to Circular queue
Similar to Circular queue (20)
Circular queue
- 1. 6. Circular queue
#include <stdio.h>
#include<stdlib.h>
#include<stdio_ext.h>
#define MAX3
char cq[MAX];
intfront = -1, rear = -1;
voidinsert(char);
voiddelete();
voiddisplay();
voidmain()
{
intch;
char item;
while(1)
{
printf("nn~~MainMenu~~");
printf("n==>1. InsertionandOverflow Demo");
printf("n==>2. DeletionandUnderflow Demo");
printf("n==>3. Display");
printf("n==>4. Exit");
printf("nEnterYourChoice:");
scanf("%d",&ch);
- 2. __fpurge(stdin);
switch(ch)
{
case 1: printf("nnEnterthe elementtobe inserted:");
scanf("%c",&item);
insert(item);
break;
case 2: delete();
break;
case 3: display();
break;
case 4: exit(0);
default: printf("nnPleaseenteravalidchoice");
}
}
}
voidinsert(charitem)
{
if(front== (rear+1)%MAX)
{
printf("nn~~CircularQueue Overflow~~");
}
else
{
- 3. if(front== -1)
front = rear = 0;
else
rear= (rear+1)%MAX;
cq[rear] = item;
}
}
voiddelete()
{
char item;
if(front== -1)
{
printf("nn~~CircularQueue Underflow~~");
}
else
{
item= cq[front];
printf("nnDeletedelementfromthe queue is:%c",item);
if(front==rear) //onlyone element
front = rear = -1;
else
front= (front+1)%MAX;
}