hello there this program i wrote it to do circular queue
but i have many error can you help me ?
Code:
#include<stdio.h>
#include<conio.h>
#define max 9
struct cQueue
{
int front,rear;
int items[max];
} ;
int isempty(struct cQueue *q)
{
if(q->front==q->rear)
return 1;
else
return 0;
}
void create(struct cQueue *q)
{
q->front=q->rear=0;
}
void display(struct cQueue *q)
{
int i;
if(isempty(*q))
printf("\n circular Queue is underflow ");
else
{
if(q->front==0)
q->front++;
for(int i=q->front;i!=q->rear;i=(i+1)%max)
{
printf("%d ",q->items[i]);
}
}
int isfull(struct cQueue *q)
{
if(((q->rear++)%max)==q->front)
return 1;
else
return 0;
}
void insert(struct cQueue *q,int d)
{
if(isfull(*q)==1)
printf("Circular Queue Overflow\n");
else
{
q->items[q->rear]=d;
q->rear=(q->rear++)%max;
printf("data inserted\n");
}
int remove(struct cQueue *q)
{
int del;
if(isempty(*q)==1)
printf("Circular Queue Underflow\n");
else
{
del=q->items[q->front];
q->front=(q->front++)%max;
}
return del;
}
void main()
{
struct cQueue q;
int x;
clrscr();
do{
printf("1-Create New Circular Queue\n2-add New element to Circular Queue\n");
printf("3-Remove element from Circular Queue\n4-Display all element of Circular Queue\n5-Exit");
printf("Enter Your Chocie:");
scanf("%d",&x);
switch(x)
{
case 1:
create(&q,x);
break;
case 2:
insert(&q,x);
braek;
case 3:
m=remove(&q);
printf("%d",m);
break;
case 4:
diplay(q);
break;
case 5:printf("bye ^_^");
getch();
}while(x!=5)
}
}
}