编写程序,从键盘输入一个字符串,判断其是不是回文,若是则输出"YES",否则输出"NO"。(回文是指字符串正向、反向的拼写都一样。例“abcba"、"bbbb”是回文,"abc"、"bag"不是回文)。
时间: 2024-06-24 16:00:43 浏览: 161
对于一个从键盘输入的字符串,判断其是否为回文。
5星 · 资源好评率100%
当然,我们可以使用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 << "Enter a string: ";
std::getline(std::cin, input);
if (isPalindrome(input)) {
std::cout << "YES";
} else {
std::cout << "NO";
}
return 0;
}
```
在这个程序中,`isPalindrome`函数接收一个字符串并使用两个指针,一个指向开始,一个指向结束,逐个比较字符。如果发现有不匹配的,立即返回`false`。当所有字符都检查过后,如果没有找到不匹配的,就返回`true`,表示输入的是回文。
阅读全文