鱼C论坛

 找回密码
 立即注册
查看: 3685|回复: 2

C语言链表视频代码出现 id returned 1 exit status问题

[复制链接]
发表于 2021-10-27 20:27:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. #include<stdio.h>
  2. #include<stdlib.h>

  3. struct Book
  4. {
  5.         char title[128];
  6.         char author[40];
  7.         struct Book*next;
  8. };

  9. void getInput(struct Book*book);
  10. void addBook(struct Book**library);
  11. void printLibrary(struct Book*library);
  12. void releaseLibriary(struct Book**library);

  13. void getInput(struct Book*book)
  14. {
  15.         printf("请输入书名:\n");
  16.         scanf("%s",book->title);
  17.         printf("请输入作者:\n");
  18.         scanf("%s",book->author);
  19. }



  20. void addBook(struct Book**library)
  21. {
  22.         struct Book*book,*temp;
  23.         book=(struct Book*)malloc(sizeof(struct Book));
  24.        
  25.         if(book==NULL)
  26.         {
  27.                 printf("分配内存失败。\n");
  28.                 exit(1);
  29.         }
  30.        
  31.         getInput(book);
  32.        
  33.         if(*library!=NULL)
  34.         {
  35.                 temp=*library;
  36.                 *library=book;
  37.                 book->next=*library;
  38.         }
  39.         else
  40.         {
  41.                 *library=book;
  42.                 book=NULL;
  43.         }
  44. }


  45. void printLibrary(struct Book*library)
  46. {
  47.         struct Book*book;
  48.         book=library;
  49.         int count=1;
  50.        
  51.         while(book!=NULL)
  52.         {
  53.                 printf("Book%d",count);
  54.                 printf("书名:%s",book->title);
  55.                 printf("作者:%s",book->author);
  56.                 book=book->next;
  57.                 count++;
  58.         }
  59. }

  60. void releaseLibriary(struct Book**library)
  61. {
  62.         struct Book*temp;
  63.         while(*library!=NULL)
  64.         {
  65.                 temp=*library;
  66.                 *library=(*library)->next;
  67.                 free(temp);
  68.         }
  69.        
  70. }

  71. int main(void)
  72. {
  73.         struct Book*library=NULL;
  74.         int ch;
  75.        
  76.         while(1)
  77.         {
  78.                 printf("是否需要输入信息(Y/N):\n");
  79.                 do
  80.                 {
  81.                         ch=getchar();
  82.                 }while(ch!='Y'&ch!='N');
  83.                
  84.                 if(ch=='Y')
  85.                 {
  86.                         addBook(&library);
  87.                 }
  88.                 else
  89.                 {
  90.                         break;
  91.                 }
  92.                 printf("是否需要打印:\n");
  93.                 do
  94.                 {
  95.                         ch=getchar();
  96.                 }while(ch!='Y'&ch!='N');
  97.                
  98.                 if(ch=='Y')
  99.                 {
  100.                         printLibrary(library);
  101.                 }
  102.                 else
  103.                 {
  104.                         break;
  105.                 }
  106.                
  107.                 releaseLibrary(&library);
  108.         }
  109.        
  110.         return 0;
  111.        
  112. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-10-28 00:03:15 | 显示全部楼层
第69行void releaseLibriary(struct Book**library)
library单词打错了
和第117行的代码对不上

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +3 收起 理由
木目簌 + 5 + 5 + 3 无条件支持楼主!

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-10-28 09:22:19 From FishC Mobile | 显示全部楼层
只剩这一个找不到,太痛苦了,太谢谢了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-13 06:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表