Professional Documents
Culture Documents
Stack Growing Towards Each Other
Stack Growing Towards Each Other
h>
#include<stdlib.h>
#define size 6
static int check1=0,check2=size;
struct stack
{
char s[size];
int top;
};
int * insert(int a[],int n,struct stack ss,int i)
{
if(check1==check2)
{
printf("Stack overflow\n");
return;
}
if(i==check1)
{
printf("%d\n",check1);
a[i]=ss.s[ss.top];
check1++;
}
else
{
a[i]=ss.s[ss.top];
check2--;
}
return a;
}
int * delete(int a[],int n,struct stack ss,int i)
{
if(ss.top==-1)
{
printf("Stack underflow\n");
return;
}
else
{
printf("Element to be deleted is %d\n",ss.s[ss.top--]);
if(i==check1)
{
a[i]=0;
check1--;
}
else
{
a[i]=0;
check2--;
}
return a;
}
}
void display(int a[])
{
int i;
for(i=0;i<=size-1;i++)
printf("%d\t",a[i]);
}
main()
{