c++程序调试完后窗口一闪就没了
#include<iostream>#include<cstring>usingnamespacestd;classCStack{private:charstack[10...
#include<iostream>
#include<cstring>
using namespace std;
class CStack
{
private:
char stack[100];
int topmost;
int top;
public:
CStack()
{
topmost=100;
top=-1;
}
CStack(const CStack &a);
bool push(char item);
bool pop(char &item);
void MakeEmpty();
bool getTop(char &b);
bool isEmpty();
bool isFull();
};
CStack::CStack(const CStack &a)
{
strcpy(stack,a.stack);
topmost=a.topmost;
top=a.top;
}
bool CStack::push(char item)
{
if(isFull())
{
cout<<"栈已满!"<<endl;
return 0;
}
stack[++top]=item;
return 1;
}
bool CStack::pop(char &item)
{
if(isEmpty())
{
cout<<"栈为空!"<<endl;
return 0;
}
item=stack[top];
top--;
return 1;
}
void CStack::MakeEmpty()
{
top=-1;
}
bool CStack::getTop(char &b)
{
if(isEmpty())
{
cout<<"栈为空!"<<endl;
return 0;
}
b=stack[top];
return 1;
}
bool CStack::isEmpty()
{
if(top==-1)
return 1;
else
return 0;
}
bool CStack::isFull()
{
if(top==topmost-1)
return 1;
else
return 0;
}
int main()
{
int s=0;CStack a;char t,y;
char p[100];
cout<<"请输入一个字符窜:"<<endl;
cin.getline(p,100);
int l=strlen(p);
char b[100];
for(int i=0;i<l;i++)
{
if(p[i]!='/0')
{
b[i]=p[i];
a.push(p[i]);
}
}
do
{
a.pop(t);
y=b[s];
if(t!=y)
break;
s++;
}while(s<=l/2-1);
if(s==l/2)
cout<<"回文"<<endl;
else
cout<<"不是回文"<<endl;
return 0;
}
这是一个利用字符栈来判断是否为回文的程序,但程序调试结束后,窗口一闪就没了,这是怎么回事 展开
#include<cstring>
using namespace std;
class CStack
{
private:
char stack[100];
int topmost;
int top;
public:
CStack()
{
topmost=100;
top=-1;
}
CStack(const CStack &a);
bool push(char item);
bool pop(char &item);
void MakeEmpty();
bool getTop(char &b);
bool isEmpty();
bool isFull();
};
CStack::CStack(const CStack &a)
{
strcpy(stack,a.stack);
topmost=a.topmost;
top=a.top;
}
bool CStack::push(char item)
{
if(isFull())
{
cout<<"栈已满!"<<endl;
return 0;
}
stack[++top]=item;
return 1;
}
bool CStack::pop(char &item)
{
if(isEmpty())
{
cout<<"栈为空!"<<endl;
return 0;
}
item=stack[top];
top--;
return 1;
}
void CStack::MakeEmpty()
{
top=-1;
}
bool CStack::getTop(char &b)
{
if(isEmpty())
{
cout<<"栈为空!"<<endl;
return 0;
}
b=stack[top];
return 1;
}
bool CStack::isEmpty()
{
if(top==-1)
return 1;
else
return 0;
}
bool CStack::isFull()
{
if(top==topmost-1)
return 1;
else
return 0;
}
int main()
{
int s=0;CStack a;char t,y;
char p[100];
cout<<"请输入一个字符窜:"<<endl;
cin.getline(p,100);
int l=strlen(p);
char b[100];
for(int i=0;i<l;i++)
{
if(p[i]!='/0')
{
b[i]=p[i];
a.push(p[i]);
}
}
do
{
a.pop(t);
y=b[s];
if(t!=y)
break;
s++;
}while(s<=l/2-1);
if(s==l/2)
cout<<"回文"<<endl;
else
cout<<"不是回文"<<endl;
return 0;
}
这是一个利用字符栈来判断是否为回文的程序,但程序调试结束后,窗口一闪就没了,这是怎么回事 展开
2个回答
展开全部
加头文件cstdlib
在main 最后return 0;
前加
system("pause");
在main 最后return 0;
前加
system("pause");
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询