楼主你好
具体修改如下:
#include
#include
#include
typedef struct Node
{
char data;//(1)改为char型 原因见注释(2)
struct Node *next;
}Node,*LinkList;
void CreateFromTail(LinkList L)
{
Node *r,*s;
int c;
int flag=1;
r=L;
while(flag)
{
c=getchar();//(1)因为你是用的getchar函数 那么c就应该是字符型数据 char
if(c!='$')
{
s=(Node*)malloc(sizeof(Node));
s->data=c;
r->next=s;
r=s;
}
else
{
flag=0;
r->next=NULL;
}
}
}
void Output(LinkList L)
{
Node *p;
p=L->next;
printf("单链表的元素为:\n");
while(p!=NULL)
{
printf("%c\n",p->data);//(3)data是字符型数据 就应该用%c
p=p->next;
}
}
void main()
{
LinkList H;
H=(LinkList)malloc(sizeof(Node));
H->next=NULL;
printf("请建立一个单链表:\n");
CreateFromTail(H);
Output(H);
}
输入:
abcd$
输出:
a
b
c
d
希望能帮助你哈^_^