同=用C语言实现一个函数,按1,2,3,,4,5输入的逆序建立一个链表
时间: 2024-09-20 14:13:00 浏览: 39
C语言实现单链表逆序与逆序输出实例
在C语言中,要实现一个函数来构建一个逆序链表,你可以按照以下步骤操作:
首先,你需要定义一个链表节点结构体,包含数据元素和指向下一个节点的指针:
```c
typedef struct Node {
int data;
struct Node* next;
} Node;
```
然后,创建一个函数 `reverseList` 来接收用户输入并构建逆序链表。这里假设有一个数组 `inputArray` 存储了用户输入的整数,以及 `size` 表示数组长度。
```c
Node* reverseList(int inputArray[], int size) {
// 初始化头结点为NULL
Node *head = NULL, *prev = NULL;
for (int i = size - 1; i >= 0; i--) { // 遍历数组从后向前
// 创建新节点,并保存当前元素
Node* newNode = (Node*)malloc(sizeof(Node));
newNode->data = inputArray[i];
// 如果这是第一个节点,将它设为头节点
if (!head) {
head = newNode;
prev = newNode;
} else {
// 将新节点连接到前一个节点之后
newNode->next = prev;
prev = newNode;
}
}
return head; // 返回逆序链表的头结点
}
```
最后,记得在使用完链表后释放内存。这里只是一个简单的函数实现,实际应用中可能还需要考虑错误处理和链表的遍历等问题。
阅读全文