|
发表于 2018-4-15 19:04:30
From FishC Mobile
|
显示全部楼层
|阅读模式
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
typedef struct node
{
int data;
struct node *next;
}
node,*link;
void creatlink(link l,int n)
{
link p,q;
int i;
p=l;
p=(link)malloc(sizeof(node));
for (i=1;i<=n;i++)
{
q=(link)malloc(sizeof(node));
printf("请输入第%d个链表",i);
scanf("%d",&(q->data));
q->next=NULL;
p->next=q;
p=q;
}
}
void print(link l)
{
link q=l->next;
while(q!=NULL)
{
printf("%d ",q->data);
q=q->next;
}
}
main()
{
link head=NULL;
int n;
printf("请输入链表的长度");
scanf("%d",&n);
creatlink(head,n);
printf("刚刚建立的链表为\n");
print(head);
}
- #include<stdio.h>
- #include<stdlib.h>
- #include<malloc.h>
- typedef struct node
- {
- int data;
- struct node *next;
- }
- node,*link;
- void creatlink(link *l,int n) //指向指针的指针(link *l)
- {
- link p,q;
- int i;
- (*l)=(link)malloc(sizeof(node)); //你一进来首先就要为head 分配内存空间,返回的地址存入head。而要修改head存放的地址,得要用指向指针的指针(link *l)。
- p=(*l);
- for (i=1;i<=n;i++)
- {
- q=(link)malloc(sizeof(node));
- printf("请输入第%d个链表",i);
- scanf("%d",&(q->data));
- q->next=NULL;
- p->next=q;
- p=q;
- }
- }
- void print(link l)
- {
- link q=l->next;
- while(q!=NULL)
- {
- printf("%d ",q->data);
- q=q->next;
- }
- }
- main()
- {
- link head=NULL;
- int n;
- printf("请输入链表的长度");
- scanf("%d",&n);
- creatlink(&head,n); //传入head指针的地址,已便函数内 修改 head指针 里存放的地址。
- printf("刚刚建立的链表为\n");
- print(head);
- }
复制代码
|
|