程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> c++-我想知道錯在哪了,幫忙看看,已經改了好長時間了

c++-我想知道錯在哪了,幫忙看看,已經改了好長時間了

編輯:編程解疑
我想知道錯在哪了,幫忙看看,已經改了好長時間了

#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;}
}

最佳回答:


http://www.cnblogs.com/liangchao/p/4274967.html

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved