64,648
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
#include <string>
using namespace std;
using std::string;
int main()
{
string s;
string::size_type i;
int count=0;
cin>>s;
string::size_type N = 0;
N = s.size();
for (i=0;i<s.size()/2;i++,N--)
{
if (s[i]==s[N-1])
{
++count;
}
else continue;
}
if (int(s.size()/2)==count)
{
cout<<s<<"是回文数"<<endl;
}
else
{
cout<<s<<"不是回文数"<<endl;
}
getchar();
return 0;
}
另外,楼主可以参考楼上的方法,不需要计数的。#include <iostream>
#include <string>
using namespace std;
using std::string;
int main()
{
string s;
string::size_type i;
int count=0;
cin>>s;
getchar();
string::size_type N = 0;
N = s.size();
for (i=0;i<=s.size()/2;i++,N--)
{
if (s[i]==s[N-1])
{
++count;
}
else break;
}
if (int(s.size()/2 + 1)==count)
{
cout<<s<<"是回文数"<<endl;
}
else
{
cout<<s<<"不是回文数"<<endl;
}
return 0;
}
#include <iostream>
#include <string>
using namespace std;
using std::string;
int main()
{
string s;
string::size_type i;
//int count=0;
cin>>s;
string::size_type N = 0;
N = s.size();
for (i=0;i<=s.size()/2;i++,N--)
{
if (s[i]!=s[N-1])
{
cout<<s<<"不是回文数"<<endl;
getchar();
return 0;
}
}
cout<<s<<"是回文数"<<endl;
getchar();
return 0;
}