想知道是什么问题,错在哪里了,已经改了好长时间了

#include //#define char 100;using namespace std;typedef struct linknode{ int data; struct linknode *next; struct node *top;}LiStack;void showmenu();void InitStack(LiStack *&s);void DestroyStack(LiStack *&s);bool StackEmpty(LiStack *&s);void Push(LiStack *&s);void Pop(LiStack *&s);bool GetTop(LiStack *s);int main(){int select; //int e; //linknode *p; LiStack *s; char ok='y'; while(ok=='y'){ showmenu(); cout<<"请选择操作(1-7),选0退出系统"<>select;switch(select) { case 1:InitStack(s);break; case 2:DestroyStack(s);break; case 3:StackEmpty(s);break; case 4:Push(s);break; case 5:Pop(s);break; case 6:GetTop(s);break; default:cout<<"输入错 "; } cout<<"是否继续(y/n)"; cin>>ok; } return 0;}void showmenu(){ cout<<"菜单"<top=NULL;}void DestroyStack(LiStack *&s)//-----------销毁栈{LiStack *p=s,*q=s->next;while(q!=NULL){p=q;q=p->next;free(p);}}bool StackEmpty(LiStack *s) //-----------------判断栈空{return(s->next==NULL);}void Push(LiStack *&s,int e) //-------------进栈{LiStack *p;p=(LiStack *)malloc(sizeof(LiStack));e=p->data;cout<<"栈内容为:"<>p->data;p=p->next;}cout<top==NULL)cout<<"此栈为空"<next;cout<<"栈内容为:"<data;p=p->next;}}free(p);}bool GetTop(LiStack *s) //-----------取栈顶{int e;if(s->next==NULL)return false;else {e=s->next->data;return true;}}

你这代码完全没有看下去的必要,能不能换个行啊,用代码格式贴出来不好吗

#include
using namespace std;
typedef struct linknode
{
int data;
struct linknode *next;
struct node *top;
}LiStack;

void showmenu();
void InitStack(LiStack *&s);
void DestroyStack(LiStack *&s);
bool StackEmpty(LiStack *&s);
void Push(LiStack *&s);
void Pop(LiStack *&s);
bool GetTop(LiStack *s);
int main()
{int select;
LiStack *s;
char ok='y';
while(ok=='y')
{
showmenu();
cout<<"请选择操作(1-7),选0退出系统"< cin>>select;
switch(select)
{

   case 1:InitStack(s);break;
   case 2:DestroyStack(s);break;
   case 3:StackEmpty(s);break;

case 4:Push(s);break;
case 5:Pop(s);break;
case 6:GetTop(s);break;
default:cout<<"输入错 ";
}
cout<<"是否继续(y/n)";
cin>>ok;
}
return 0;
}
void showmenu()
{
cout<<"菜单"< cout cout cout cout cout cout }
void InitStack(LiStack *&s)//----------------初始化栈
{s=(LiStack *)malloc(sizeof(LiStack));
s->top=NULL;
}
void DestroyStack(LiStack *&s)//-----------销毁栈
{LiStack *p=s,*q=s->next;
while(q!=NULL)
{
p=q;
q=p->next;
free(p);
}}
bool StackEmpty(LiStack *s) //-----------------判断栈空
{return(s->next==NULL);
}
void Push(LiStack *&s,int e) //-------------进栈
{LiStack *p;
p=(LiStack *)malloc(sizeof(LiStack));
e=p->data;
cout<<"栈内容为:"< while(p=NULL)
{cin>>p->data;
p=p->next;}
cout< void Pop(LiStack *&s)//------------出栈
{struct linknode *p;
if(s->top==NULL)
cout<<"此栈为空"< else{
p=s->next;
cout<<"栈内容为:"< while(p!=NULL)
{coutdata;
p=p->next;}
}
free(p);}
bool GetTop(LiStack *s) //-----------取栈顶
{int e;
if(s->next==NULL)
return false;
else {e=s->next->data;
return true;}
}

真是不好意思啊,我改了一下

#include
using namespace std;
typedef struct linknode
{
int data;
struct linknode *next;
struct node *top;
}LiStack;

void showmenu();
void InitStack(LiStack *&s);
void DestroyStack(LiStack *&s);
bool StackEmpty(LiStack *&s);
void Push(LiStack *&s);
void Pop(LiStack *&s);
bool GetTop(LiStack *s);
int main()
{int select;
LiStack *s;
char ok='y';
while(ok=='y')
{
showmenu();
cout<<"请选择操作(1-7),选0退出系统"< cin>>select;
switch(select)
{

   case 1:InitStack(s);break;
   case 2:DestroyStack(s);break;
   case 3:StackEmpty(s);break;

case 4:Push(s);break;
case 5:Pop(s);break;
case 6:GetTop(s);break;
default:cout<<"输入错 ";
}
cout<<"是否继续(y/n)";
cin>>ok;
}
return 0;
}
void showmenu()
{
cout<<"菜单"< cout cout cout cout cout cout }
void InitStack(LiStack *&s)//----------------初始化栈
{s=(LiStack *)malloc(sizeof(LiStack));
s->top=NULL;
}
void DestroyStack(LiStack *&s)//-----------销毁栈
{LiStack *p=s,*q=s->next;
while(q!=NULL)
{
p=q;
q=p->next;
free(p);
}}
bool StackEmpty(LiStack *s) //-----------------判断栈空
{return(s->next==NULL);
}
void Push(LiStack *&s,int e) //-------------进栈
{LiStack *p;
p=(LiStack *)malloc(sizeof(LiStack));
e=p->data;
cout<<"栈内容为:"< while(p=NULL)
{cin>>p->data;
p=p->next;}
cout< void Pop(LiStack *&s)//------------出栈
{struct linknode *p;
if(s->top==NULL)
cout<<"此栈为空"< else{
p=s->next;
cout<<"栈内容为:"< while(p!=NULL)
{coutdata;
p=p->next;}
}
free(p);}
bool GetTop(LiStack *s) //-----------取栈顶
{int e;
if(s->next==NULL)
return false;
else {e=s->next->data;
return true;}
}

#include
using namespace std;
typedef struct linknode
{
int data;
struct linknode *next;
struct node *top;
}LiStack;

void showmenu();
void InitStack(LiStack *&s);
void DestroyStack(LiStack *&s);
bool StackEmpty(LiStack *&s);
void Push(LiStack *&s);
void Pop(LiStack *&s);
bool GetTop(LiStack *s);
int main()
{int select;
LiStack *s;
char ok='y';
while(ok=='y')
{
showmenu();
cout<<"请选择操作(1-7),选0退出系统"< cin>>select;
switch(select)
{

   case 1:InitStack(s);break;
   case 2:DestroyStack(s);break;
   case 3:StackEmpty(s);break;

case 4:Push(s);break;
case 5:Pop(s);break;
case 6:GetTop(s);break;
default:cout<<"输入错 ";
}
cout<<"是否继续(y/n)";
cin>>ok;
}
return 0;
}
void showmenu()
{
cout<<"菜单"< cout cout cout cout cout cout }
void InitStack(LiStack *&s)//----------------初始化栈
{s=(LiStack *)malloc(sizeof(LiStack));
s->top=NULL;
}
void DestroyStack(LiStack *&s)//-----------销毁栈
{LiStack *p=s,*q=s->next;
while(q!=NULL)
{
p=q;
q=p->next;
free(p);
}}
bool StackEmpty(LiStack *s) //-----------------判断栈空
{return(s->next==NULL);
}
void Push(LiStack *&s,int e) //-------------进栈
{LiStack *p;
p=(LiStack *)malloc(sizeof(LiStack));
e=p->data;
cout<<"栈内容为:"< while(p=NULL)
{cin>>p->data;
p=p->next;}
cout< void Pop(LiStack *&s)//------------出栈
{struct linknode *p;
if(s->top==NULL)
cout<<"此栈为空"< else{
p=s->next;
cout<<"栈内容为:"< while(p!=NULL)
{coutdata;
p=p->next;}
}
free(p);}
bool GetTop(LiStack *s) //-----------取栈顶
{int e;
if(s->next==NULL)
return false;
else {e=s->next->data;
return true;}
}