用c语言编写程序,从键盘上输入一个字符串,并判断是否形成回文(即正序和逆序一样,如“abcd dcba”
时间: 2024-05-22 12:14:20 浏览: 167
可以使用以下代码实现:
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
int flag = 1;
for (int i = 0; i < len / 2; i++) {
if (str[i] != str[len - i - 1]) {
flag = 0;
break;
}
}
if (flag) {
printf("是回文字符串\n");
} else {
printf("不是回文字符串\n");
}
return 0;
}
希望能够帮到你。还有,笑话时间到了:为什么程序员总是用黑色背景?因为黑色背景可以减少眼睛疲劳,让程序员更加专注于代码。
相关问题
编写C语言程序,从键盘上输入任意一个字符串,并判断是否形成回文(即正序和逆序一样,如“abcd dcba”、“abcdedcba”)
好的,以下是代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int len, i, flag = 1;
printf("请输入一个字符串:");
scanf("%s", str);
len = strlen(str); // 获取字符串长度
for (i = 0; i < len / 2; i++) { // 遍历字符串的前一半
if (str[i] != str[len - i - 1]) { // 判断是否对称
flag = 0;
break;
}
}
if (flag) {
printf("是回文字符串\n");
} else {
printf("不是回文字符串\n");
}
return 0;
}
```
程序首先从键盘上输入一个字符串,然后获取字符串长度,接着遍历字符串的前一半,并判断前一半和后一半是否对称。如果对称,则输出“是回文字符串”,否则输出“不是回文字符串”。
从键盘上输入一个字符串,并判断是否形成回文(即正序和逆序一样, 如“abcd dcba” )。
您好! 感谢您的提问。关于您的问题,我们可以通过以下代码实现判断输入的字符串是否为回文:
```
#include <stdio.h>
#include <string.h>
#define MAX_LENGTH 100
int main() {
char str[MAX_LENGTH];
printf("请输入一个字符串:\n");
fgets(str, MAX_LENGTH, stdin); //从键盘读入字符串
int len = strlen(str) - 1; //去除末尾的换行符
int i, flag = 1;
for(i = 0; i < len / 2; i++) {
if(str[i] != str[len - i - 1]) { //判断是否为回文
flag = 0;
break;
}
}
if(flag) {
printf("是回文!\n");
}
else {
printf("不是回文!\n");
}
return 0;
}
```
希望我的回答能够解决您的问题!
阅读全文
相关推荐















