构建一个带头结点的单链表
时间: 2023-11-22 11:04:32 浏览: 107
好的,这是一个数据结构问题。构建一个带头结点的单链表需要先定义一个结构体来表示链表中的每个节点,同时需要定义一个头结点来表示链表的开头。下面是一个简单的示例代码:
```
struct Node {
int val;
struct Node *next;
};
struct Node* createList() {
struct Node* head = (struct Node*)malloc(sizeof(struct Node)); // 创建头结点
head->next = NULL;
struct Node* cur = head; // 指向当前节点
int n;
printf("请输入链表长度:");
scanf("%d", &n);
printf("请输入链表元素:");
for (int i = 1; i <= n; i++) {
int x;
scanf("%d", &x);
struct Node* node = (struct Node*)malloc(sizeof(struct Node));
node->val = x;
node->next = NULL;
cur->next = node;
cur = cur->next;
}
return head;
}
```
这个函数可以创建一个带头结点的单链表,并且可以从标准输入中读入链表的长度和每个节点的值。
阅读全文