关于C语言链表的操作实例

来源:百度知道 编辑:UC知道 时间:2024/09/24 12:29:58
有这样一个结构体 char team//队伍名
int jifen//积分
int win//胜利场数
int lost//失利场数
现在有N个队伍,想把一个队伍信息存入一个链表结点,可增加删除队伍,修改队伍信息,用链表具体怎么实现。本人一直对链表不太清楚,想通过此例理解链表,谢谢各位高手赐教,最好注释详细,谢谢!

一般连表程序在c语言中要用link list来实现,我贴一个我写的程序在这里,可以运行,这个程序里包含一个structer纪录学生信息,学生号码已极学生姓名,纪录通过insert_node添加,通过delete_node删除,并在最开始的时候通过create list function来创建最原始的数据,不用理会里面的reverse function。
#include <stdio.h>
#include <stdlib.h>

struct list
{
int num;
char name[10];
struct list *next;
};
typedef struct list node;
typedef node *link;

link find_node_loc(link ptr, link ptr1, int reversed)
{
link ptr0=ptr;
link ptr2=NULL;
if(reversed)
{
while(ptr0!=NULL && (ptr0->num > ptr1->num))
{
ptr2=ptr0;
ptr0=ptr0->next;
}
}
else
{
while(ptr0!=NULL && (ptr0->num < ptr1->num))
{
ptr2=ptr0;
ptr0=ptr0->next;
}

}
return ptr2;
}

link find_node(link head,int IDnum)
{
link ptr;
ptr=head;
while (ptr!=NULL)
{
if(ptr->num==IDnum)
return ptr;
ptr=ptr->ne