Saturday, 29 September 2012

CIRCULAR QUEUE IN C USING ARRAY

#include<stdio.h>

#define MAX 10
int front=-1;
int rear = 0;
int a[MAX];
void enqueue(int e);
int dequeue();

int main()
{
    int n,m,e;
    do
{
  printf(" \n press a key \n 1 for enque \n 2 for dequeue \n 3 to exit \n ");
  scanf("%d",&n);
  switch(n)
  {

  case 1 :
  {
      printf("\n enter no to be entered");
      scanf("%d",&e);
      enqueue(e);
      break;
  }
  case 2:
  {
      int e;
      e = dequeue();
      if(e!= -1)
      {
      printf("the dequed no is = %d",e);
      }
      break;
  }
  default :
  printf("\n you made the wrong choice");
  }
}while(n!=3);

}
void enqueue(int e)
{

    if(front == rear+1)
    printf("\n the queue is full sorry ");

    else
    {
        a[rear]= e;
        rear = (rear+1)%MAX;
        if(front== -1)
         front++;
    }
}
int dequeue()
{
    int temp;
    if(front == rear)
    {
    printf("\n queue is empty");
    return -1;
    }
    else
    {
        temp = a[front];
        front = (front+1)%MAX;
        return temp;
    }
}

No comments:

Post a Comment