wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

標題: 圖書管理系統-C語言代碼 [打印本頁]

作者: rong666    時間: 2023-3-26 15:37
標題: 圖書管理系統-C語言代碼

1. 定義圖書類Book,包括如下屬性:
- 書名
- 作者
- 出版社
- 出版日期
- ISBN號
- 借出狀態

2. 定義讀者類Reader,包括如下屬性:
- 姓名
- 學號/工號
- 借閱書籍數量
- 借閱歷史

3. 定義圖書館類Library,包括如下屬性:
- 圖書館名稱
- 圖書總量
- 已借出圖書數量
- 圖書列表

4. 定義如下函數進行圖書管理:
- add_book():添加書籍
- remove_book():刪除書籍
- borrow_book():借閱書籍
- return_book():歸還書籍
- check_book_status():檢查書籍借出狀態
- search_book():查找書籍
- add_reader():添加讀者
- remove_reader():刪除讀者
- borrow_history():查看借閱歷史
- check_reader_status():檢查讀者借書狀態
- search_reader():查找讀者

5. 根據以上函數實現一個完整的圖書館管理系統。

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>

  4. // 圖書類
  5. typedef struct book_struct {
  6.     char name[100];
  7.     char author[50];
  8.     char publisher[50];
  9.     char publish_date[20];
  10.     char isbn[50];
  11.     int borrowed;
  12. } Book;

  13. // 讀者類
  14. typedef struct reader_struct {
  15.     char name[50];
  16.     char id[50];
  17.     int borrow_amount;
  18.     Book *borrow_list[10];   // 保存借閱記錄
  19. } Reader;

  20. // 圖書館類
  21. typedef struct library_struct {
  22.     char name[50];
  23.     int total_books;
  24.     int borrowed_books;
  25.     Book *book_list[10000];  // 最多保存10000本書
  26.     Reader *reader_list[1000];  // 最多保存1000名讀者
  27. } Library;

  28. // 函數聲明
  29. void add_book(Library *lib, Book *book);
  30. void remove_book(Library *lib, Book *book);
  31. void borrow_book(Library *lib, Reader *reader, Book *book);
  32. void return_book(Library *lib, Reader *reader, Book *book);
  33. void check_book_status(Book *book);
  34. Book* search_book(Library *lib, char *name);
  35. void add_reader(Library *lib, Reader *reader);
  36. void remove_reader(Library *lib, Reader *reader);
  37. void borrow_history(Reader *reader);
  38. void check_reader_status(Reader *reader);
  39. Reader* search_reader(Library *lib, char *name);

  40. int main() {
  41.     // 初始化圖書館
  42.     Library lib = {"XX大學圖書館", 0, 0, {NULL}, {NULL}};

  43.     // 初始化幾本書
  44.     Book b1 = {"算法導論", "Thomas H. Cormen", "機械工業出版社", "2006-8-1", "9787111187776", 0};
  45.     Book b2 = {"UNIX編程藝術", "Eric S. Raymond", "人民郵電出版社", "2004-1-1", "9787115120024", 0};
  46.     Book b3 = {"信息簡史", "James Gleick", "中信出版社", "2002-7-1", "9787508600987", 0};

  47.     // 添加幾本書到圖書館
  48.     add_book(&lib, &b1);
  49.     add_book(&lib, &b2);
  50.     add_book(&lib, &b3);

  51.     // 初始化讀者
  52.     Reader r1 = {"張三", "2018001", 0, {NULL}};

  53.     // 添加讀者
  54.     add_reader(&lib, &r1);

  55.     // 借一本書
  56.     borrow_book(&lib, &r1, &b1);

  57.     // 返還一本書
  58.     return_book(&lib, &r1, &b1);

  59.     return 0;
  60. }

  61. // 添加書籍
  62. void add_book(Library *lib, Book *book) {
  63.     if(lib->total_books >= 10000) {
  64.         printf("Error: 圖書館容量已滿,無法添加新書!\n");
  65.         return;
  66.     }
  67.     lib->book_list[lib->total_books] = book;
  68.     lib->total_books++;
  69.     printf("添加 \"%s\" 成功!\n", book->name);
  70. }

  71. // 刪除書籍
  72. void remove_book(Library *lib, Book *book) {
  73.     for(int i=0; i<lib->total_books; i++) {
  74.         if(strcmp(lib->book_list[i]->name, book->name)==0) {
  75.             // 如果這本書借出去了,不允許刪除
  76.             if(lib->book_list[i]->borrowed) {
  77.                 printf("Error: 書籍 \"%s\" 已借出,無法刪除!\n", book->name);
  78.                 return;
  79.             }
  80.             lib->total_books--;
  81.             for(int j=i; j<lib->total_books; j++) {
  82.                 lib->book_list[j] = lib->book_list[j+1];
  83.             }
  84.             printf("刪除 \"%s\" 成功!\n", book->name);
  85.             return;
  86.         }
  87.     }
  88.     printf("Error: 沒有找到要刪除的書籍!\n");
  89. }

  90. // 借閱書籍
  91. void borrow_book(Library *lib, Reader *reader, Book *book) {
  92.     // 判斷讀者已經借了多少本書了
  93.     if(reader->borrow_amount >= 10) {
  94.         printf("Error: 讀者 \"%s\" 借書已達上限!\n", reader->name);
  95.         return;
  96.     }
  97.     // 判斷這本書是否已經借出去了
  98.     if(book->borrowed) {
  99.         printf("Error: 書籍 \"%s\" 已被借出!\n", book->name);
  100.         return;
  101.     }

  102.     reader->borrow_list[reader->borrow_amount] = book;
  103.     reader->borrow_amount++;
  104.     book->borrowed = 1;
  105.     lib->borrowed_books++;
  106.     printf("\"%s\" 已被 \"%s\" 借閱!\n", book->name, reader->name);
  107. }

  108. // 歸還書籍
  109. void return_book(Library *lib, Reader *reader, Book *book) {
  110.     // 查找這本書是否由該讀者借閱
  111.     int found = 0;
  112.     for(int i=0; i<reader->borrow_amount; i++) {
  113.         if(reader->borrow_list[i] == book) {
  114.             found = 1;
  115.             for(int j=i; j<reader->borrow_amount-1; j++) {
  116.                 reader->borrow_list[j] = reader->borrow_list[j+1];
  117.             }
  118.             reader->borrow_list[reader->borrow_amount-1] = NULL;
  119.             reader->borrow_amount--;
  120.             book->borrowed = 0;
  121.             lib->borrowed_books--;
  122.             printf("\"%s\" 已被 \"%s\" 歸還!\n", book->name, reader->name);
  123.             break;
  124.         }
  125.     }
  126.     if(!found) {
  127.         printf("Error: \"%s\" 并沒有借閱 \"%s\"!\n", reader->name, book->name);
  128.     }
  129. }

  130. // 檢查書籍的借出狀態
  131. void check_book_status(Book *book) {
  132.     if(book->borrowed) {
  133.         printf("\"%s\" 已經被借出了!\n", book->name);
  134.     } else {
  135.         printf("\"%s\" 目前還沒被借出!\n", book->name);
  136.     }
  137. }

  138. // 查找書籍
  139. Book* search_book(Library *lib, char *name) {
  140.     for(int i=0; i<lib->total_books; i++) {
  141.         if(strcmp(lib->book_list[i]->name, name)==0) {
  142.             return lib->book_list[i];
  143.         }
  144.     }
  145.     printf("Error: 沒有找到書籍 \"%s\"!\n", name);
  146.     return NULL;
  147. }

  148. // 添加讀者
  149. void add_reader(Library *lib, Reader *reader) {
  150.     if(lib->total_books >= 1000) {
  151.         printf("Error: 圖書館讀者容量已滿,無法添加新讀者!\n");
  152.         return;
  153.     }
  154.     lib->reader_list[lib->total_books] = reader;
  155.     lib->total_books++;
  156.     printf("添加讀者 \"%s\" 成功!\n", reader->name);
  157. }

  158. // 刪除讀者
  159. void remove_reader(Library *lib, Reader *reader) {
  160.     for(int i=0; i<lib->total_books; i++) {
  161.         if(lib->reader_list[i] == reader) {
  162.             // 如果這個讀者還有未歸還的書,不允許刪除
  163.             if(reader->borrow_amount > 0) {
  164.                 printf("Error: 讀者 \"%s\" 還有未歸還的書籍,無法刪除!\n", reader->name);
  165.                 return;
  166.             }
  167.             lib->total_books--;
  168.             for(int j=i; j<lib->total_books; j++) {
  169.                 lib->reader_list[j] = lib->reader_list[j+1];
  170.             }
  171.             printf("刪除讀者 \"%s\" 成功!\n", reader->name);
  172.             return;
  173.         }
  174.     }
  175.     printf("Error: 沒有找到要刪除的讀者!\n");
  176. }

  177. // 查看讀者借閱記錄
  178. void borrow_history(Reader *reader) {
  179.     printf("%s 的借閱歷史:\n", reader->name);
  180.     for(int i=0; i<reader->borrow_amount; i++) {
  181.         printf("%d. %s (%s)\n", i+1, reader->borrow_list[i]->name, reader->borrow_list[i]->author);
  182.     }
  183. }

  184. // 檢查讀者是否有借書超期未歸還的情況
  185. void check_reader_status(Reader *reader) {
  186.     if(reader->borrow_amount == 0) {
  187.         return;
  188.     }
  189.     printf("檢查 %s 是否有超期未歸還的書籍...\n", reader->name);
  190.     // 模擬檢查過程,假設借閱期限為14天,超過14天就算超期
  191.     for(int i=0; i<reader->borrow_amount; i++) {
  192.         if(reader->borrow_list[i]->borrowed == 1) {
  193.             printf("警告:\"%s\" 已經超期未歸還 %d 天!\n", reader->borrow_list[i]->name, 28);
  194.         }
  195.     }
  196. }

  197. // 查找讀者
  198. Reader* search_reader(Library *lib, char *name) {
  199.     for(int i=0; i<lib->total_books; i++) {
  200.         if(strcmp(lib->reader_list[i]->name, name)==0) {
  201.             return lib->reader_list[i];
  202.         }
  203.     }
  204.     printf("Error: 沒有找到讀者 \"%s\"!\n", name);
  205.     return NULL;
  206. }
復制代碼


作者: glinfei    時間: 2023-3-26 22:46
這應該是學習鏈表的代碼,怎么不用呢?還有菜單也沒寫
作者: a185980800    時間: 2023-3-26 23:16
牛,做個記號




歡迎光臨 (http://www.izizhuan.cn/bbs/) Powered by Discuz! X3.1
亚洲精品国产一区二区三区| 韩国福利一区| 国产日韩一区二区在线观看| 国产成人av网址| 日韩午夜在线影院| 国产午夜精品一区二区| 在线电影一区| 久久99国产精品久久99大师| 成人三级小说| 在线天堂av| 日日爱66.cn| 亚洲xxxx天美| 日本少妇做爰全过程毛片| 女女调教被c哭捆绑喷水百合| 亚洲图片小说在线| 91精品视频专区| 久久6免费高清热精品| 欧美精品 国产精品| 中文字幕欧美国产| 国产一区二区看久久| 你懂的一区二区| 麻豆一二三区精品蜜桃| 青青草原av在线| 在线一二三区| 波多野结衣一区二区在线| 欧美熟妇激情一区二区三区| 无码无遮挡又大又爽又黄的视频| 久久国产一区| 日韩av片永久免费网站| 亚洲一区二区福利| 欧美精选一区二区| 午夜精品一区二区三区电影天堂| 99re亚洲国产精品| 亚洲一区二区三区免费在线观看| 伊人久久大香线蕉| 欧美三级电影网址| av蜜臀在线| 最新97超碰在线| 特黄特色特刺激视频免费播放| 国产精品bbw一区二区三区| 高清国产mv在线观看| 91视频久久久| 69夜色精品国产69乱| 午夜性福利视频| 亚洲视频在线观看一区二区三区| 日韩精品一区二区三区四区五区| 国产在线播放91| 情事1991在线| 久久青草福利网站| 日韩视频在线一区| 亚洲美女中文字幕| 精品国产伦理网| 欧美精品 国产精品| 欧美日在线观看| 亚洲欧美色图小说| 中文字幕二三区不卡| 成人国产亚洲欧美成人综合网 | 亚洲国产综合人成综合网站| 成人av在线网| 国产精品一区二区在线播放 | 欧美精品xxxxx| 日韩不卡av在线| 黄色性生活一级片| 亚洲一级av无码毛片精品| 日本网站在线看| 欧美一级xxxx| 成人av毛片在线观看| 国产精品人人爽人人爽| 992kp快乐看片永久免费网址| 少妇高潮喷水久久久久久久久久| 国产自产在线视频| 青青青国产在线观看| 免费看毛片的网址| 国模吧无码一区二区三区| 波多野结衣50连登视频| 男人揉女人奶房视频60分| 国产综合免费视频| 亚洲中文字幕久久精品无码喷水| 日韩精品一区二区三区不卡| 熟女人妇 成熟妇女系列视频| 那种视频在线观看| 亚洲色图 在线视频| 依人在线免费视频| 又黄又爽又色的视频| 久久精品视频一| 亚洲日韩中文字幕| 亚洲男人天堂手机在线| 中文字幕亚洲无线码a| 中文字幕亚洲综合久久筱田步美| 俺去了亚洲欧美日韩| 久久久久国色av免费观看性色 | 五月激情六月综合| 日韩欧美视频一区二区三区| 91黄视频在线| 欧美一区二区免费观在线| 精品国产3级a| 色偷偷av亚洲男人的天堂| 不卡av电影院| 日韩免费精品视频| 99久久综合狠狠综合久久止| 久久久久久久久久久久久久久久av| 欧美肥婆姓交大片| 国产欧美日本| 国a精品视频大全| 亚洲色图 校园春色| 青青草国产成人99久久| 一呦二呦三呦国产精品| 麻豆精品新av中文字幕| 一区二区免费在线| 国产亚洲欧美日韩一区二区| 亚洲精品免费av| 亚洲国产精品久久久久婷蜜芽| 五月天婷婷丁香网| 在线观看xxx| 97香蕉久久| 欧美高清影院| 久久午夜精品一区二区| 一区二区三区免费看视频| 夜夜躁日日躁狠狠久久88av| 国产视频一区二区不卡| 国产成人美女视频| 国产91av在线播放| wwwwww99| 久久麻豆视频| 人人精品人人爱| 一本色道久久综合精品竹菊| 992tv在线成人免费观看| 草草草视频在线观看| 欧美风情第一页| 欧美精品videosbestsex另类| 麻豆传媒在线完整视频| 忘忧草精品久久久久久久高清| 亚洲国产成人一区二区三区| 中文字幕精品在线| 在线观看福利一区| 日韩欧美视频免费观看| 国产精品久久久精品a级小说| 欧美人与性动交α欧美精品济南到 | 激情久久av| 欧美xxxxx少妇| 日韩中文字幕免费在线观看| 番号集在线观看| 欧美一站二站| 亚洲丝袜制服诱惑| 欧美高清在线观看| 97视频久久久| www.com国产| 亚洲伦理电影| 综合国产视频| 日韩美女视频一区| 欧美国产日韩视频| 免费在线观看毛片网站| 国产一区二区波多野结衣 | 国产麻豆视频一区二区| 日韩色在线观看| 蜜桃91精品入口| 91传媒免费观看| 天天操夜夜逼| 久久精品色播| 亚洲人一二三区| 欧美在线性爱视频 | 大肉大捧一进一出好爽视频| 天天射天天干天天| 亚洲网友自拍| 欧美一区二区| 欧美色视频在线| 精品国产中文字幕| 亚洲色图100p| 91麻豆福利| 狠狠色丁香婷婷综合影院| 亚洲精品成人少妇| 国产精品视频一区国模私拍| 国产精品边吃奶边做爽| 免费看片91| 亚洲午夜精品| 日韩毛片高清在线播放| 国产成人一区二| 久久人妻少妇嫩草av蜜桃| 国产毛片av| 久久日本片精品aaaaa国产| 91在线观看污| 欧美福利视频网站| 小日子的在线观看免费第8集| 午夜国产精品理论片久久影院| 亚洲天堂1区| 欧美激情资源网| 日本精品久久中文字幕佐佐木| av在线播放网址| 黄色小视频免费| 精品在线手机视频| 在线一区二区三区| 欧美精品国产精品久久久 | 国产高潮流白浆| 日本视频二区| 极品尤物久久久av免费看| 欧美一区二区在线视频| 日韩国产小视频| 性欧美videos另类hd| caopon在线免费视频| 国产乱一区二区| 欧美大片大片在线播放| av免费观看不卡| av先锋影音少妇| 午夜精品一区二区三区国产| 欧美一区二区日韩一区二区| 成人在线视频一区二区三区| 午夜一区在线观看| 欧美另类中文字幕| 欧美日韩国产精品一区二区不卡中文| 韩国成人av| japanese国产在线观看| 国产极品在线观看| 欧美国产综合一区二区| 亚洲bt天天射| 波多野结衣视频网站| 色av手机在线| 久久久国产精品麻豆| 国产日韩精品一区二区| 欧美色图亚洲天堂| 成人影院免费观看| 国产盗摄精品一区二区三区在线| 97在线观看免费| 99精品中文字幕| av在线播放av| 不卡的av电影在线观看| 国产成人97精品免费看片| 日本黄色小说视频| 日本在线视频观看| 久久久精品tv| 精品免费视频123区| 一区二区不卡视频在线观看| jizzyou欧美16| 激情久久av一区av二区av三区| 欧美日韩视频免费在线观看| 黄色一级a毛片| 91麻豆精品激情在线观看最新 | 久久乐国产精品| 九九久久久久久| 四虎国产精品成人免费4hu| 亚洲欧美日韩在线观看a三区| 欧美精品在线看| 精品无码一区二区三区蜜臀 | 欧美理论在线观看| 成人午夜视频网站| 亚洲一区二区三区xxx视频| 超碰在线97观看| 伊人久久大香线蕉综合影院首页| 欧美在线视频你懂得| 欧美变态另类刺激| 综合国产第二页| 精品久久久久久久久久久下田| 欧美性一级生活| 国产淫片av片久久久久久| 狠狠色噜噜狠狠狠狠8888| 亚洲综合日韩| 国产成人91久久精品| 乱子伦一区二区三区| 成人黄色理论片| 91麻豆精品国产综合久久久久久| mm131亚洲精品| 最色在线观看| 91免费国产在线| 日本精品一区二区三区高清 久久 日本精品一区二区三区不卡无字幕 | 天天av天天操| 亚洲精品男人| 国产区在线观看成人精品| 婷婷久久青草热一区二区| 韩日中文字幕第一页| 激情亚洲成人| 国产成人精品在线观看| 亚洲无码精品在线观看| 久久夜色电影| 亚洲美女动态图120秒| 国产精品久久久久久久av| 欧美xxx黑人xxx水蜜桃| 精品久久久一区二区| 黄色片视频在线免费观看| 久久久久久久久久久久久久久久久久久| 美女视频一区在线观看| 91福利视频导航| 天堂中文在线官网| 欧美三区视频| 国产精品第一第二| 国内老熟妇对白xxxxhd| 精品国产乱码久久久久久果冻传媒| 亚洲性线免费观看视频成熟| 激情五月婷婷小说| 国语精品视频| 亚洲欧美国产一本综合首页| 激情五月激情综合| 美女视频一区| 精品亚洲一区二区| 久草免费在线观看视频| 日韩欧美中文字幕在线视频| 国产一区二区三区四区福利| 久久国产精品波多野结衣| 免费观看在线一区二区三区| 国产午夜一区二区| 欧美成人aaaaⅴ片在线看| 国内露脸中年夫妇交换精品| 久久久精品999| 中文在线观看免费高清| 日韩理论在线| 日韩免费在线播放| 亚洲人在线播放| 日韩精品国产欧美| 精品国产乱码久久久久| 一二三四日本在线| 不卡av免费在线观看| 九九久久九九久久| а√最新版地址在线天堂 | 91人人澡人人爽人人精品| 国产美女性感在线观看懂色av| 丰满岳妇乱一区二区三区| 五月天丁香社区| 欧美亚洲韩国| 亚洲欧洲av一区二区| 国产女同在线观看| 亚洲图片小说区| 久久久久999| 国产乱码一区二区| 影音先锋久久精品| 精品高清视频| 免费全黄无遮挡裸体毛片| 国产精品大尺度| 色呦色呦色精品| 三级中文字幕在线观看| 亚洲视频第一页| 探花国产精品一区二区| 欧美视频久久| 精品国产一区二区三区麻豆小说| eeuss影院95999部| 亚洲乱码一区二区三区在线观看| 日本成人xxx| 日韩视频网站在线观看| 少妇精69xxtheporn| 精品国产18久久久久久| 日本免费新一区视频| 中文字幕一区二区三区有限公司 | 国产精品三级久久久久三级| 中文字幕永久有效| 在线观看特色大片免费视频| 日韩在线免费视频观看| 亚洲国产剧情在线观看| 久久99久久99精品免视看婷婷| 久久最新免费视频| 暖暖日本在线观看| 精品久久久久久久久久久久久久久久久| 日韩经典在线观看| 国产精品a久久久久| 久久精品国产综合精品| 超碰在线一区二区三区| 91久久线看在观草草青青| 国产男女猛烈无遮挡在线喷水| 精品在线手机视频| 国产精品二区在线| 亚洲网站情趣视频| 69堂国产成人免费视频| 亚洲欧美日韩激情| 久久资源在线| 欧美又粗又长又爽做受| 高清电影在线观看免费| 中文字幕国产精品| 亚洲综合在线免费| 久久天天做天天爱综合色| 日本中文字幕有码| 精品三级av在线导航| 成人午夜激情免费视频| 高清一级毛片视频| 欧美剧在线免费观看网站| 亚洲成熟少妇视频在线观看| 久久精品国语| 99精品视频播放| av电影在线网| 亚洲香蕉伊综合在人在线视看| 色婷婷视频在线| 国产欧美日韩综合精品一区二区| 久久久久久久穴| 久久最新网址| 台湾成人av| 欧美人与性动交α欧美精品济南到 | 男人天堂亚洲天堂| 久久99精品视频一区97| 在线观看岛国片| 黑人精品xxx一区一二区| 欧美三级午夜理伦| 久久精品99国产精品| 亚洲激情在线看| 美女视频亚洲色图| 蜜桃视频成人| www在线免费观看视频| 欧美日韩成人在线观看| www.wu福利视频18| 欧美一区二区三区在线电影| 国产 欧美 精品| 亚洲人成影院在线观看| 色网站在线播放| 成人国产免费视频| 国产第一页精品| 噜噜噜躁狠狠躁狠狠精品视频|