4. 定义函数并测试,判断一个字符串是否是回文(顺读倒读都一样的字符串如:abba)。
时间: 2024-03-11 19:48:57 浏览: 21
好的,我可以帮您定义一个函数来判断一个字符串是否是回文。以下是 Python 代码实现:
```python
def is_palindrome(s):
"""
判断一个字符串是否是回文
"""
return s == s[::-1]
```
然后,您可以使用以下代码测试这个函数:
```python
s1 = "abba"
s2 = "hello"
print(is_palindrome(s1)) # True
print(is_palindrome(s2)) # False
```
输出结果应该是:
```
True
False
```
请注意,函数 `is_palindrome()` 接收一个字符串作为参数,并将其与反向字符串进行比较,如果两个字符串相同,则返回 `True`,否则返回 `False`。
相关问题
:使用指向字符串的指针来判断输入的一个字符串是否是回文。所谓回文,即顺读和倒读都是一样的。如 eye,level,abba等。
好的,您可以使用以下代码来实现:
```c
#include <stdio.h>
#include <string.h>
int isPalindrome(char *str) {
int len = strlen(str);
for (int i = 0; i < len / 2; i++) {
if (str[i] != str[len - i - 1]) {
return 0;
}
}
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;
}
```
在这里,我们定义了一个名为 `isPalindrome` 的函数,它接受一个指向字符串的指针作为参数,并返回一个整数。该函数通过比较字符串的前半部分和后半部分来确定字符串是否是回文。如果字符串是回文,函数返回1,否则返回0。
在 `main` 函数中,我们首先从用户那里读取一个字符串,然后调用 `isPalindrome` 函数来确定该字符串是否是回文。如果是,我们将打印一条包含该字符串的消息,否则将打印不包含该字符串的消息。
输入一个字符串,判断其是否为回文字符串。所谓回文字符串是指该字符串正读反读都一样。如:aba,abba。(判断用if的双分支结构
以下是两种判断回文字符串的方法:
1.使用切片实现
```python
s = input("请输入一个字符串:")
if s == s[::-1]:
print("Yes")
else:
print("No")
```
2.使用函数实现
```python
def is_palindrome(s):
return s == s[::-1]
s = input("请输入一个字符串:")
if is_palindrome(s):
print("Yes")
else:
print("No")
```