A2112999619 2022-08-17 21:33 采纳率: 100%
浏览 162
已结题

链表读取访问权限冲突

这个链表我学了好几天了结果还是没学会,搜了好多方法我也还是不知道哪有问题,帮忙挑下错误,谢谢!
代码如下:
#include<stdio.h>
#include<stdlib.h>
typedef struct linkedlist
{
int num;
struct linkedlist* next;
}node;

node* NODE()
{
int Num;
node* head = NULL;
head = (node*)malloc(sizeof(node*));
node* new;

while (1) {
    int a;
    scanf_s("%d", &Num);
    if (Num != 0) {
        new = (node*)malloc(sizeof(node*));
        new->num = Num;
        head->next = new->next;                                                              
        head->next = new;                                                                    
    }
    else goto a;
}

a:
return head;
}

void output(node*head) {
node *put=head->next;

while (put!=NULL)
{
    printf("%d\n", put->num);
    put = put->next;
}

}
int main()
{
node* head=NULL;
head = NODE();
output(head);
}

错误如下:

img

  • 写回答

2条回答 默认 最新

  • 天际的海浪 2022-08-17 21:47
    关注

    你题目的解答代码如下:

    #include <stdio.h>
    #include <stdlib.h>
    typedef struct linkedlist
    {
        int num;
        struct linkedlist *next;
    } node;
    
    node *NODE()
    {
        int Num;
        node *head = NULL;
        head = (node *)malloc(sizeof(node *));
        head->next = NULL;  //加上
        node *new;
    
        while (1)
        {
            int a;
            scanf_s("%d", &Num);
            if (Num != 0)
            {
                new = (node *)malloc(sizeof(node *));
                new->num = Num;
                new->next = head->next; //你new 和 head 写反了;
                head->next = new;
            }
            else
                goto a;
        }
    a:
        return head;
    }
    
    void output(node *head)
    {
        node *put = head->next;
    
        while (put != NULL)
        {
            printf("%d\n", put->num);
            put = put->next;
        }
    }
    int main()
    {
        node *head = NULL;
        head = NODE();
        output(head);
    }
    

    如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月25日
  • 已采纳回答 8月17日
  • 修改了问题 8月17日
  • 创建了问题 8月17日