#include "stdafx.h"#include "malloc.h"#define maxSize 100 typedef struct LNode{ int data; struct LNode *next;}LNode;void push(LNode *&L,int x)//使用这个方法 使得栈的入栈和出栈都在表头了{ LNode *p; p=(LNode*)malloc(sizeof(LNode)); p->next=L->next; p->data=x; L->next=p; }void push2(LNode *&L,int x)//表尾{ LNode *s; s=(LNode*)malloc(sizeof(LNode)); s->data=x; s->next=NULL; L->next=s; L=s;}void pop(LNode *&L,int &x){ LNode *p; if(L->next==NULL) return; p=L->next; x=p->data; L->next=p->next; free(p);}void show(LNode *&L){ int x; while(L->next!=NULL) { pop(L,x); printf("%d ",x); }}void initSqStack(LNode *&L){ L=(LNode*)malloc(sizeof(LNode)); L->next=NULL;}int _tmain(int argc, _TCHAR* argv[]){ LNode *L; initSqStack(L); for(int i=1;i<=10;i++) push2(L,i); show(L);}