Saturday, 4 March 2017

C program to implement singly queue using array.

#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
# define MAX 10
int que_arr[MAX];
int rear=-1;
int front=-1;
void insert(int );
int del();
int peek();
void display();
int full();
int empty();
main()
{
int item,choice;
while(1)
{
printf("1.insert\n2.delete\n3.peek\n4.display\n5.exit\nEnter your choice:");
scanf("%d",&choice);
switch(choice)
 {
  case 1:
    printf("enter item to be insert:");
    scanf("%d",&item);
    insert(item);
    break;
   case 2:
                   item=del();    
      printf("deleted item is : %d\n",item);
  break;
   case 3:
      item=peek();
  printf("item at the front : %d\n",item);    
          break;
   case 4:
      display();
  break;
   case 5:
      exit(1);
      break;
default:
   printf("sorry!this choice not present\n");
               
 }
}
getch();
}
int full()
{
if(rear==MAX-1)
 return 1;
else
 return 0;
}
int empty()
{
if((front==-1)||(front==rear+1))
 return 1;
else
 return 0;
}
void insert(int item)
{
if(full())
{
   printf("queue is overflow");
   exit(1);
    }
    else
    {
    if(front==-1)
    front=0;
    rear=rear+1;
    que_arr[rear]=item;
    }
}
int del()
{
    int item;
if(empty())
{
printf("queue is underflow");
exit(1);
}
else
{
item=que_arr[front];
front=front+1;
return(item);
}
}
int peek()
{  
     if(empty())
{
printf("queue is underflow");
exit(1);
}
else
{
return(que_arr[front]);
}
}
void display()
{  
    int i;
    printf("items are : ");
if(empty())
{
printf("queue is underflow");
exit(1);
}

for(i=front;i<=rear;i++)
printf("%d\t",que_arr[i]);
printf("\n");
}

No comments:

Post a Comment