#include <stdio.h>
#include <stdlib.h>
struct queue
{
int size;
int f;
int r;
int *arr;
};
int isFull(struct queue *q)
{
if (q->r == q->size - 1)
{
return 1;
}
return 0;
}
int isEmpty(struct queue *q)
{
if (q->r == q->f)
{
return 1;
}
return 0;
}
void enqueue(struct queue *q, int val)
{
if (isFull(q))
{
printf("The queue is Full...Queue Overflow\n");
}
else
{
q->r++;
q->arr[q->r] = val;
}
printf("The Enqueue element is : %d\n",val);
}
int Dequeue(struct queue *q)
{ int a = -1;
if (isEmpty(q))
{
printf("The queue is Empty...\n");
}
else
{
q->f++;
a = q->arr[q->f];
}
return a;
//printf("The DEqueue element is : %d\n",a);
}
int main()
{
struct queue *q = (struct queue *)malloc(sizeof(struct queue));
q->size = 4;
q->f = q->r = -1;
q->arr = (int *)malloc(q->size * sizeof(int));
if(isEmpty(q)){
printf("The Queue is Empty...\n");
}
enqueue(q,23);
enqueue(q,3);
enqueue(q,2);
enqueue(q,6);
printf("The Dequeue Element is : %d\n",Dequeue(q));
printf("The Dequeue Element is : %d\n",Dequeue(q));
printf("The Dequeue Element is : %d\n",Dequeue(q));
printf("The Dequeue Element is : %d\n",Dequeue(q));
enqueue(q,6);
if(isEmpty(q)){
printf("The Queue is Empty...\n");
}
// else{
// printf("The Queue is Full ...\n");
// }
if(isFull(q)){
printf("The Queue is Full...\n");
}
return 0;
}

0 Comments