用c语言写一个创建链表的程序
时间: 2023-12-01 14:04:09 浏览: 76
10670159,含链表的c语言程序源码,c语言
以下是一个简单的使用C语言创建链表的程序:
```
#include <stdio.h>
#include <stdlib.h>
struct node {
int data;
struct node* next;
};
struct node* create_node(int data) {
struct node* new_node = (struct node*)malloc(sizeof(struct node));
new_node->data = data;
new_node->next = NULL;
return new_node;
}
struct node* create_linked_list(int arr[], int size) {
struct node* head = create_node(arr[0]);
struct node* current = head;
for (int i = 1; i < size; i++) {
struct node* new_node = create_node(arr[i]);
current->next = new_node;
current = new_node;
}
return head;
}
void print_linked_list(struct node* head) {
struct node* current = head;
while (current != NULL) {
printf("%d ", current->data);
current = current->next;
}
printf("\n");
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
struct node* head = create_linked_list(arr, size);
print_linked_list(head);
return 0;
}
```
该程序定义了一个结构体`node`,其中包含一个整数数据`data`和一个指向下一个节点的指针`next`。然后定义了两个函数`create_node`和`create_linked_list`,前者用于创建一个新节点,后者用于创建一个新的链表。`create_linked_list`函数接受一个整数数组和其大小作为参数,然后遍历整个数组,为每个数组元素创建一个新的节点,并将其链接到链表中。最后,程序定义了一个`print_linked_list`函数,用于打印链表的内容。在`main`函数中,程序创建了一个整数数组`arr`,将其大小计算出来,并使用`create_linked_list`函数创建了一个新的链表。然后,程序使用`print_linked_list`函数打印了新链表的内容。
阅读全文