题解 | #KiKi学结构体和指针#

KiKi学结构体和指针

https://www.nowcoder.com/practice/0ab593ca56b1476eb05b1ff848fd7fcc

#include <stdio.h>
#include <stdlib.h>
struct Node {
    int data;
    struct Node* next;
};
int main() {
    int n = 0;
    struct Node* list = NULL;
    struct Node* tail = NULL;
//输入结点
    int i = 0;
    scanf("%d", &n);
    for (i = 0; i < n; i++) {
        int data = 0;
        scanf("%d", &data);
        struct Node* n = (struct Node*)malloc(sizeof(struct Node));
        n->data = data;
        n->next = NULL;
        if (list == NULL) {
            list = n;
            tail = list;
        } else {
            tail->next = n;
            tail = tail->next;
        }
    }
//删除结点
    int del = 0;
    scanf("%d", &del);
    struct Node* cur = list;
    struct Node* prev = NULL;
    while (cur) {
        if (cur->data == del) {
            struct Node* pd = cur;
//如果删除的是第一个结点
            if (cur == list) {
                list = list->next;
                cur = list;
            } else {
//删除的不是第一个结点
                prev->next = cur->next;
                cur = prev->next;
            }
            n--;
            free(pd);
        } else { //找不到
            prev = cur;
            cur = cur->next;
        }
    }
    cur = list;
    printf("%d\n", n);
    while (cur) {
        printf("%d ", cur->data);
        cur = cur->next;
    }
//释放空间
    cur = list;
    while (cur) {
        del = cur;
        cur = cur->next;
        free(del);
    }
    return 0;
}

c语言刷题 文章被收录于专栏

c语言刷题题目

全部评论

相关推荐

07-09 18:33
门头沟学院 Java
这么逆天每年都有人去???&nbsp;填多益网申就是大型的服从性测试
鲁大牛:辅导员在群里发了这个公司我就申了一下。网申居然要写当场开摄像头写两篇不少于三百字的作文。太逆天了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-08 17:10
点赞 评论 收藏
分享
05-19 19:57
蚌埠学院 Python
2237:Gpa70不算高,建议只写排名,个人技能不在多而在精,缩到8条以内。项目留一个含金量高的,减少间距弄到一页,硕士简历也就一页,本科不要写很多
实习,投递多份简历没人回...
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务