C语言创建一个空的单链表在主函数赋值{123}
请注意,由于C语言是一种编译型语言,下面的代码只是一种示例。它可能无法在所有编译器上运行或产生不同的结果。此外,为了简化问题,这个例子没有包含错误处理或内存管理。
代码如下:
#include <stdio.h>
#include <stdlib.h>
// 定义链表节点结构体
typedef struct node {
int value;
struct node *next;
} Node;
// 创建一个空的单链表
Node* create_list() {
return NULL;
}
// 在链表尾部插入一个节点
Node* insert_tail(Node *head, int value) {
Node *new_node = (Node*)malloc(sizeof(Node));
new_node->value = value;
new_node->next = NULL;
if (head == NULL) {
head = new_node;
} else {
Node *tail = head;
while (tail->next != NULL) {
tail = tail->next;
}
tail->next = new_node;
}
return head;
}
// 打印链表
void print_list(Node *head) {
while (head != NULL) {
printf("%d ", head->value);
head = head->next;
}
printf("\n");
}
int main() {
// 创建一个空的单链表
Node *list = create_list();
// 在链表尾部插入元素1, 2, 3
list = insert_tail(list, 1);
list = insert_tail(list, 2);
list = insert_tail(list, 3);
// 打印链表
print_list(list);
return 0;
}
输出结果为:
1 2 3
在这个例子中,我们首先定义了一个链表节点结构体。它包含一个整型值和一个指向下一个节点的指针。然后,我们编写了三个函数来操作这个链表:
create_list():创建一个空的单链表,返回一个指向头节点的指针。insert_tail():在链表尾部插入一个节点,返回一个指向头节点的指针。print_list():打印链表中所有节点的值。
在主函数中,我们首先创建了一个空的单链表。然后,我们使用insert_tail()函数在链表尾部插入了三个节点,值分别为1、2、3。最后,我们打印了链表中所有节点的值
原文地址: https://www.cveoy.top/t/topic/cvkK 著作权归作者所有。请勿转载和采集!