编写c语言程序判断是否是回文串
时间: 2023-08-20 20:24:59 浏览: 89
以下是一个简单的 C 语言程序,用于判断一个字符串是否为回文串:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int i, j, len, flag = 1;
printf("请输入字符串:");
scanf("%s", str);
len = strlen(str);
for (i = 0, j = len - 1; i < len / 2; i++, j--) {
if (str[i] != str[j]) {
flag = 0;
break;
}
}
if (flag) {
printf("%s 是回文串\n", str);
} else {
printf("%s 不是回文串\n", str);
}
return 0;
}
```
程序首先通过 `scanf()` 函数从用户输入中读取字符串。然后,使用一个循环来检查字符串的前半部分是否与后半部分相匹配。如果找到不匹配的字符,则将 `flag` 标记设置为 0。最后,根据 `flag` 标记的值来输出结果。如果 `flag` 的值为 1,则说明字符串是回文串;如果 `flag` 的值为 0,则说明字符串不是回文串。
相关问题
编写C语言程序判断输入字符串是否是回文
以下是一个简单的C语言程序,用于判断输入的字符串是否是回文:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int i, len, flag = 0;
printf("请输入一个字符串:");
scanf("%s", str);
len = strlen(str);
for(i = 0; i < len; i++)
{
if(str[i] != str[len - 1 - i])
{
flag = 1;
break;
}
}
if(flag)
{
printf("%s 不是回文字符串\n", str);
}
else
{
printf("%s 是回文字符串\n", str);
}
return 0;
}
```
该程序首先要求用户输入一个字符串,然后使用 strlen 函数获取字符串的长度,接着使用 for 循环遍历字符串,判断字符串是否是回文。如果字符串是回文,则输出“是回文字符串”,否则输出“不是回文字符串”。
编写c语言程序判断一个字符列是否是回文
可以使用双指针法来判断一个字符列是否是回文。具体思路是从头尾两端同时向中间扫描,每次比较两端的字符是否相等,若不相等,则不是回文。以下是一个示例的C语言程序:
```c
#include <stdio.h>
#include <string.h>
int isPalindrome(char *s) {
int len = strlen(s);
int i = 0, j = len - 1;
while (i < j) {
if (s[i] != s[j]) {
return 0; // 不是回文
}
i++;
j--;
}
return 1; // 是回文
}
int main() {
char s[100];
printf("请输入一个字符串:");
scanf("%s", s);
if (isPalindrome(s)) {
printf("%s 是回文\n", s);
} else {
printf("%s 不是回文\n", s);
}
return 0;
}
```
运行程序后,输入一个字符串,程序会输出该字符串是否是回文。
阅读全文