Int info;
SP
*next;
};
SP
*s1;
/*втолкнуть в
стек */
void
push(SP **s, int item)
{
SP
*new_item;
new_item=(SP
*)malloc(sizeof(SP));
new_item->info=item;
new_item->next=*s;
*s=new_item;
printf("\naddr=%p",*s);
}
/*
просмотр
тек.эл-та*/
int
peek ( SP **s )
{
int
x2;
x2=
( *s) -> info;
return(x2);
}
/* вытолкнуть из
стека*/
int
pop(SP
**s)
{
SP
*olditem=*s;
int
oldinfo;
oldinfo=olditem->info;
*s=(*s)->next;
free(olditem);
return(oldinfo);
}
main()
{
int
i,x1;
for(i=1;i<=3;i++)
{
printf("\n
vvod %d",i); printf(" ");
scanf("%d",&x1);
printf("\nx1=%d",x1);
push(&s1,x1);
x1=peek(&s1);
printf("\nx1=%d",x1);
/*printf("\nadrr=%p",*s1);*/
}
/*
cikl*/
for(i=1;i<=3;i++)
{
printf("\niz stec
d",pop(&s1));
}
getch();
}