大家好,这里是国中之林!
❥前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看←
问题:
解答:
main.cpp
#include <iostream>
#include <string>
#include <cctype>
using namespace std;
bool palindromic(string& s);
int main()
{
string st;
cout << "Enter the string to test: ";
getline(cin, st);
cout << "String " << st << " is ";
if (palindromic(st))
{
cout << "a palindromic string. " << endl;
}
else
{
cout << "not a palindromic string." << endl;
}
return 0;
}
bool palindromic(string& s)
{
auto phead = s.begin();
auto ptail = s.end();
while (ptail>phead)
{
if (!isalpha(*phead))
{
phead++;
continue;
}
if (!isalpha(*(ptail-1)))
{
ptail--;
continue;
}
if (toupper(*phead) == toupper(*(ptail-1)))
{
phead++;
ptail--;
}
else
{
return false;
}
}
return true;
}
运行结果:
考查点:
- 迭代器
- cctype函数
注意:
- 迭代器end()不是最后一个,是最后一个的下一个位置.
2024年9月13日21:38:06