输入给定的 10 个数据建立一个单链表,显示该单链表中的数据元素
时间: 2024-06-13 09:04:35 浏览: 28
根据引用中的程序代码,可以按照以下步骤建立一个单链表并显示其中的数据元素:
1. 定义一个结构体来表示单链表的每个节点,包括数据域和指向下一个节点的指针域。
2. 定义一个头指针指向单链表的头节点。
3. 依次输入数据元素1,2,3,4,5,6,7,8,9,10,并将它们插入到单链表中。
4. 删除数据元素5。
5. 遍历单链表,依次显示其中的数据元素。
具体实现过程如下:
```
#include <stdio.h>
#include <stdlib.h>
typedef int ElemType; // 假设单链表中存储的是整型数据
// 定义单链表的节点结构体
typedef struct Node {
ElemType data; // 数据域
struct Node *next; // 指向下一个节点的指针域
} Node, *LinkList;
int main() {
LinkList L; // 定义头指针
Node *p, *q; // 定义两个指针变量
int i;
// 初始化单链表
L = (LinkList) malloc(sizeof(Node));
L->next = NULL;
q = L;
// 依次输入数据元素1,2,3,4,5,6,7,8,9,10,并将它们插入到单链表中
for (i = 1; i <= 10; i++) {
p = (Node *) malloc(sizeof(Node));
p->data = i;
p->next = NULL;
q->next = p;
q = p;
}
// 删除数据元素5
p = L->next;
while (p != NULL) {
if (p->data == 5) {
q->next = p->next;
free(p);
break;
}
q = p;
p = p->next; }
// 遍历单链表,依次显示其中的数据元素
p = L->next;
while (p != NULL) {
printf("%d ", p->data);
p = p->next;
}
printf("\n");
return 0;
}
```
以上程序代码可以建立一个包含10个数据元素的单链表,并删除其中的数据元素5,最后输出单链表中的数据元素。