1个回答
展开全部
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
typedef struct node
{
int date;
struct node *next;
}slnode,*Linklist;
void creat_list(Linklist H)//创建链表,由于实参传值使L指向了一个空节点从而成为头节点指针
{
Linklist p, p1;
int n;
cout<<"请输入结点数"<<endl;
cin>>n;
H->date=n;
cout<<"请输入结点数据"<<endl;
p1 = H;//使p1具有了空间
for(int i=0;i<n;i++)
{
p=(Linklist)malloc(sizeof(slnode));
p->next = NULL;
cin>>p->date;
H->next = p;
H=p;//L指向了最后节点的数据域
};
H=p1;//使尾指针指向了最后节点的数据域
}
void display_list(Linklist H)//输出链表
{
cout<<"输出"<<endl;
Linklist p;
p = H-> next;
for(int i=0;i<H->date;i++)
{
cout<<p->date;
cout << ' ';cout<<'\n';
p = p -> next;
}
}
void main()
{
slnode a;//a是空结构变量
Linklist p;//p是指针
p = &a;//p指向了一个空节点
creat_list(p);//传的是结构变量的地址
display_list(p);
}
#include <stdio.h>
#include <stdlib.h>
typedef struct node
{
int date;
struct node *next;
}slnode,*Linklist;
void creat_list(Linklist H)//创建链表,由于实参传值使L指向了一个空节点从而成为头节点指针
{
Linklist p, p1;
int n;
cout<<"请输入结点数"<<endl;
cin>>n;
H->date=n;
cout<<"请输入结点数据"<<endl;
p1 = H;//使p1具有了空间
for(int i=0;i<n;i++)
{
p=(Linklist)malloc(sizeof(slnode));
p->next = NULL;
cin>>p->date;
H->next = p;
H=p;//L指向了最后节点的数据域
};
H=p1;//使尾指针指向了最后节点的数据域
}
void display_list(Linklist H)//输出链表
{
cout<<"输出"<<endl;
Linklist p;
p = H-> next;
for(int i=0;i<H->date;i++)
{
cout<<p->date;
cout << ' ';cout<<'\n';
p = p -> next;
}
}
void main()
{
slnode a;//a是空结构变量
Linklist p;//p是指针
p = &a;//p指向了一个空节点
creat_list(p);//传的是结构变量的地址
display_list(p);
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询