代码拉取完成,页面将自动刷新
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include"list.h"
#include"fun.h"
//创建链表
struct List* createList()
{
struct List *list;
list=(struct List*)malloc(sizeof(struct List));
list->head=NULL;
list->size = 0;
return list;
}
//销毁链表
void destoryList(struct List *list)
{
struct Node *temp=list->head,*del=NULL;
while(temp)
{
del=temp;
temp=temp->next;
free(del);//释放节点空间
list->size--;
}
free(list);//释放链表空间
}
//创建节点
struct Node* createNode(struct Student student)
{
struct Node *node=NULL;
node=(struct Node*)malloc(sizeof(struct Node));
node->student=student;
node->next=NULL;
return node;
}
//获取链表最后一个节点
struct Node* getLastNode(struct List *list)
{
struct Node *temp=list->head,*last=NULL;
while(temp)
{
last=temp;
temp=temp->next;
}
return last;
}
//获取当前节点的上一个节点
struct Node* getBeforeNode(struct List *list,struct Student student)
{
struct Node *temp=list->head,*prevNode=NULL;
while(temp)
{
if(strcmp(temp->student.id,student.id)==0)
{
break;
}
prevNode=temp;
temp=temp->next;
}
return prevNode;
}
//将节点添加到链表中
void addList(struct List *list, struct Node *node)
{
struct Node *last;
if(list->head==NULL)
{
list->head=node;
}
else
{
last=getLastNode(list);
last->next=node;
}
list->size++;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。