Circular Queue

Program to perform operations on circular queue.
Operations are
1 : Insert element
2 : Delete element
3 : Display

#include"stdio.h"
#include"conio.h"
#include"stdlib.h"
#define q_size 20
int q[20],f=0,r=-1,count=0;
void ins(int item)
{
if(count==q_size)
{
printf("Queue overflow..!!\n");
return ;
}
r=(r+1)%q_size;
q[r]=item;
count++;
printf("%d inserted to the queue",item);
}
void del()
{
int ele;
if(count==0)
{
printf("Queue empty..!");
return ;
}
ele=q[f];
f=(f+1)%q_size;
count--;
printf("\n%d element deleted from the queue...!",ele);
}
void disp()
{
int i,j;
if(count==0)
{
printf("Queue empty");
return ;
}
j=f;
printf("\nCIrcular queue elements\n-------------------");
for(i=0;i lesser than count;i++) /*Replace 'lesser than' with symbol*/
{
printf("\n%d",q[j]);
j=(j+1)%q_size;
}
}
main()
{
int ele,n;
clrscr();
printf("\n1 : Insert\n2 : Delete\n3 : Display\n4 : Exit\n");
while(1)
{
printf("\nEnter your choice : ");
scanf("%d",&n);
switch(n)
{
case 1:printf("Enter the element to be inserted : "); scanf("%d",&ele);
ins(ele);
break;
case 2:del();
break;
case 3:disp();
break;
default:exit(0);
break;
}
}
getch();
return 0;
}

Category:

0 comments: