Programs for Queue

#include<stdio.h>
#include<conio.h>
# define size 10
void endque(struct queue *q);
void deque(struct queue *q);
void display(struct queue q);
struct queue
{
 int f;
 int r;
 int arr[size];
};
void main()
{
 struct queue q;

int choice,ch;
q.f=-1;
q.r=-1;
do
{

printf("\n1.make the queue");
printf("\n2.delete the element from queue");
printf("\n3.diplay queue");
printf("\n\n\nenter your choice :: ");
scanf("%d",&choice);
switch(choice)
{
case 1:
    endque(&q);
    break;
case 2:
    deque(&q);
    break;
case 3:
    display(q);
    break;
default:
 printf("invalid choice");
 break;
}
printf("\n\ndo you want to continue so enter(1) :: ");
scanf("%d",&ch);
}while(ch==1);
getch();
}
void endque(struct queue *q)
{ 
 int val;
 printf("\n enter value = ");
    scanf("%d",&val);
 if(q->r==size-1)
 {
  printf("\n queue is full");
 }
 else if(q->f==-1 && q->r==-1)
 {
  q->f++;
  q->r++;
  q->arr[q->r]=val;
 }
 else
 {
  q->r++;
  q->arr[q->r]=val;
 }
}
void display(struct queue q)
{  
 int temp;
 temp=q.f;
 if(q.f==-1 || q.r==-1 || q.f>q.r)
 {
  printf("\n queue is empty");
 }
 else
 {   
  printf("\n");
  while(temp<=q.r)
  {
   printf(" %d ",q.arr[temp]);
   temp++;
  }
  
 }
}

void deque(struct queue *q)
{
 if(q->f==-1 && q->r==-1)
 {
  printf("\n queue empty");
 }
 else
 {   
  if(q->f>q->r)
  {
            printf("\n queue empty");
   q->f=-1;
   q->r=-1;
  }
  else
  {
    printf("\n deleted element is :: %d",q->arr[q->f]);
    q->f++;
  }
 }

}



***********************************************************************************************************************
------------------------------------------------------------------------

         output

------------------------------------------------------------------------


1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 10


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 15


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 25


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 3

 10  15  25

do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 2

 deleted element is :: 10

do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 2

 deleted element is :: 15

do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 2

 deleted element is :: 25

do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 2

 queue empty

do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 3

 queue is empty

do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 10
invalid choice

do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 10


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 20


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 30


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 40


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 50


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 60


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 70


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 80


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 90


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 11


do you want to continue so enter(1) :: 1

1.make the queue
2.delete the element from queue
3.diplay queue


enter your choice :: 1

 enter value = 12

 queue is full

do you want to continue so enter(1) ::
SHARE

Milan Tomic

Hi. I’m Designer of Blog Magic. I’m CEO/Founder of ThemeXpose. I’m Creative Art Director, Web Designer, UI/UX Designer, Interaction Designer, Industrial Designer, Web Developer, Business Enthusiast, StartUp Enthusiast, Speaker, Writer and Photographer. Inspired to make things looks better.

  • Image
  • Image
  • Image
  • Image
  • Image
    Blogger Comment
    Facebook Comment

0 comments:

Post a Comment