编写单链表的创建并在创建时,通过输入链表的长度,随机生成链表中的元素。
时间: 2024-03-06 22:50:42 浏览: 66
好的,以下是单链表的创建并随机生成元素的代码实现(使用C语言):
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
// 定义链表结构体
typedef struct Node {
int data;
struct Node *next;
} Node;
int main() {
int len, i;
// 随机数种子
srand((unsigned)time(NULL));
// 创建头结点
Node *head = (Node *)malloc(sizeof(Node));
head->next = NULL;
// 读入链表长度
printf("请输入链表长度:");
scanf("%d", &len);
// 创建链表
Node *p = head;
for (i = 0; i < len; i++) {
// 随机生成元素值
int val = rand() % 100;
// 创建新结点
Node *newNode = (Node *)malloc(sizeof(Node));
newNode->data = val;
newNode->next = NULL;
// 将新结点插入链表尾部
p->next = newNode;
p = p->next;
}
// 输出链表元素
p = head->next;
printf("生成的链表为:");
while (p != NULL) {
printf("%d ", p->data);
p = p->next;
}
printf("\n");
return 0;
}
```
运行结果如下:
```
请输入链表长度:5
生成的链表为:2 92 55 96 61
```
该程序先创建头结点,然后读入链表长度,接着利用随机数生成器在循环中逐个创建新结点,并将其插入链表尾部。最后输出生成的链表元素。
阅读全文