利用C++写回文串程序
时间: 2024-09-30 15:15:59 浏览: 25
C++回文数及素数问题计算方法
在C++中,编写一个判断字符串是否为回文串(正读反读都一样)的程序通常涉及到两个步骤:比较字符串和处理边界情况。这里是一个简单的例子:
```cpp
#include <iostream>
#include <string>
bool isPalindrome(const std::string& str) {
int start = 0;
int end = str.length() - 1;
while (start < end) {
// 如果首尾字符不相等,则不是回文串
if (str[start] != str[end]) {
return false;
}
// 移动指针,继续检查下一个字符
start++;
end--;
}
// 全部检查完,如果没发现不匹配的字符,就是回文串
return true;
}
int main() {
std::string input;
std::cout << "请输入一个字符串:";
std::cin >> input;
if (isPalindrome(input)) {
std::cout << "这是一个回文串。\n";
} else {
std::cout << "这不是一个回文串。\n";
}
return 0;
}
```
在这个程序中,我们定义了一个函数`isPalindrome`,它接受一个字符串并从两端开始比较字符。如果发现任何一对字符不相等,就立即返回`false`;如果所有字符都一一对应相等,那么字符串就是回文的。
阅读全文