用C语言实现建立一个单链表的过程,并实现打印链表中每一个元素,写出完整程序

2024-10-30 22:49:04
推荐回答(2个)
回答1:

这是个很简单的链表创建和输出

#include

#include

typedef struct linkednode

{

char data;

struct linkednode *next;

}node,*link_list;//链表节点的结构及重命名

link_list creat()//创建一个链表返回类型是链表的首地址

{

link_list L;

node *p1,*p2;

char data;

L=(node*)malloc(sizeof(node));//开辟存储空间

p2=L;

while((data=getchar())!='\n')//输入回车键时结束输入

{

p1=(node*)malloc(sizeof(node));

p1->data=data;

p2->next=p1;

p2=p1;

}

p2->next=NULL;

return L;

}

void print(link_list L)//把链表输出

{

node *p;

p=L->next;

while(p!=NULL)

{

printf("%c",p->data);

p=p->next;

}

printf("\n");

}

void main()

{

link_list L=NULL;

char x;

printf("请输入链表节点:\n");

L=creat();

print(L);

}

回答2:

这是个很简单的链表创建和输出
#include
#include
typedef struct linkednode
{
char data;
struct linkednode *next;
}node,*link_list;//链表节点的结构及重命名
link_list creat()//创建一个链表返回类型是链表的首地址
{
link_list L;
node *p1,*p2;
char data;
L=(node*)malloc(sizeof(node));//开辟存储空间
p2=L;
while((data=getchar())!='\n')//输入回车键时结束输入
{
p1=(node*)malloc(sizeof(node));
p1->data=data;
p2->next=p1;
p2=p1;
}
p2->next=NULL;
return L;
}
void print(link_list L)//把链表输出
{
node *p;
p=L->next;
while(p!=NULL)
{
printf("%c",p->data);
p=p->next;
}
printf("\n");
}
void main()
{
link_list L=NULL;
char x;
printf("请输入链表节点:\n");
L=creat();
print(L);
}