【C++ Primer Plus习题】16.2

国中之林 2024-10-01 13:35:00 阅读 74

大家好,这里是国中之林!

❥前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看←

问题:

这里是引用

解答:

main.cpp

<code>#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



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。