使用C语言建立长度为n的单链表,n>0,删除单链表中等于给定值的元素。数据类型指定为整型。 输入格式: 第一行为链表长度n; 第二行为链表中的n个数据元素的值; 第三行为需要删除的元素值。 输出格式: 输出为删除后的链表中的所有数据元素的值。
时间: 2023-06-19 08:04:12 浏览: 228
以下是使用C语言建立长度为n的单链表,并删除单链表中等于给定值的元素的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义单链表结点
typedef struct Node {
int data; // 数据域
struct Node* next; // 指针域
} Node, *LinkedList;
// 创建单链表
LinkedList createList(int n) {
LinkedList head, p, q;
head = (LinkedList)malloc(sizeof(Node));
head->next = NULL;
q = head;
for (int i = 0; i < n; i++) {
p = (LinkedList)malloc(sizeof(Node));
scanf("%d", &p->data);
p->next = NULL;
q->next = p;
q = p;
}
return head;
}
// 删除单链表中等于给定值的元素
LinkedList deleteValue(LinkedList head, int value) {
Node* p = head->next, * pre = head;
while (p != NULL) {
if (p->data == value) {
pre->next = p->next;
free(p);
p = pre->next;
}
else {
pre = p;
p = p->next;
}
}
return head;
}
// 打印单链表
void printList(LinkedList head) {
Node* p = head->next;
while (p != NULL) {
printf("%d ", p->data);
p = p->next;
}
printf("\n");
}
int main() {
int n, value;
scanf("%d", &n);
LinkedList list = createList(n);
printList(list);
scanf("%d", &value);
list = deleteValue(list, value);
printList(list);
return 0;
}
```
输入示例:
```
5
1 2 3 4 5
3
```
输出示例:
```
1 2 3 4 5
1 2 4 5
```
以上代码中,`createList` 函数用于创建单链表,`deleteValue` 函数用于删除单链表中等于给定值的元素,`printList` 函数用于打印单链表。在 `main` 函数中,首先输入单链表长度 `n` 和单链表中的数据元素的值,然后创建单链表并打印,接着输入需要删除的元素值,调用 `deleteValue` 函数进行删除并打印删除后的单链表。
阅读全文
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![txt](https://img-home.csdnimg.cn/images/20241231045021.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)