#include<stdio.h>
#include<string.h>
int main()
{
void pd(char *a);
printf("输入一个字符串:\n");
char *a;
scanf("%s",a);
pd(a);
return 0;
}
void pd(char *a)
{
int n,c;
n=strlen(a);
int i;
c=n;
for(i=0;i<c;i++,n--)
{
if((a+i)!=(a+n-1))
{
printf("不是回文串\n");
break;
}
}
if(i==c)
printf("是回文串\n");
}
char* a并没有给它分配内存
#include <stdio.h>
#include <string.h>
int main()
{
void pd(char *a);
char str[100];
printf("输入一个字符串:\n");
scanf("%s", &str);
char *a = str;
pd(a);
return 0;
}
void pd(char *a)
{
int n;
n = strlen(a);
int i;
for (i = 0; i <= n/2; i++)
{
if ((a[i] != a[n-1-i]))
{
printf("不是回文串\n");
return;
}
}
printf("是回文串\n");
}