Sunday, March 18, 2012

Stack using arrays

/* Program Name: Stack using arrays
Done By: Prof.Dhumane A.V. VIIT, Pune
*/

#include
#include
#include

int push(int*queue,int rear)
{
int element;

if(rear<4)
{
printf("\nEnter the element ");
scanf("%d",&element);
rear++;
queue[rear]=element;
}
else
{
printf("\nQueue FULL !!!");
}
return rear;
}
void display(int *queue,int rear)
{
int i=0;
printf("\nThe Queue is :\n");
while(i<=rear)
{
printf("%d ",queue[i]);
i++;
}
}
int pop(int*queue,int rear)
{
int front=0,j;

if(rear==-1)
{
printf("\nQueue Empty !!!");
}
else
{
printf("Element poped is: %d",queue[front]);

for(j=1;j<=rear;j++)
{
queue[j-1]=queue[j];
}
rear--;
}
return (rear);
}
void main()
{
int queue[10],front=-1,rear=-1,choice;
clrscr();

while(1)
{
printf("\n1.PUSH");
printf("\n2.POP");
printf("\n3.Display");
printf("\n4.Exit");
printf("\nEnter your choice ");
scanf("%d",&choice);
switch(choice)
{
case 1:
if(front==-1)
front++;

rear=push(queue,rear);
break;
case 2: rear=pop(queue,rear);
break;
case 3: display(queue,rear);
break;
case 4:
exit(0);
}
}

}

No comments:

Post a Comment