#include <stdio.h>
#include <stdlib.h>
typedef struct node//构建链表节点
{
int data;
struct node *next;
}NODE;
NODE *add(NODE *head,int value);
void print(NODE *h);
int main( )
{
NODE *head=NULL;
int x;
while(1){
scanf("%d",&x);
if(x==-1) break;
head = add(head,x);
}
print(head);
return 0;
}
void print(NODE *h) //遍历链表并输出
{
while(h!=NULL){
printf("%3d",h->data);
h=h->next;
}
}
NODE *add(NODE *head,int value)
{
//在此添加代码
NODE *p=NULL,*r=NULL;
r=head;
if(value!=-1)
{
p=(NODE*)malloc(sizeof(NODE));
p->data=value;
p->next=NULL;
if(head==NULL)
{
head=p;
}
else
{
while(r->next != NULL)r=r->next;
r->next=p;r=p;
}
}
return head;
}
在链表尾部添加结点
最新推荐文章于 2024-10-16 15:56:33 发布