C语言带头节点的单链表的初始化和输入值的操作

 时间:2026-02-13 06:25:16

1、首先,我们假设这个带头节点的单链表的数据结构是这样的:

typedef struct LNode

{

     float coef;

     int exp;

     struct LNode *next;

}LNode,*LinkList;

typedef struct

{

     LinkList Head;

     LinkList Curr;

     LinkList Tail;

}Link;

2、然后,下面是它的初始化的实现代码

status InitLink(Link &L)

{

     L.Head=L.Tail=(LNode*)malloc(sizeof(LNode));//这里注意是要申请一个结构体节点的空间。

     if(!L.Head) return ERROR;

     L.Head->exp=0,L.Head->coef=0;//由于是头结点,所以这个节点里面的数据是没有实际意义的,所以为了方便都令为0

     L.Head->next=NULL;//这里最好这样写,这样可以防止指针乱指

     return OK;

}

3、最后是输入值的操作

status GetElem(Link &L,float c,int e)

{

     L.Curr=L.Tail->next;//这里的尾指针我们是从头结点开始的,所以每次调用函数都要先让尾指针指向下一个。

     L.Curr=(LNode*)malloc(sizeof(LNode));//解释同上

     if(!L.Curr) return ERROR;

     L.Curr->coef=c,L.Curr->exp=e;

     L.Curr->next=NULL;//解释同上

     L.Tail=L.Curr;//增加了一个节点,尾指针要下移动一个

     return OK;

}

  • 红米手机怎么更改闹钟铃声
  • flashxp使用教程
  • 数据加速解决方案对现代企业的重要性
  • 狐友怎么注销账号?
  • 如何使用图像滤波去噪GUI中的保存图像功能?
  • 热门搜索
    我的一本课外书手抄报 关于科技手抄报内容 四年级手抄报内容 反腐倡廉手抄报内容 我爱爸爸妈妈手抄报 成长手抄报内容 关于勤俭节约的手抄报 防火手抄报资料 关于读书手抄报内容 手抄报模板设计