【文件属性】:
文件名称:数据结构上机题 判断回文对称
文件大小:902B
文件格式:TXT
更新时间:2016-01-14 16:30:56
回文对称
#include "stdio.h"
#include"malloc.h"
#define max 10
typedef struct sn{
char data;
struct sn*next;
}node;
int panduan(node *head,int n)
{
char a[max];
int top=0;
node *p;
p=head->next;
while (topdata;
top++;
p=p->next;
}
top--;
if(n%2==1)
p=p->next;
while(top>=0)
{
if(a[top]!=p->data
)
return 0;
top--;
p=p->next;
}
return 1;
}
int push(node *head,char *s)
{
int i;
node *p,*q;
p=head;
for(i=0;s[i]!='\0';i++)
{
q=(node*)malloc(sizeof(node));
q->data=s[i];
q->next=0;
p->next=q;
p=q;
}
return(i);
}
void main()
{
char s[max];
node *head;
int i;
printf("请输入一组字符序列(最多字数:%d)",max);
scanf("%s",s);
head=(node*)malloc(sizeof(node));
i=push(head,s);
if(panduan(head,i))
printf("该字符序列中心对称\n");
else
printf("该字符序列不是中心对称\n");
}