题目描述
请编写堆栈操作的具体实现代码,实现字符串的逆序输出,需自行实现堆栈。
输入一个字符串,按字符按输入顺序压入堆栈,然后根据堆栈后进先出的特点,做逆序输出
输入
第一行输入t,表示有t个测试实例
第二起,每一行输入一个字符串,注意字符串不要包含空格
字符串的输入可参考如下代码:
#include <string>
int main()
{ string str;
Int len;
cin>>str; //把输入的字符串保存在变量str中
len = str.length() //获取输入字符串的长度
}
输出
每行逆序输出每一个字符串
#include <iostream>
using namespace std;
#define maxn 100;
class charstack
{
public:
char data[100];
int top;
charstack()
{
top = -1;
}
bool isempty()
{
if (top == -1)
{
return 1;
}
return 0;
}
int push(char x)
{
if (top == 99)return 0;
top++;
data[top] = x;
return 1;
}
int out()
{
if (isempty())return 0;
while (top>=0)
{
cout << data[top--];
}
cout << endl;
return 1;
}
};
int main()
{
int n;
cin >> n;
while (n--)
{
string x;
cin >> x;
charstack a;
for (int i = 0; i < x.size(); ++i)
{
a.push(x[i]);
}
a.out();
}
}
标签:return,--,top,STL,int,字符串,堆栈,DS,输入
From: https://blog.csdn.net/2301_80770184/article/details/142443967