C语言输入一个字符串,判断是否是回文。
时间: 2024-10-09 15:01:22 浏览: 62
在C语言中,判断一个字符串是否是回文,通常需要比较字符串的第一个字符和最后一个字符,然后依次向中间移动,直到所有对应位置的字符都匹配为止。下面是一个简单的示例程序:
```c
#include <stdio.h>
#include <string.h>
int isPalindrome(char str[]) {
int length = strlen(str);
for (int i = 0; i < length / 2; i++) {
if (str[i] != str[length - 1 - i]) {
return 0; // 如果发现不匹配,则不是回文
}
}
return 1; // 所有字符都匹配,是回文
}
int main() {
char input[100];
printf("请输入一个字符串:");
fgets(input, sizeof(input), stdin); // 使用fgets防止换行符影响结果
input[strcspn(input, "\n")] = '\0'; // 移除fgets读取的换行符
if (isPalindrome(input)) {
printf("%s 是回文\n", input);
} else {
printf("%s 不是回文\n", input);
}
return 0;
}
```
相关问题
C语言输入一个字符串判断是否为回文数的代码
可以用下面的代码来判断一个字符串是否为回文数:#include <stdio.h>
#include <string.h>
int main()
{
char string[100];
int i, length;
int flag = 0;
printf("请输入一个字符串:");
scanf("%s", string);
length = strlen(string);
for(i=0;i < length ;i++){
if(string[i] != string[length-i-1]){
flag = 1;
break;
}
}
if (flag) {
printf("不是回文数\n");
}
else {
printf("是回文数\n");
}
return 0;
}
c语言输入一个字符串,判断是否是回文
以下是 C 语言的代码,可以输入一个字符串并判断是否是回文:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int i, len, 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("%s 是回文字符串\n", str);
} else {
printf("%s 不是回文字符串\n", str);
}
return 0;
}
```
这个程序首先输入一个字符串,然后计算字符串的长度。接下来,它使用一个循环来检查字符串是否是回文。循环从字符串的两端开始,每次比较两个字符是否相等。如果有任何一个字符不相等,那么字符串就不是回文。如果循环结束后所有字符都相等,那么字符串就是回文。
阅读全文