编写c语言程序判断一个字符列是否是回文,要求:字符序列个数n可由用户自定义,可连续测试任意多个字符序列,由用户决定退出,字符序列由用户从键盘输入
时间: 2024-01-09 11:05:09 浏览: 90
好的,以下是满足您要求的 C 语言程序:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
char str[100];
int len, i, j, flag;
while (1) {
printf("请输入一个字符串(最多100个字符),输入-1退出:\n");
scanf("%s", str);
if (strcmp(str, "-1") == 0) {
break;
}
len = strlen(str);
flag = 1;
for (i = 0, j = len - 1; i < j; i++, j--) {
if (str[i] != str[j]) {
flag = 0;
break;
}
}
if (flag) {
printf("%s 是回文。\n", str);
} else {
printf("%s 不是回文。\n", str);
}
}
return 0;
}
```
程序可以连续测试任意多个字符序列,当输入 -1 时退出,每次输入的字符串最长为 100 个字符。程序使用了一个标志变量 flag 来记录字符序列是否为回文,然后通过比较字符序列首尾两端的字符来进行判断。
阅读全文