#include<stdio.h>
#include<stdlib.h>
struct LinkList
{
char data;
struct LinkList *next;
};
typedef struct LinkList Llist;
Llist *creatlist_L();
void Linkexchange_s(Llist *);
void Linkput(Llist *);
void main()
{
Llist *L;
printf("请输入一组数:\n");
L=creatlist_L();
Linkexchange_s(L);
printf("倒置的数组为:\n");
Linkput(L);
}
Llist *creatlist_L()
{
char c;
Llist *p,*s,*L;
L=(Llist*)malloc(sizeof(Llist));
p=L;
scanf("%c",&c);
while(c!='\n')
{
s=(Llist*)malloc(sizeof(Llist));
s->data=c;
p->next=s;
p=s;
scanf("%c",&c);
}
p->next ='\0';
return L;
}
void Linkexchange_s(Llist *L)
{
Llist *p,*q,*r;
q=L->next;
p=q->next;
r=p->next;
q->next='\0';
while(r)
{
p->next=q;
q=p;
p=r;
r=r->next;
}
p->next=q;
L->next=p;
}
void Linkput(Llist *L)
{
Llist *q;
q=L->next;
while(q!=NULL)
{
printf("%c",q->data);
q=q->next;
}
printf("\n");
}