ata = data; //将新建节点的数据域赋值为输入的节点数据值
p->next = NULL;//将新建的节点置为表尾
return head; //返回添加节点后的链表的头指针
}
}
//函数的功能:显示链表中所有节点的节点号和该节点中的数据项的内容
void DisplyNode (struct link *head)
{
struct link *p = head;
int j = 1;
p = p->next;
while (p != NULL) //若不是表尾,则循环打印节点的数值
{
printf("%5d%10d\n", j, p->data);//打印第j个节点数据
p = p->next; //让p指向下一个节点
j++;
}
}
//函数的功能:释放head所指向的链表中所有节点占用的内存
void DeletMemory(struct link *head)
{
struct link *p = head, *pr = NULL;
while (p != NULL) //若不是表尾,则释放节点占用的内存
{
pr = p; //在pr中保存当前节点的指针
p = p->next;//让p指向下一个节点
free(pr); //释放pr指向的当前节点占用的内存
}
}