运用C语言数组知识,输入一个长度不超过10的字符串,判断它是否回文
时间: 2024-05-08 11:21:14 浏览: 125
回文字符串是指正序与倒序相同的字符串,如"level"。我们可以通过以下方式利用C语言数组来判断一个字符串是否回文:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[11]; // 字符串数组长度为10,留一个位置给'\0'
int len, i, is_palindrome = 1; // is_palindrome表示是否为回文字符串,初始值为1表示是回文字符串
printf("请输入一个字符串(长度不超过10):");
scanf("%s", str);
len = strlen(str);
for (i = 0; i < len / 2; i++) {
if (str[i] != str[len - i - 1]) { // 如果对应位置的字符不相等,则不是回文字符串
is_palindrome = 0;
break;
}
}
if (is_palindrome) {
printf("%s是回文字符串\n", str);
} else {
printf("%s不是回文字符串\n", str);
}
return 0;
}
```
以上代码中,我们先定义一个长度为11的字符数组,因为字符串长度不会超过10,所以留一个位置给'\0'。然后输入字符串,并使用strlen函数获取字符串长度。接着通过循环判断对应位置的字符是否相等,如果不相等则不是回文字符串。最后根据is_palindrome的值输出结果。
阅读全文