比如输入1234,理想输出是4321,但却除了一堆其他的东西。如果a[]直接赋值,就正确,用gets赋值,就不对。哪位大佬帮看一下,谢了。
源程序:
#include<stdio.h>
#include<malloc.h>
typedef struct DNode
{
char data;
DNode *next;
}LinkList;
void DispList(LinkList *L)
{
LinkList *p=L->next;
while(p!=NULL)
{
printf("%d",p->data);
p=p->next;
}
printf("\n");
}
main()
{
char a[30];
int i=0;
LinkList *L,*s;
gets(a);
L=(LinkList*)malloc(sizeof(LinkList));
L->next=NULL;
for(i=0;a[i]!='\0';i++)
{
s=(LinkList*)malloc(sizeof(LinkList));
s->data=a[i];
s->next=L->next;
L->next=s;
}
DispList(L);
}
不是这的问题😓
找到原因了
本回答被提问者采纳