c语言输入一个字符串,判断是否是回文
时间: 2023-05-22 10:01:54 浏览: 119
以下是 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;
}
```
这个程序首先输入一个字符串,然后计算字符串的长度。接下来,它使用一个循环来检查字符串是否是回文。循环从字符串的两端开始,每次比较两个字符是否相等。如果有任何一个字符不相等,那么字符串就不是回文。如果循环结束后所有字符都相等,那么字符串就是回文。
相关问题
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-i-1])
{
flag = 1;
break;
}
}
if (flag)
{
printf("%s 不是回文数", str);
}
else
{
printf("%s 是回文数", str);
}
return 0;
}
```
该程序中,我们先输入一个字符串,并计算字符串的长度。然后,我们使用for循环来遍历字符串中的每个字符,判断它们是否与字符串对应的反向字符相等。如果它们不相等,则将flag标志设置为1,程序输出该字符串不是回文数;否则,程序输出该字符串是回文数。
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 / 2; i++)
{
if (str[i] != str[len - i - 1])
{
flag = 1;
break;
}
}
if (flag == 1)
{
printf("%s 不是回文字符串\n", str);
}
else
{
printf("%s 是回文字符串\n", str);
}
return 0;
}
```
程序首先要求用户输入一个字符串,然后使用 `strlen` 函数获取字符串长度。接着,程序使用循环遍历字符串的前一半字符,同时与字符串的后一半字符进行比较,如果有不相等的字符,则标记 `flag` 置为 1。最后,根据 `flag` 的值输出结果。
需要注意的是,程序中使用了 `scanf` 函数来读取用户输入的字符串,但这种方式存在安全隐患,因为用户可以输入超出数组长度的字符串,从而导致程序崩溃。更好的做法是使用 `fgets` 函数来读取字符串,具体可以参考下面的代码:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int i, len, flag = 0;
printf("请输入一个字符串:");
fgets(str, 100, stdin);
len = strlen(str) - 1; // 去掉换行符
for (i = 0; i < len / 2; i++)
{
if (str[i] != str[len - i - 1])
{
flag = 1;
break;
}
}
if (flag == 1)
{
printf("%s 不是回文字符串\n", str);
}
else
{
printf("%s 是回文字符串\n", str);
}
return 0;
}
```
使用 `fgets` 函数可以避免输入超长字符串的问题,但需要注意的是,`fgets` 函数会读取换行符,因此在计算字符串长度时需要将其减去。
阅读全文
相关推荐
















