编写程序判断给定字符串是否是回文。(回文是指正读和逆读都一样的字符串。) 如: 输入:12321, 输出:是回文。 输入:12345, 输出: 不是回文。用c语言
时间: 2024-05-29 20:12:57 浏览: 14
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int i, j, len, flag = 1;
printf("请输入字符串:");
scanf("%s", str);
len = strlen(str);
for (i = 0, j = len-1; i < len/2; i++, j--) {
if (str[i] != str[j]) {
flag = 0;
break;
}
}
if (flag == 1) {
printf("是回文。\n");
} else {
printf("不是回文。\n");
}
return 0;
}
相关问题
C语言编写程序判断给定字符串是否是回文。(回文是指正读和逆读都一样的字符串。)
可以使用双指针法,从字符串两端开始逐一比较字符是否相等,直到中间位置。具体实现代码如下:
#include <stdio.h>
#include <string.h>
int isPalindrome(char* str) {
int len = strlen(str);
int left = 0, right = len - 1;
while (left < right) {
if (str[left] != str[right]) {
return 0;
}
left++;
right--;
}
return 1;
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
if (isPalindrome(str)) {
printf("%s是回文字符串。\n", str);
} else {
printf("%s不是回文字符串。\n", str);
}
return 0;
}
当输入字符串为“abcba”时,输出为“abcba是回文字符串。”。
python编写一个函数,给定一个字符串,判断该字符串是否为回文
一个回文字符串是指正着读和倒着读都是一样的字符串,比如 "racecar"。可以使用以下代码实现:
```python
def is_palindrome(string):
# 判断字符串是否为回文
return string == string[::-1]
```
这里使用了 Python 中的字符串切片语法,`string[::-1]` 表示将字符串反转。如果反转后的字符串和原字符串相同,那么就是回文字符串,返回 `True`;否则返回 `False`。