这是数据结构中的尾插法进行单链表的创建。根据这段代码,最后一个结点指针(p-next)指向哪儿? 5
#include<malloc.h>#include<stdio.h>typedefstructnode{intdata;structnode*next;}NODE;NO...
#include<malloc.h>
#include<stdio.h>
typedef struct node
{
int data;
struct node *next;
}NODE;
NODE *creat()
{
NODE *head,*q,*p;
int a,n;
printf("单链表长度n=");
scanf("%d",&n);
head=(NODE*)malloc(sizeof(NODE));
head->next=NULL;
q=head->next;
for(int i=0;i<n;i++) {
scanf("%d",&a);
p=(NODE*)malloc(sizeof(NODE));
p->data=a;
head->next=p;
p->next=q;
q=p;
}
return(head);
}
main()
{
NODE *a;
a=creat();
printf("输出单链表的元素:\n");
a=a->next;
while(a!=NULL)
{
printf("%d\n",a->data);
a=a->next;
}
} 展开
#include<stdio.h>
typedef struct node
{
int data;
struct node *next;
}NODE;
NODE *creat()
{
NODE *head,*q,*p;
int a,n;
printf("单链表长度n=");
scanf("%d",&n);
head=(NODE*)malloc(sizeof(NODE));
head->next=NULL;
q=head->next;
for(int i=0;i<n;i++) {
scanf("%d",&a);
p=(NODE*)malloc(sizeof(NODE));
p->data=a;
head->next=p;
p->next=q;
q=p;
}
return(head);
}
main()
{
NODE *a;
a=creat();
printf("输出单链表的元素:\n");
a=a->next;
while(a!=NULL)
{
printf("%d\n",a->data);
a=a->next;
}
} 展开
1个回答
展开全部
你先看这个列子:
LinkList CreatListR(void)
{//返回单链表的头指针
char ch;
LinkList head;//头指针
ListNode *s,*r; //工作指针
head=NULL; //链表开始为空
r=NULL;//尾指针初值为空
ch=getchar(); //读入第1个字符
while(ch!='\n'){
s=(ListNode *)malloc(sizeof(ListNode));//生成新结点
s->data=ch; //将读入的数据放入新结点的数据域中
if (head!=NULL)
head=s;//新结点插入空表
else
r->next=s;//将新结点插到*r之后
r=s;//尾指针指向新表尾
ch=getchar(); //读入下一字符
}//endwhile
if
(r!=NULL)
r->next=NULL;//对于非空表,将尾结点指针域置空head=s;
return head;
}
你那个应该是a->next=p->next;
LinkList CreatListR(void)
{//返回单链表的头指针
char ch;
LinkList head;//头指针
ListNode *s,*r; //工作指针
head=NULL; //链表开始为空
r=NULL;//尾指针初值为空
ch=getchar(); //读入第1个字符
while(ch!='\n'){
s=(ListNode *)malloc(sizeof(ListNode));//生成新结点
s->data=ch; //将读入的数据放入新结点的数据域中
if (head!=NULL)
head=s;//新结点插入空表
else
r->next=s;//将新结点插到*r之后
r=s;//尾指针指向新表尾
ch=getchar(); //读入下一字符
}//endwhile
if
(r!=NULL)
r->next=NULL;//对于非空表,将尾结点指针域置空head=s;
return head;
}
你那个应该是a->next=p->next;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询