建立一个链表,使链表中从头到尾的结点数据域依次是一个数组的各个元素的值。程序先建立链表然后再遍历输出(假定链表和数组均有6个整型元素)。 **输入提示:"输入数组%d个元素的值。\n" **输入格式:"%d" **输出提示:"此链表各个结点的数据域为:" **输出格式:"%d " 程序运行示例如下: 输入数组6个元素的值。↙ 1 3 5 7 9 11↙ 此链表各个结点的数据域为:1 3 5 7 9 11
时间: 2024-03-25 18:37:48 浏览: 93
以下是实现该功能的C语言代码:
```c
#include <stdio.h>
#include <stdlib.h>
// 链表结点结构体
typedef struct Node {
int data;
struct Node* next;
} Node;
int main() {
int arr[6];
printf("输入数组6个元素的值。\n");
for (int i = 0; i < 6; i++) {
scanf("%d", &arr[i]);
}
// 创建链表
Node* head = NULL;
Node* tail = NULL;
for (int i = 0; i < 6; i++) {
Node* newNode = (Node*) malloc(sizeof(Node));
newNode->data = arr[i];
newNode->next = NULL;
if (head == NULL) {
head = newNode;
tail = newNode;
} else {
tail->next = newNode;
tail = newNode;
}
}
// 遍历链表并输出
printf("此链表各个结点的数据域为:");
Node* p = head;
while (p != NULL) {
printf("%d ", p->data);
p = p->next;
}
printf("\n");
return 0;
}
```
阅读全文