Babylanyon 2021-01-06 23:16 采纳率: 55.6%
浏览 16

c语言||链表:请问下面的代码哪里错了??

#include <stdio.h>
#include <stdlib.h>
struct Node

{

   int num;

   struct Node *next;

};

int main(void)

{

   struct Node *head,*tail, *p;

   int num;

   int size = sizeof(struct Node);

   head=tail=NULL;

   printf("请输入编号:\n");

   scanf("%d", &num);

   /*建立单向链表*/

   while(num != 0)

   {

     p = (struct Node *) malloc(size);

     p->num = num;

     p->next=NULL;

     tail->next=p;
     tail=p;

     scanf("%d", &num);

   }

   /*输出单向链表*/

   printf("The single linked list is:\n");

   for(p=head; p->next!=NULL; p=p->next)

        printf("%d\n", p->num);

  return 0;

}

原题

下面程序功能如下:输入若干个整数编号,输入编号为0时结束,用单向链表组织这些编号信息后,再按顺序输出。

  • 写回答

2条回答 默认 最新

  • SoftwareTeacher 《编程之美》作者 2021-01-07 00:37
    关注
    	
    #include <stdio.h>
    #include <stdlib.h>
    struct Node
     
    {
     
       int num;
     
       struct Node *next;
     
    };
     
    int main(void)
     
    {
     
       struct Node *head,*tail, *p;
     
       int num;
     
       int size = sizeof(struct Node);
     
       head=tail=NULL;
     
       printf("请输入编号:\n");
     
       scanf("%d", &num);
     
       /*建立单向链表*/
     
       while(num != 0)
     
       {
     
         p = (struct Node *) malloc(size);
     
         p->num = num;
     
         p->next=NULL;
     
         tail->next=p;
         tail=p;
     
         scanf("%d", &num);
     
       }
     
       /*输出单向链表*/
     
       printf("The single linked list is:\n");
     
       for(p=head; p->next!=NULL; p=p->next)
     
            printf("%d\n", p->num);
     
      return 0;
     
    }

    1. 请用代码插件来显示代码。

    评论

报告相同问题?

悬赏问题

  • ¥15 电视版的优酷可以设置电影连续播放吗?
  • ¥50 复现论文;matlab代码编写
  • ¥30 echarts 3d地图怎么实现一进来页面散点数据和卡片一起轮播
  • ¥15 数字图像的降噪滤波增强
  • ¥15 心碎了,为啥我的神经网络训练的时候第二个批次反向传播会报错呀,第一个批次都没有问题
  • ¥15 MSR2680-XS路由器频繁卡顿问题
  • ¥15 VB6可以成功读取的文件,用C#读不了
  • ¥15 如何使用micpyhon解析Modbus RTU返回指定站号的湿度值,并确保正确?
  • ¥15 C++ 句柄后台鼠标拖动如何实现
  • ¥15 有人会SIRIUS 5.8.0这个软件吗