成语大全网 - 汉语词典 - C语言链表的使用方法

C语言链表的使用方法

下面的程序是单链表的建立与输出,都有详细的注释,相信你能看的懂

但要想学习链表必须得掌握了一定的C语言基础

下面这个链表的作用是建立5个结点的单链表,5个结点的值输入以后,依次输出各个结点的值

#include<stdio.h>

#include<stdlib.h>

//链表的建立与输出

struct node//定义结点的类型

{

int num,score;

node*link;

};

void main()

{

node*creat(int n);//函数原型声明

void print(node*h);//函数原型声明

node*head=0;//定义链头指针并初始化

head=creat(5);//调用creat函数创建链表

print(head);//调用print函数输出链表

}

node*creat(int n)

{

node*h=0,*p,*q;

int i;

for(i=1;i<=n;i++)

{

q=(node*)malloc(sizeof(node));//分配一个结点空间

scanf("%d%d",&q->num,&q->score);//输入新结点的值

q->link=0;//新结点的指针域置0

if(h==0)

h=q;//第一个结点作为链头结点

else

p->link=q;//新结点添加到链表的末尾

p=q;

}

return h;//返回链头指针

}

void print(node*h)//链表输出函数的定义

{

while(h)//当指针h非空时输出h所指结点的值

{

printf("num=%d\tscore=%d\n",h->num,h->score);

h=h->link;//使h指向下一个结点

}

}