在C语言中,单向链表是一种常用的数据结构,可以通过指针实现动态存储数据。以下是一个简单的例子来说明如何创建一个单向链表。
首先,需要定义一个节点结构体,该结构体包含两个成员,一个是数据域,另一个是指向下一个节点的指针。
struct node { int data; struct node *next; };
然后,需要定义一个头指针,它指向链表的第一个节点。在链表中,头指针不包含数据,只是用于标识链表的开始。
struct node *head = NULL;
接下来,可以使用malloc函数动态分配内存来创建一个节点,并将数据存储到该节点中。然后将该节点的指针添加到链表中。这个过程可以使用一个循环来重复执行,直到链表中包含所需的节点数。
以下是一个简单的示例代码,该代码使用while循环来创建一个包含5个节点的单向链表:
#include <stdio.h> #include <stdlib.h> struct node { int data; struct node *next; }; int main() { int i; struct node *new_node, *current_node; // 创建第一个节点 head = (struct node*)malloc(sizeof(struct node)); head->data = 1; head->next = NULL; // 创建其他节点 current_node = head; for (i = 2; i <= 5; i++) { new_node = (struct node*)malloc(sizeof(struct node)); new_node->data = i; new_node->next = NULL; current_node->next = new_node; current_node = new_node; } // 输出链表中的元素 current_node = head; while (current_node != NULL) { printf("%d\n", current_node->data); current_node = current_node->next; } return 0; }
在这个例子中,首先创建了第一个节点,然后通过循环创建其他节点,并将它们链接起来。最后,使用while循环输出链表中的元素。
猜你喜欢:c语言文件结束符怎么输入,怎么用
评论