回文测试:输入一30个字符以内的字符串
时间: 2024-11-25 22:17:01 浏览: 52
在C语言中,你可以使用以下代码来测试一个30个字符以内的字符串是否为回文[^1]。回文测试的基本思路是从两端开始比较字符,如果发现不匹配则立即返回 false,直到找到所有匹配的字符为止,如果整个过程都没有发现不匹配,就说明它是回文。
```c
#include <stdio.h>
#include <string.h>
int isPalindrome(char str[]) {
int start = 0;
int end = strlen(str) - 1;
while (start < end) {
if (str[start] != str[end]) {
printf("false");
return 0;
}
start++;
end--;
}
printf("true");
return 1;
}
int main() {
char input[30];
fgets(input, sizeof(input), stdin); // 注意这里需要去掉fgets的换行符
input[strcspn(input, "\n")] = '\0'; // 去掉多余的换行
isPalindrome(input);
return 0;
}
```
这段代码首先定义了一个 `isPalindrome` 函数,它接收一个字符串作为参数,通过两个指针 `start` 和 `end` 从两端向中间移动并比较字符。如果是回文,`main` 函数会调用这个函数并读取用户的输入。
阅读全文
相关推荐



















