#include
typedef struct LNode{
int data;
LNode* next;
}*Linkstack;
void Initstack_L(Linkstack &s)
{
s=NULL;
}
void push_L(Linkstack &s,int e)
{
Linkstack p=new LNode;
p->data=e;
p->next=s;
s=p;
}
bool Pop_L(Linkstack &s,int &e)
{
if(s!=NULL)
{
Linkstack p=s;
s=s->next;
e=p->data;
delete p;
return true;
}
else
return false;
}
void print(Linkstack s)
{
while(s)
{
printf("%d ", s->data);
s = s->next;
}
printf("\n");
}
int main(void)
{
Linkstack a;
int i,j,n,e;
Initstack_L(a);
printf("enter n:\n");
scanf("%d",&n);
printf("enter %d number:\n",n);
for(i=0;i
scanf("%d",&e);
push_L(a,e);
}
printf("shuru:\n");
scanf("%d",&e);
push_L(a,e);
print(a);
Pop_L(a,j);
printf("删除的数字是%d\n", j);
print(a);
return 0;
}
-------------
Pop只能弹出最顶层的一个数据。。