C語言學習 18-10-25
阿新 • • 發佈:2018-12-06
1.手動在末尾新增連結串列
(1).判斷該連結串列是否是個空連結串列,若是,則直接將頭指標指向新增的節點
(2).若不是空連結串列,則將新節點新增到連結串列的最後
#include<stdio.h>
#include<stdlib.h>
typedef struct NAMENOTE
{
int id;
char *name;
char *tel_num;
struct NAMENOTE *p_next;
}NameNote;
NameNote *CreatNode(int id, char *name, char *tel_num);
void AppendNode(NameNote **pp_head, NameNote **pp_end, NameNote *node);
int main()
{
NameNote *p_head = NULL;
NameNote *p_end = NULL;
AppendNode(&p_head, &p_end, CreatNode(1, "c", "111"));
AppendNode(&p_head, &p_end, CreatNode(2, "python", "222"));
AppendNode(&p_head, &p_end, CreatNode(3, "java", "333"));
return 0;
}
NameNote *CreatNode(int id, char *name, char *tel_num)
{
NameNote *node = (NameNote*)malloc(sizeof(NameNote));
node->id = id;
node->name = name;
node->tel_num = tel_num;
node->p_next = NULL;
return node;
}
void AppendNode(NameNote ** pp_head, NameNote **pp_end, NameNote *node)
{
if(*pp_head == NULL)
{
*pp_head = node;
*pp_end = node;
}
else
{
(*pp_end)->p_next = node;
}
return;
}