c語言課程設(shè)計-圖書管理系統(tǒng)_第1頁
已閱讀1頁,還剩32頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  課 程 設(shè) 計 報 告</p><p>  課程名稱 C語言程序設(shè)計 </p><p>  課題名稱 圖書管理系統(tǒng) </p><p>  專 業(yè) 通信工程 </p><p>  2014年 6月 29 日<

2、;/p><p><b>  目錄</b></p><p>  一、課程設(shè)計目的1</p><p>  二、課程設(shè)計要求1</p><p>  三、設(shè)計題目分析1</p><p><b>  3.1題目簡介1</b></p><p><b>

3、;  3.2設(shè)計要求1</b></p><p>  四、 課程設(shè)計內(nèi)容2</p><p><b>  4.1總體設(shè)計2</b></p><p><b>  4.2詳細設(shè)計3</b></p><p>  4.3調(diào)試與測試12</p><p>  五、 設(shè)計

4、心得與總結(jié)14</p><p><b>  六、建議15</b></p><p><b>  七、源代碼16</b></p><p>  八、計算機與通信學院課程設(shè)計評分表30</p><p><b>  一、課程設(shè)計目的</b></p><p>

5、;  《C語言程序設(shè)計》是通信工程專業(yè)重要的基礎(chǔ)課,通過本課程設(shè)計使學生進一步鞏固課堂所學知識,全面熟悉、掌握C語言程序設(shè)計的基本方法和技巧,進一步提高編寫程序、閱讀分析程序及上機操作、調(diào)試程序的能力。</p><p><b>  二、課程設(shè)計要求</b></p><p><b>  1、課程設(shè)計目 </b></p><p&

6、gt;<b>  2、課程設(shè)計要求 </b></p><p><b>  3、設(shè)計題目分析</b></p><p>  3、1 題目簡介 </p><p>  3、2 設(shè)計要求 </p><p><b>  4、課程設(shè)計內(nèi)容</b></p><p>

7、  4、1 總體設(shè)計:包括系統(tǒng)總體設(shè)計框架和系統(tǒng)功能模塊圖;</p><p>  4、2 詳細設(shè)計:包括主要功能模塊說明(如函數(shù)功能、函數(shù)參數(shù)說明、函數(shù)調(diào)用 關(guān)系描述)和對應的工作流程圖;</p><p>  4、3 調(diào)試與測試:包括程序調(diào)試過程、數(shù)據(jù)測試結(jié)果分析,測試過程中遇到的主要問題及采取的解決措施;</p><p>  5、設(shè)計心得與總結(jié):包括課程設(shè)計過程中

8、的學習體會和收獲,對C語言和本次課程設(shè)計的認識等內(nèi)容。</p><p><b>  6、建議</b></p><p>  7、報告最后附上評分表(見任務(wù)書末頁)</p><p><b>  三、設(shè)計題目分析</b></p><p><b>  3.1題目簡介</b></p

9、><p>  圖書管理系統(tǒng)(能夠?qū)崿F(xiàn)對圖書信息的查詢,如:書名、作者、出版單位、出版時間、分類號、價格等)。</p><p><b>  3.2設(shè)計要求</b></p><p>  圖書信息包括:書名、作者名、分類號、出版單位、出版時間、價格等;系統(tǒng)以菜單方式工作;具有圖書信息錄入,修改、插入、刪除功能;能按書名查詢或作者名查詢;所有信息保存在文件

10、中(每次使用,上次保存的信息能從文件中讀取</p><p><b>  課程設(shè)計內(nèi)容</b></p><p><b>  4.1總體設(shè)計</b></p><p>  系統(tǒng)總體設(shè)計框架和系統(tǒng)功能模塊圖</p><p><b>  4.2詳細設(shè)計</b></p>&l

11、t;p>  包括主要功能模塊說明(如函數(shù)功能、函數(shù)參數(shù)說明、函數(shù)調(diào)用關(guān)系描述)和相應的工作流程圖;</p><p>  1、主函數(shù):main();</p><p>  在主函數(shù)中執(zhí)行菜單函數(shù)menu();,然后當菜單函數(shù)執(zhí)行完后會執(zhí)行printf(“退出系統(tǒng)!’);語句在顯示屏顯示 退出系統(tǒng)!然后程序結(jié)束。</p><p>  主菜單函數(shù):menu();<

12、;/p><p>  通過主菜單顯示系統(tǒng)的功能,并通過主菜單進入各功能函數(shù)。</p><p>  3、圖書信息錄入函數(shù):input_data();</p><p>  本函數(shù)的功能:錄入圖書信息并保存在</p><p><b>  文件中。</b></p><p><b>  N</b&

13、gt;</p><p><b>  Y</b></p><p><b>  N</b></p><p><b>  Y</b></p><p><b>  Y</b></p><p>  4、圖書信息修改函數(shù):uodate();&l

14、t;/p><p>  本函數(shù)的功能是:修改圖書信息并將修改后的信息保存在文件中。</p><p><b>  N</b></p><p><b>  N</b></p><p><b>  Y</b></p><p><b>  N</b&g

15、t;</p><p><b>  Y</b></p><p><b>  Y</b></p><p><b>  N</b></p><p>  5、圖書信息插入函數(shù):insert_data();</p><p>  本函數(shù)的功能是:實現(xiàn)對圖書信息的補錄

16、。</p><p><b>  Y</b></p><p><b>  N</b></p><p>  6、圖書信息刪除函數(shù):delete();</p><p>  本函數(shù)的功能是:將已寫入文件的圖書信息進行刪除。</p><p><b>  N</b>

17、</p><p><b>  Y</b></p><p><b>  N</b></p><p><b>  YN</b></p><p><b>  Y</b></p><p>  7、圖書信息查找菜單:find_menu();

18、</p><p>  本函數(shù)的功能是:顯示一個菜單供用戶選擇是按書名查找信息還是按作者名查找圖書信息。</p><p>  8、按書名查找函數(shù):find_title();</p><p>  本函數(shù)的功能是能通過輸入圖書名查詢相關(guān)圖</p><p><b>  書的信息。</b></p><p>

19、<b>  N</b></p><p><b>  Y</b></p><p><b>  N</b></p><p><b>  YN</b></p><p>  Y

20、 Y</p><p><b>  Y</b></p><p><b>  N</b></p><p>  9、按作者名查找圖書信息find_author_name():</p><p>  本函數(shù)的功能是:通過輸入作者名來差查詢圖書信息。</p><p>

21、<b>  N</b></p><p><b>  Y</b></p><p><b>  N</b></p><p><b>  N</b></p><p><b>  Y</b></p><p><b

22、>  Y</b></p><p><b>  Y</b></p><p><b>  N</b></p><p><b>  4.3調(diào)試與測試</b></p><p>  包括程序調(diào)試過程、數(shù)據(jù)測試結(jié)果分析,測試過程中遇到的主要問題及采取的解決措施;</

23、p><p><b>  調(diào)試與測試:</b></p><p>  在測試程序中遇到的問題1:當關(guān)閉程序后再運行程序并且錄入新的信息,然后去查詢以前的信息時,發(fā)現(xiàn)以前的信息不存在了。</p><p>  原因:在錄入函數(shù)中數(shù)據(jù)寫入文件的方式是“wb”,”wb”將數(shù)據(jù)寫入文件的特點是從文件的開頭開始寫的,當下一次運行程序并錄入新的數(shù)據(jù)時會將原有的信息覆

24、蓋。</p><p>  解決方法:在錄入函數(shù)中將數(shù)據(jù)寫入文件的方式改”a+”,因為”a+”的特點是從文件的末尾開始寫入新的數(shù)據(jù)的,不會覆蓋以前的數(shù)據(jù)。</p><p>  問題2:實現(xiàn)刪除功能時是將要刪除的信息用空字符串覆蓋掉,實質(zhì)上計算機為原有數(shù)據(jù)分配的內(nèi)存空間還存在,這會導致內(nèi)存的浪費。</p><p>  解決方法:暫且還沒有找到解決的方法。</p&g

25、t;<p><b>  設(shè)計心得與總結(jié)</b></p><p><b>  心得與總結(jié)</b></p><p>  進入大學已有一年了,這次的c語言課程設(shè)計第一次讓我在大學里體驗到了疲勞與充實和為了做好一件事的那種激情與奮斗!</p><p>  在這學期剛開始接觸c語言的時候感覺這門課程很難學,后來還是堅持

26、下來去認真學并堅持經(jīng)常敲代碼。因為這幾個月堅持學c使我有了一定的自學能力,我也體會到了不為考試而學習的那種輕松、愉快的感覺。</p><p>  在本次課程設(shè)計中我學到了很多平時沒有學到的知識并加強和鞏固了我的c語言基礎(chǔ)。為了能夠獨立完成課程設(shè)計,我在實習周的前的半個月時間重點學習了文件和結(jié)構(gòu)體的有關(guān)內(nèi)容。經(jīng)歷了這次課程設(shè)計,我對文件方面的內(nèi)容有了進一步的了解。在做這次課程設(shè)計的時候,我發(fā)現(xiàn)我的基礎(chǔ)知識掌握的還不

27、夠牢固,平時所敲得代碼量還遠遠不夠。這次的課設(shè)讓我知道了該如何學習其它的編程語言,在平時的學習中要成多問、多看、多敲、多想的習慣。</p><p>  在本次課設(shè)中我遇到了一些問題并請教了老師和學長及同學,很感謝他們對我的幫助。通過和羅老師以及張孝勇學長的聊天,我知道了在寫程序時要有一個良好的邏輯思維,要想清楚如何去解決一個問題并理清思路,在當自己的程序完成之后要仔細的去找程序中存在的不足并完善,要清楚自己程序中

28、每一個語句的作用。</p><p>  在本次課設(shè)中當我完成自己的答辯后,我積極去幫其他同學解決問題。在幫他們修改程序雖然花去了我很多時間和精力,同時我也收獲了很多。幫助別人真的是一件很快樂的事情,并且在幫助人的過程中也會有意想不到的收獲。在幫同學看程序時,我發(fā)現(xiàn)很多代碼寫的很混亂,給人的第一感覺就是不想看這個程序,有些代碼格式也不是很規(guī)范,讓人看著很不舒服。我發(fā)現(xiàn)學會去敲非常規(guī)范的代碼很重要;在寫程序時注釋是非

29、常重要的,這也是為了自己和別人能快速的去讀懂自己的程序;學習編程語言最重要的一個基礎(chǔ)就是要學會如何看懂一個程序,在這方面我還欠佳。</p><p>  經(jīng)過幾個月的c語言學習和這次的c語言課程設(shè)計,我真正體會到了學習的快樂,并且我找到了我以后的發(fā)展方向。</p><p><b>  六、建議</b></p><p>  1、運用鏈表和動態(tài)內(nèi)存的

30、知識解決刪除功能的缺陷使程序得到進一步的完善。</p><p>  2、隨著以后知識的積累,要逐步增加此圖書管理系統(tǒng)的功能。</p><p>  3、要一一找出此系統(tǒng)存在的缺陷,并試著找到好的方法來彌補缺陷。</p><p>  4、學習編程語言的過程中要多敲代碼。</p><p>  5、要將代碼書寫規(guī)范。</p><p

31、><b>  6、學會看懂程序。</b></p><p>  7、在寫程序的過程中要多用注釋。</p><p>  8、在寫程序是思路要清晰,要理解每一個語句,每一個函數(shù)的功能和作用。</p><p>  9、要多看一些牛人寫的代碼。</p><p>  10、在學習的過程要養(yǎng)成多問,多想的習慣。</p>

32、;<p>  11、要把英語這個工具學好。</p><p><b>  七、源代碼</b></p><p>  # include <stdio.h></p><p>  # include <stdlib.h></p><p>  # include <string.h>

33、;</p><p>  struct book</p><p><b>  {</b></p><p>  char title[20]; /*書名*/</p><p>  char author_name[20]; /*作者名*/<

34、;/p><p>  char class_num[20]; /*分類號*/</p><p>  char publisher[20]; /*出版單位*/</p><p>  char publication_data[20]; /*出版時間*/</p>

35、<p>  char price[10]; /*價格*/</p><p><b>  }BOOK;</b></p><p>  FILE * fp;</p><p>  void menu();/*列出菜單*/</p><p>  void input_data

36、();/*錄入數(shù)據(jù)*/</p><p>  void update();/*數(shù)據(jù)的修改*/</p><p>  void insert_data();/*數(shù)據(jù)的插入*/</p><p>  void delete();/*數(shù)據(jù)的刪除*/</p><p>  void find_menu();/*圖書信息查找菜單*/</p>&l

37、t;p>  void find_title();/*圖書信息查找*/</p><p>  void find_author_name();/*圖書信息查找*/</p><p>  void input_data()</p><p>  /*用來實現(xiàn)對圖書信息的錄入*/</p><p><b>  {</b><

38、/p><p>  int key = 1;</p><p>  printf("\n*********************圖書信息錄入********************\n");</p><p>  if ((fp = fopen("F:\\Books_Management_Systen_BMS.dat", "

39、a+")) == NULL)</p><p><b>  {</b></p><p>  printf("Can not open file!\n");</p><p><b>  exit(0);</b></p><p><b>  }</b>&

40、lt;/p><p>  while (key == 1)</p><p><b>  {</b></p><p>  printf("請輸入信息;\n");</p><p>  printf("書名:");</p><p>  scanf("%s&qu

41、ot;, BOOK.title);</p><p>  fflush(stdin); /*清空緩沖區(qū)*/</p><p>  printf("作者名:");</p><p>  scanf("%s", BOOK.author_name);</p><p>  f

42、flush(stdin);</p><p>  printf("圖書分類號:");</p><p>  scanf("%s",BOOK.class_num);</p><p>  fflush(stdin);</p><p>  printf("圖書出版單位:");</p>

43、;<p>  scanf("%s", BOOK.publisher);</p><p>  fflush(stdin);</p><p>  printf("圖書出版時間:");</p><p>  scanf("%s", BOOK.publication_data);</p>

44、<p>  fflush(stdin);</p><p>  printf("圖書價格:");</p><p>  scanf("%s", BOOK.price);</p><p>  fwrite(&BOOK, sizeof(struct book), 1, fp);</p><p>

45、;  printf("錄入成功!\n");</p><p>  printf("是否繼續(xù)?是的話請按1,否的話請按0退出:");</p><p>  scanf("%d", &key);</p><p><b>  }</b></p><p>  fcl

46、ose(fp);</p><p>  system("pause");</p><p>  /*就是在命令行上輸出一行類似于“Press any key to exit”的字,*/</p><p>  /*等待用戶按一個鍵,然后返回。*/</p><p><b>  return;</b&g

47、t;</p><p><b>  }</b></p><p>  void update() /*用來實現(xiàn)對圖書信息的修改*/</p><p><b>  {</b></p><p>  int flag = 0;</p>&l

48、t;p>  int key = 1;</p><p>  char title[20];</p><p>  char new_title[20];</p><p>  char author_name[20];</p><p>  char class_num[20];</p><p>  char publi

49、sher[20];</p><p>  char publication_data[20];</p><p>  char price[10];</p><p>  while (key == 1)</p><p><b>  {</b></p><p>  printf("請輸入您要修

50、改信息的圖書的圖書名:");</p><p>  scanf("%s", title);</p><p>  fp = fopen("F:\\Books_Management_Systen_BMS.dat", "rb+");</p><p>  while ( (fread(&BOOK,

51、sizeof(struct book), 1, fp)) == 1)</p><p>  /* fread函數(shù)的類型為int型,如果函數(shù)執(zhí)行成功,*/</p><p>  /*則函數(shù)的返回值為形參count的值1,即輸出項的個數(shù)*/</p><p><b>  {</b></p><p>  if (strcmp(BOO

52、K.title, title) == 0)</p><p><b>  {</b></p><p>  flag = 1; /*標記*/</p><p><b>  break;</b></p><p><b>  }</b><

53、/p><p><b>  }</b></p><p>  if(flag==1)</p><p><b>  {</b></p><p>  printf("書名:");</p><p>  printf("%s\n", BOOK.titl

54、e);</p><p>  printf("作者:");</p><p>  printf("%s\n", BOOK.author_name);</p><p>  printf("圖書分類號:");</p><p>  printf("%s\n", BOOK.c

55、lass_num);</p><p>  printf("圖書出版單位:");</p><p>  printf("%s\n", BOOK.publisher);</p><p>  printf("圖書出版時間:");</p><p>  printf("%s\n&quo

56、t;, BOOK.publication_data);</p><p>  printf("圖書價格:");</p><p>  printf("%s\n", BOOK.price);</p><p>  printf("請輸入新的圖書信息:\n");</p><p>  print

57、f("書名:");</p><p>  scanf("%s", new_title);</p><p>  fflush(stdin);</p><p>  printf("\n作者:");</p><p>  scanf("%s", author_name);&

58、lt;/p><p>  fflush(stdin);</p><p>  printf("\n圖書分類號:");</p><p>  scanf("%s", class_num);</p><p>  fflush(stdin);</p><p>  printf("\n圖

59、書出版單位:");</p><p>  scanf("%s", publisher);</p><p>  fflush(stdin);</p><p>  printf("\n圖書出版時間:");</p><p>  scanf("%s", publication_dat

60、a);</p><p>  fflush(stdin);</p><p>  printf("\n圖書價格:");</p><p>  scanf("%s", price);</p><p>  fflush(stdin);</p><p>  fseek(fp, -sizeof

61、(struct book), 1);</p><p>  /* 將文件位置標記向后退一個struct book鎖占的長度*/</p><p>  strcpy(BOOK.title, new_title);</p><p>  strcpy(BOOK.author_name, author_name);</p><p>  strcpy(BO

62、OK.class_num, class_num);</p><p>  strcpy(BOOK.publisher, publisher);</p><p>  strcpy(BOOK.publication_data, publication_data);</p><p>  strcpy(BOOK.price, price);</p><p&

63、gt;  fwrite(&BOOK, sizeof(struct book), 1, fp);</p><p>  printf("修改成功!\n");</p><p>  fclose(fp);</p><p><b>  }</b></p><p><b>  else</

64、b></p><p><b>  {</b></p><p>  printf("沒有此圖書的信息!\n");</p><p><b>  }</b></p><p>  printf("請確認您是否繼續(xù),是的話請輸入1,否的話請輸入0;");</

65、p><p>  scanf("%d", &key);</p><p><b>  }</b></p><p>  system("pause");</p><p><b>  return;</b></p><p><b>

66、;  }</b></p><p>  void insert_data() /*插入圖書信息*/</p><p><b>  {</b></p><p>  int key = 1;</p><p>  fp = fopen("F:

67、\\Books_Management_Systen_BMS.dat", "a+");</p><p>  while (key == 1)</p><p><b>  {</b></p><p>  printf("請輸入圖書信息:\n");</p><p>  prin

68、tf("書名:");</p><p>  scanf("%s", BOOK.title);</p><p>  printf("作者:");</p><p>  scanf("%s", BOOK.author_name);</p><p>  printf(&qu

69、ot;圖書分類號:");</p><p>  scanf("%s", BOOK.class_num);</p><p>  printf("圖書出版社:");</p><p>  scanf("%s", BOOK.publisher);</p><p>  printf(&

70、quot;圖書出版時間:");</p><p>  scanf("%s", BOOK.publication_data);</p><p>  printf("圖書價格:");</p><p>  scanf("%s", BOOK.price);</p><p>  fwr

71、ite(&BOOK, sizeof(struct book), 1, fp);</p><p>  printf("插入成功!\n");</p><p>  printf("請確認是否繼續(xù),是的話請按1,否的話請按0退出:");</p><p>  scanf("%d", &key);<

72、;/p><p><b>  }</b></p><p>  fclose(fp);</p><p>  system("pause");</p><p><b>  return;</b></p><p><b>  }</b></

73、p><p>  void delete() /*刪除圖書信息*/</p><p><b>  {</b></p><p>  int key = 1;</p><p>  int flag = 0;</p><p>  char title[20];<

74、/p><p>  while (key == 1)</p><p><b>  {</b></p><p>  printf("請輸入您要刪除圖書信息的圖書名:");</p><p>  scanf("%s", title);</p><p>  fp = fo

75、pen("F:\\Books_Management_Systen_BMS.dat", "rb+");</p><p>  while ( (fread(&BOOK, sizeof(struct book), 1, fp)) == 1)</p><p>  /* fread函數(shù)的類型為int型,如果函數(shù)執(zhí)行成功,*/</p>&l

76、t;p>  /*則函數(shù)的返回值為形參count的值1,即輸出項的個數(shù)*/</p><p><b>  {</b></p><p>  if (strcmp(title, BOOK.title) == 0)</p><p><b>  {</b></p><p><b>  flag

77、= 1;</b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if (flag == 1)</p><p><b>  {&l

78、t;/b></p><p>  fseek(fp, -sizeof(struct book), 1);</p><p>  /* 將文件位置標記向后退一個struct book鎖占的長度*/</p><p>  strcpy(BOOK.title, "");</p><p>  strcpy(BOOK.author_

79、name, "");</p><p>  strcpy(BOOK.class_num, "");</p><p>  strcpy(BOOK.publisher, "");</p><p>  strcpy(BOOK.publication_data, "");</p>&

80、lt;p>  strcpy(BOOK.price, "");</p><p>  fwrite(&BOOK, sizeof(struct book), 1, fp);</p><p>  printf("刪除成功!\n");</p><p><b>  }</b></p>&l

81、t;p><b>  else</b></p><p>  printf("沒有此圖書的信息!\n");</p><p>  fclose(fp);</p><p>  printf("請問是否繼續(xù),是的話輸入1,否的話輸入0:");</p><p>  scanf("

82、;%d", &key);</p><p><b>  }</b></p><p>  system("pause");</p><p><b>  return;</b></p><p><b>  }</b></p><

83、;p>  void find_title() /*根據(jù)書名查找圖書信息*/</p><p><b>  {</b></p><p>  int flag = 0;</p><p>  int key = 1;</p><p>  char title[20];</p

84、><p>  while (key == 1)</p><p><b>  {</b></p><p>  fp = fopen("F:\\Books_Management_Systen_BMS.dat", "rb");</p><p>  printf("書名:"

85、);</p><p>  scanf("%s", title);</p><p>  while ( (fread(&BOOK, sizeof(struct book), 1, fp)) == 1)</p><p>  /* fread函數(shù)的類型為int型,如果函數(shù)執(zhí)行成功,*/</p><p>  /*則函數(shù)的返

86、回值為形參count的值1,即輸出項的個數(shù)*/</p><p><b>  {</b></p><p>  if (strcmp(title, BOOK.title) == 0)</p><p><b>  {</b></p><p><b>  flag = 1;</b>&l

87、t;/p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if (flag == 1)</p><p><b>  {</b></p&g

88、t;<p>  printf("書名:");</p><p>  printf("%s\n", BOOK.title);</p><p>  printf("作者:");</p><p>  printf("%s\n", BOOK.author_name);</p&g

89、t;<p>  printf("圖書分類號:");</p><p>  printf("%s\n", BOOK.class_num);</p><p>  printf("圖書出版單位:");</p><p>  printf("%s\n", BOOK.publisher)

90、;</p><p>  printf("圖書出版時間:");</p><p>  printf("%s\n", BOOK.publication_data);</p><p>  printf("圖書價格:");</p><p>  printf("%s\n",

91、BOOK.price);</p><p><b>  }</b></p><p>  else if (flag == 0)</p><p><b>  {</b></p><p>  printf("沒有此圖書的信息!\n");</p><p><

92、b>  }</b></p><p>  fclose(fp);</p><p>  printf("請問是否繼續(xù),是的話請輸入1,否的話輸入0:");</p><p>  scanf("%d", &key);</p><p><b>  }</b><

93、/p><p>  system("pause");</p><p><b>  return;</b></p><p><b>  }</b></p><p>  void find_author_name() /*根據(jù)作者名查找圖書信息*/<

94、;/p><p><b>  {</b></p><p>  int flag = 0;</p><p>  int key = 1;</p><p>  char author_name[20];</p><p>  while (key == 1)</p><p><b

95、>  {</b></p><p>  fp = fopen("F:\\Books_Management_Systen_BMS.dat", "rb");</p><p>  printf("作者:");</p><p>  scanf("%s", author_name)

96、;</p><p>  while ( (fread(&BOOK, sizeof(struct book), 1, fp)) == 1)</p><p>  /* fread函數(shù)的類型為int型,如果函數(shù)執(zhí)行成功,*/</p><p>  /*則函數(shù)的返回值為形參count的值1,即輸出項的個數(shù)*/</p><p><b>

97、  {</b></p><p>  if (strcmp( author_name, BOOK.author_name) == 0)</p><p><b>  {</b></p><p><b>  flag = 1;</b></p><p><b>  break;<

98、/b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if (flag == 1)</p><p><b>  {</b></p><p>  printf("書名:");&

99、lt;/p><p>  printf("%s\n", BOOK.title);</p><p>  printf("作者:");</p><p>  printf("%s\n", BOOK.author_name);</p><p>  printf("圖書分類號:"

100、);</p><p>  printf("%s\n", BOOK.class_num);</p><p>  printf("圖書出版單位:");</p><p>  printf("%s\n", BOOK.publisher);</p><p>  printf("圖書出

101、版時間:");</p><p>  printf("%s\n", BOOK.publication_data);</p><p>  printf("圖書價格:strcmp(title, BOOK.title) == 0");</p><p>  printf("%s\n", BOOK.price

102、);</p><p><b>  }</b></p><p>  else if (flag == 0)</p><p><b>  {</b></p><p>  printf("沒有此圖書的信息!\n");</p><p><b>  }&l

103、t;/b></p><p>  fclose(fp);</p><p>  printf("請問是否繼續(xù),是的話請輸入1,否的話輸入0:");</p><p>  scanf("%d", &key);</p><p><b>  }</b></p>&l

104、t;p>  system("pause");</p><p><b>  return;</b></p><p><b>  }</b></p><p>  void find_menu() /*圖書查詢信息菜單*/</p><p&

105、gt;<b>  {</b></p><p><b>  char key;</b></p><p>  while (key != '3')</p><p><b>  {</b></p><p>  system("cls");</

106、p><p>  printf("\n");fflush(stdin);</p><p>  printf("\n");</p><p>  printf("|*******************圖書信息查詢**********************\n\n");</p><p>  

107、printf("|1.按書名查找:\n");</p><p>  printf("|2.按作者名查找:\n");</p><p>  printf("|3.退出圖書信息查詢:\n");</p><p>  printf("|\n");</p><p>  prin

108、tf("|*********************謝謝使用************************\n\n");</p><p>  key = getchar();</p><p>  switch (key)</p><p><b>  {</b></p><p><b>  

109、case '1':</b></p><p>  find_title();</p><p><b>  break;</b></p><p><b>  case '2':</b></p><p>  find_author_name();</p&g

110、t;<p><b>  break;</b></p><p><b>  case '3':</b></p><p>  system("pause");</p><p><b>  break;</b></p><p><

111、;b>  default:</b></p><p>  printf("enter data error!\n");</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b>&l

112、t;/p><p>  void menu() /*主菜單*/</p><p><b>  {</b></p><p><b>  char key;</b></p><p>  while (key != '0')</p><p

113、><b>  {</b></p><p>  system("cls");</p><p>  printf("\n");</p><p>  printf("\n");</p><p>  printf("|****************歡迎

114、使用圖書管理系統(tǒng)*****************\n\n");</p><p>  printf("|1.圖書信息錄入:\n");</p><p>  printf("|2.圖書信息修改:\n");</p><p>  printf("|3.圖書信息插入;\n");</p><

115、;p>  printf("|4.圖書信息刪除:\n");</p><p>  printf("|5.圖書查找:\n");</p><p>  printf("|0.退出系統(tǒng):\n");</p><p>  printf("|\n");</p><p>  p

116、rintf("|*******感謝對湖工計算機軟件開發(fā)實驗室的支持**********\n\n");</p><p>  key = getchar();</p><p>  switch (key)</p><p><b>  {</b></p><p><b>  case '1

117、':</b></p><p>  input_data();</p><p><b>  break;</b></p><p><b>  case '2':</b></p><p><b>  update();</b></p>

118、<p><b>  break;</b></p><p><b>  case '3':</b></p><p>  insert_data();</p><p><b>  break;</b></p><p><b>  case &

119、#39;4':</b></p><p><b>  delete();</b></p><p><b>  break;</b></p><p><b>  case '5':</b></p><p>  find_menu();</p

120、><p><b>  break;</b></p><p><b>  case '0':</b></p><p><b>  break;</b></p><p><b>  default:</b></p><p>

121、  printf("enter data error!\n");</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  int main()</p><

122、p><b>  {</b></p><p><b>  menu();</b></p><p>  printf("退出系統(tǒng)\n");</p><p><b>  return 0;</b></p><p><b>  }</b>

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論