Program to perform operation on a circular queue using C language.
#include<stdio.h>
int queue[100], choice, n, i, front=-1, rear=-1;
void main()
{
printf("Enter size of stack: ");
scanf("%d",&n);
do
{
printf("\n-----Circular Queue----\n1. INSERT\n2. REMOVE\n3. DISPLAY\n4. EXIT\n\n");
printf("Enter choice: ");
scanf("%d",&choice);
switch(choice)
{
case 1: insert();
break;
case 2: remove1();
break;
case 3: display();
break;
case 4:
break;
default: printf("Enter valid choice.\n");
break;
}
}while(choice!=4);
}
int queue[100], choice, n, i, front=-1, rear=-1;
void main()
{
printf("Enter size of stack: ");
scanf("%d",&n);
do
{
printf("\n-----Circular Queue----\n1. INSERT\n2. REMOVE\n3. DISPLAY\n4. EXIT\n\n");
printf("Enter choice: ");
scanf("%d",&choice);
switch(choice)
{
case 1: insert();
break;
case 2: remove1();
break;
case 3: display();
break;
case 4:
break;
default: printf("Enter valid choice.\n");
break;
}
}while(choice!=4);
}
void insert()
{
int value;
if(front==0 && rear==n-1 || front>=0 && rear==front-1)
{
printf("Queue is overflow.\n");
}
else
{
printf("Enter element to be inserted: ");
scanf("%d",&value);
if(rear==n-1)
{
front=0;
}
else
{
front=0;
rear=rear+1;
}
queue[rear] = value;
printf("Element Inserted.\n");
}
}
void remove1()
{
if(front<=-1)
{
printf("Queue is underflow.\n");
}
else
{
printf("Element deleted is %d.\n",queue[front]);
if(front==rear){
front=-1;
rear=-1;
}
else{
if(front==n-1){
front=0;
}
else{
front=front+1;
}
}
}
}
void display()
{
if(front==-1)
{
printf("Queue is underflow.\n");
}
else
{
int i=front;
if(front<=rear){
while(i<=rear){
printf("%d\n",queue[i++]);
}
}
else{
while(i<=n-1){
printf("%d\n",queue[i++]);
}
i=0;
while(i<=rear){
printf("%d\n",queue[i++]);
}
}
}
}