#include
#include
# define MAX 5
int queue[MAX];
int in = -1;
int out = -1;
int n;
void produce();
void consumer();
void display();
int main()
{
int x;
while(1)
{
printf("1.produse\n");
printf("2.consumer\n");
printf("3.Display\n");
printf("4.Quit\n");
printf("\nEnter your choice : ");
scanf("%d",&x);
switch(x)
{
case 1 :
produce();
break;
case 2 :
consumer();
break;
case 3:
display();
break;
case 4:
exit(1);
default:
printf("Wrong choice\n");
}/*End of switch*/
}/*End of while */
}
void produce()
{
if(out==0&&in==MAX-1 || out==in+1)
{
printf("buffer is full.....");
}
if(out==-1)
{
out=0;
in=0;
}
else if(in==MAX-1)
{
in=0;
}
else
{
in=in+1;
}
printf("enter the data :");
scanf("%d",&n);
queue[in]=n;
}
void consumer()
{
if(out==-1)
{
printf("buffer is empty.....\n");
}
else
{
printf("data consumed data is = %d \n",queue[n]);
if(out==in)
{
out=-1;
in=-1;
}
else if(out=MAX-1)
{
out=0;
}
else
{
out=out+1;
}
}
}
void display()
{
if(out==-1)
{
printf("buffer is empty.....");
}
else
{
int a;
printf("\n buffer is = \n");
for(a=out;a<=in;a++)
{
printf("%d\n\t",queue[a]);
}
if(out>in)
{
for(a=out;a<=MAX-1;a++)
{
printf("%d\n\t",queue[a]);
}
for(a=0;a<=in;a++)
{
printf("%d\n\t",queue[a]);
}
}
}
}
Copyright © 2011 - All Rights Reserved - Softron.in
Template by Softron Technology