编程判断输入的一串字符是否为“回文”。所谓“回文”是指顺序读和逆序读都一样的字符串。如:“12321”和“abcdcba”都是回文,用C语言
时间: 2023-11-10 10:05:26 浏览: 196
可以使用两个指针分别从字符串的首尾向中间移动,比较对应位置上的字符是否相等来判断字符串是否为回文。代码如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int len, i, j, flag = 1;
printf("请输入字符串:");
scanf("%s", str);
len = strlen(str);
for (i = 0, j = len - 1; i < j; i++, j--) {
if (str[i] != str[j]) {
flag = 0;
break;
}
}
if (flag) {
printf("是回文字符串\n");
} else {
printf("不是回文字符串\n");
}
return 0;
}
```
注意,需要引入 `<string.h>` 头文件以使用 `strlen()` 函数。
相关问题
编程判断输入的一串字符是否为“回文”。所谓“回文”是指顺序读和逆序读都一样的字符串。如:“12321”和“abcdcba”都是回文
可以通过以下代码实现判断输入的字符串是否为回文:
```python
s = input("请输入一个字符串:")
if s == s[::-1]:
print("是回文")
else:
print("不是回文")
```
代码中,通过 `input()` 函数获取用户输入的字符串,然后使用字符串切片 `[:: -1]` 反转字符串,并与原始字符串进行比较,如果相等,则说明是回文,反之则不是回文。
编程判断输入的一串字符是否为“回文”。所谓“回文”是指顺序读和逆序读都一样的字符串。如:“12321”和“abcdcba”都是回文。
可以使用双指针的方法判断一个字符串是否为回文。定义两个指针,一个指向字符串的开头,一个指向字符串的结尾。每次比较两个指针指向的字符是否相同,如果都相同,则将两个指针向中间移动,并继续比较;如果有一个不同,则说明不是回文。代码如下:
```
#include <iostream>
#include <string>
using namespace std;
bool isPalindrome(string s) {
int left = 0, right = s.size() - 1;
while (left < right) {
if (s[left] != s[right]) {
return false;
}
left++;
right--;
}
return true;
}
int main() {
string s;
cin >> s;
if (isPalindrome(s)) {
cout << "Yes" << endl;
} else {
cout << "No" << endl;
}
return 0;
}
```
在上面的代码中,`isPalindrome`函数用来判断一个字符串是否为回文。在主函数中,先读入一个字符串,然后调用`isPalindrome`函数进行判断,最后输出结果。
阅读全文
相关推荐











