阴山草原精英怪:高分问题:)
要求:A仅能使用若干栈的ADT函数以及若干 int,char类型变量编写!(从”栈”出发)
B严格用C++语言编写,即使用类的概念!
不用”结构体”等其他语言的概念!
#include <stack>
#include <iostream>
using namespace std;
typedef stack<char> stack_t;
class THuiwen
{
private:
stack_t s;
int i;
char c;
public:
bool is_huiwen(const char *str)
{
for (i = 0; str[i]; i++)
s.push(str[i]);
for (i = 0; str[i]; i++)
{
c = s.top();
s.pop();
if (c != str[i])
return false;
}
return true;
}
};
int main()
{
THuiwen huiwen;
char buf[256];
cin.get(buf, 256);
cout << huiwen.is_huiwen(buf) << endl;
return 0;
}
唉,为什么一定要用类呢,只用int和char就行了。
int palind(char *s,int len)
{
int cur,end;
if (len<=0) return -1;
cur=0;
end=len-1;
while(cur<len)
{ if (s[cur++]!=s[end--]) return 0;}
return 1;
} //返回1时为回文,0时为非回文,返回-1为参数错误。
ぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉぁあぃいぅううええぉぉ