c语言回文字符串判断
时间: 2023-12-30 11:22:48 浏览: 135
以下是两种C语言判断回文字符串的例子:
1.使用指针进行判断
```c
#include<stdio.h>
#include<string.h>
int main() {
char a[100];
char *p;
char *q;
gets(a);
for(p=a,q=a+strlen(a)-1;*p!='\0';q--,p++) {
if(*p!=*q) break;
}
if(p>q) printf("该字符串为回文字符串");
else printf("该字符串不是回文字符串");
return 0;
}
```
2.使用数组进行判断
```c
#include<stdio.h>
int main(void) {
int i,k;
char c[20];
printf("Enter a word:");
k=0;//字符串一次输出赋值。
while(1){
c[k]=getchar();//从键盘读取字符
if(c[k]=='\n')//如果输入回车赋值读取结束,开始进行下面的语段
break;
k++;//此时k为0+输入多少个字符串的值
}
i=0;//定义数组新变量
k=k-1;
while(c[k]==c[i])//让字符串从两边向里面依次比较
{
if(i==k) break;//比较到中间值while循环结束
i++;
k--;
}
if(i>=k)//如果比较到最中间的字符说明该字符串为回文
printf("It is a palindrome\n");
else
printf("It is not a palindrom\n");
return 0;
}
```
阅读全文