单链表怎么建立?

来源:百度知道 编辑:UC知道 时间:2024/05/31 22:10:03
建立一个带头结点的单链表:L={12,13,21,24}。结点的data域为整型数据,由键盘输入.这个怎么做啊 请高手帮忙指点下!!急急急!!

http://zhidao.baidu.com/question/38981098.html?fr=qrl3

#include <malloc.h> /*这个头文件在动态的建立结点时要用到*/
/*
* 这就是表示单链表的一个结点的结构体了,
* 简单起见没有使用模板之类的复杂东西。
*/
struct Node
{
/*这个表示结点的值,这里为了简单,就用int型的吧*/
int data;
/*
* 这是指向结点结构体的一个指针,
* 这里用它指向该结点的下一个结点,
* 以此使单个的结点形成链表
*/
struct Node* next;
};/*至此链表的结点就定义完了*/

int main()
{
/*下面展示如何建立成为一个带头结点的单链表:L={12,13,21,24}*/
struct Node* head = NULL; /*这是链表的头结点*/
struct Node* p = NULL, *q = NULL; /*临时指针,建立链表时会用到*/

/*链表很短,我不用循环,直接建立,可以让你看的更清楚*/

/*建立头结点*/
head = (struct Node*)malloc(sizeof(struct Node));
/*指定结点的值*/
head->data = 12;
/*指定下一个结点,现在还没有先给NULL*/
head->next = NULL;
/*用q保存刚生成的结点*/
q = head;

/*第二个结点,建立的方法和第一个一样*/
p = (str