2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩28頁未讀, 繼續(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è) 網(wǎng)絡(luò)工程 </p><p>  班 級 100

2、2班 </p><p>  學 號 </p><p>  姓 名 </p><p>  課 程 設(shè) 計 任 務(wù) 書</p><p>  一、設(shè)計內(nèi)容與設(shè)計要求</p><p>  1.設(shè)計內(nèi)容:對一個有N

3、本圖書的圖書館,通過該系統(tǒng)實現(xiàn)對該班級學生的基本信息進行錄入、顯示、修改、刪除、保存等操作的管理。</p><p> ?。?)、本系統(tǒng)采用一個包含N個數(shù)據(jù)的結(jié)構(gòu)體數(shù)組,每個數(shù)據(jù)的結(jié)構(gòu)應(yīng)當包括:書號、書名、作者、出版社、出版日期、單價、是否借出等。</p><p> ?。?)、本系統(tǒng)顯示這樣的菜單:</p><p><b>  圖書基本信息錄入</b&

4、gt;</p><p><b>  圖書基本信息顯示</b></p><p><b>  圖書基本信息刪除</b></p><p><b>  圖書基本信息修改</b></p><p>  圖書基本信息查詢(按書號查詢、書名等)</p><p><

5、b>  g. 退出系統(tǒng)</b></p><p>  (3)、執(zhí)行一個具體的功能之后,程序?qū)⒅匦嘛@示菜單。</p><p>  2.設(shè)計要求:掌握結(jié)構(gòu)化程序設(shè)計的主體思想,以自頂向下逐步求精的方法編制程序解決一些實際的問題,為將來編寫軟件積累一些典型的案例處理經(jīng)驗。</p><p>  設(shè)計正確,方案合理。</p><p>

6、;  界面友好,使用方便。</p><p>  程序精煉,結(jié)構(gòu)清晰。</p><p>  設(shè)計報告5000字以上,含程序設(shè)計說明,用戶使用說明,源程序清單及程序框圖。</p><p><b>  上機演示。</b></p><p>  按學號順序選課題號,并在規(guī)定的時間內(nèi)獨自完成相關(guān)課題的C源程序編寫、調(diào)整和運行。源程序

7、及編譯生成各文件均保存在軟盤中;</p><p>  按本任務(wù)書的要求,按附錄的要求編寫《課程設(shè)計報告》(Word文檔格式)。并用A4的復(fù)印紙打印并裝訂; </p><p><b>  二、進度安排</b></p><p>  第 十八 周 星期1 8時00分——11時30分</p><p>  星期2 14時

8、00分——18時15分</p><p>  星期3 8時00分——11時30分</p><p>  星期4 8時00分——11時30分 </p><p>  第 十九 周 星期1 8時00分——11時30分</p><p>  星期2 14時00分——18時15分</p><p><b&

9、gt;  三、課程設(shè)計報告</b></p><p><b>  1.程序設(shè)計準備</b></p><p>  做系統(tǒng)前,首先,自己詳細看了《C程序設(shè)計》(教科書),基本自學會了文件的相關(guān)內(nèi)容,理解了相關(guān)函數(shù)的用法和作用;另,上網(wǎng)查詢了很多相關(guān)資料,還有找了很多相關(guān)的系統(tǒng),都詳細的看了一遍,加深了對C的理解以及對文件的相關(guān)內(nèi)容進一步理解。學習了C語言的內(nèi)容,

10、圖書信息管理系統(tǒng)有助于C語言學習的進一步鞏固,在本系統(tǒng)可以增強對指針、文件、函數(shù)、結(jié)構(gòu)體變量等基本知識的進一步理解。另外圖書信息管理系統(tǒng)也是學校常用的基本系統(tǒng)之一,它有助于學校對圖書館書籍的基本管理。</p><p><b>  2.程序設(shè)計說明</b></p><p>  根據(jù)題目要求,應(yīng)當把圖書信息用結(jié)構(gòu)體形式輸入,再定義一個全局變量和文件指針進行整個程序的運行,

11、然后把圖書信息送到文件中去,所以應(yīng)該提供下個結(jié)構(gòu)體和文件的輸入等操作:在程序中需要實現(xiàn)圖書信息錄入,瀏覽,查詢,刪除和修改等功能的操作,所以需要建立相應(yīng)的模塊來實現(xiàn):另外還需提供選擇菜單實現(xiàn)功能,在運行時達到所要求的目的。</p><p>  3.程序的主要功能 </p><p>  圖書管理在生活中運用非常廣泛,因此需要用許多的程序來對它們進行管理。圖書借閱管理系統(tǒng)是對圖書信息的基本管理

12、,它包括:圖書信息的錄入、圖書信息的顯示、圖書信息的刪除、圖書信息的修改、圖書信息的查詢。</p><p>  通過編譯一個C語言函數(shù),其中包含一個主函數(shù),多個子函數(shù),主函數(shù)調(diào)用其余的子函數(shù)實現(xiàn)人們能夠簡易、快捷的了解并找到自己所學要的信息的功能。</p><p>  1、圖書基本信息錄入:對新到圖書館的圖書的信息(編號、書名、出版社、作者、價格)進行錄入。</p><

13、p>  2、圖書基本信息顯示:顯示已被錄入圖書的所有信息。</p><p>  3、圖書基本信息刪除:通過輸入書名,判斷此圖書是否存在,若存在, 則刪除該圖書所有信息,若不存在則提示用戶重新輸入圖書書名。</p><p>  4、圖書基本信息修改:通過輸入書名,判斷此圖書是否存在,若不存在則提示用戶重新輸入圖書書名,若存在,則可對圖書各項信息進行修改。 </p><

14、;p>  5、圖書基本信息查詢:將所有圖書信息包括編號、書名、出版社、作者、價格等顯示在屏幕上。</p><p>  6、退出系統(tǒng):即退出圖書借閱管理系統(tǒng)。</p><p>  使用模塊化編程的方法每項功能有一個或多個函數(shù)組合來完成,其中菜單選項模塊對應(yīng)如下:</p><p>  圖書基本信息錄入==> void insert() </p>

15、<p>  圖書基本信息顯示==> void print()</p><p>  圖書基本信息刪除==> void del() </p><p>  圖書基本信息修改==> void modify() </p><p>  圖書基本信息查詢==> void find()</p><p

16、>  這份代碼中各個變量的定義如下:</p><p>  num 圖書編號 </p><p>  name 書名</p><p>  author 作者</p><p>  pub 出版社</p><p>  where 出版日期</p><

17、p>  count 單價</p><p><b>  四.功能模塊的劃分</b></p><p><b>  1.主函數(shù)模塊</b></p><p>  根據(jù)圖書館信息管理系統(tǒng)的要求,可設(shè)計一個主函數(shù),及定義多個用戶自定義函數(shù)。在主函數(shù)中定義全局變量,即是在函數(shù)外部定義的變量,其不屬于某一個函數(shù),而屬于一個源

18、程序文件,在整個程序內(nèi)可以多次被引用。</p><p>  2.圖書基本信息顯示模塊</p><p>  當用戶選擇圖書基本信息顯示時,程序會將所有圖書信息列出。</p><p>  3.圖書基本信息輸入模塊</p><p>  在程序開始運行,創(chuàng)建文件庫時,調(diào)動此模塊,提示用戶輸入新的圖書編號(編號為0時結(jié)束輸入),然后繼續(xù)輸入圖書書名,作

19、者,出版社,出版日期,單價等信息。結(jié)束輸入時提示用戶圖書輸入完成</p><p>  4.圖書基本信息查詢模塊</p><p>  用戶先選擇圖書查詢方式(按書名查找或按書號查找)輸入圖書書名或書號后,查找出該圖書是否存在,若存在,則顯示該圖書信息,若不存在則提示用戶無此圖書信息。</p><p>  5.圖書基本信息刪除模塊</p><p>

20、;  用戶輸入所要刪除的圖書書名,先查找該圖書是否存在,若存在,則刪除該圖書所有信息,若不存在則提示無此圖書信息。</p><p>  6.圖書基本信息錄入模塊</p><p>  首先輸入圖書錄入的編號(不為0)判斷是否有重復(fù)的編號,若有,則提示用戶該書已存在,若無則繼續(xù)錄入書名、作者、出版社、單價。 </p><p>  7.圖書基本信息修改模塊</p&g

21、t;<p>  用戶輸入要修改的書名,判斷該書是否存在,若不存在,則提示用戶無此圖書信息;若存在,則提示用戶選擇修改項目,然后提示用戶圖書信息修改完成。</p><p><b>  8.讀文件模塊</b></p><p>  在運行該程序時,程序會自動檢測是否存在圖書信息,若存在,則會顯示圖書信息,若不存在,則會提示用戶創(chuàng)建文件庫,錄入圖書信息。<

22、/p><p><b>  9.文件保存模塊</b></p><p>  當用戶對圖書信息有錄入,修改,刪除等操作時,程序會自動保存操作和新的圖書信息。</p><p><b>  五.主要功能的實現(xiàn)</b></p><p>  程序運行流程:但每個模塊運行完即會回到主函數(shù),然后選擇其他或退出。</

23、p><p><b>  六.程序調(diào)試</b></p><p>  1.第一次運行程序時,庫文件不存在圖書信息,于是錄入圖書信息。</p><p><b>  2.主界面。</b></p><p>  在主界面選擇1,開始錄入新的圖書信息。</p><p>  在主界面選擇2,查詢

24、圖書信息,按1或2分別選擇按書名或書號查詢。(以《英語》為例)</p><p>  選擇2,按書號查找,輸入書號:1,即可查詢圖書《英語》所有信息。</p><p>  選擇1,按書名查找,輸入書名:英語,即可獲得圖書《英語》所有信息。</p><p>  5.在主界面選擇3,對圖書資料進行刪除(以《數(shù)學》為例),在后續(xù)圖書信息顯示時無《數(shù)學》圖書信息。</p

25、><p>  6.在主界面選擇4,對圖書進行修改(以《英語》為例,修改圖書作者,將作者更換為王五),在后續(xù)圖書基本信息顯示時,作者不將是張三,而是王五。</p><p>  7.在主界面選擇5,圖書基本信息顯示,此時圖書信息經(jīng)過刪除和修改,和初始信息不同。</p><p><b>  七.總結(jié)</b></p><p>  通

26、過為期一周的課程設(shè)計,對《C語言》這門課程有了更深一步的了解。它是計算機程序設(shè)計的重要理論技術(shù)基礎(chǔ),在我們網(wǎng)絡(luò)工程專業(yè)的學習中占據(jù)著十分重要的地位。自己C語言編程的能力有了提高,特別是在文件、指針、數(shù)組、函數(shù)和結(jié)構(gòu)體方面有了很大提高,另外還學習了課本沒有講到的知識,學會了使用模塊化編程的簡單方法,另外在對話框的編程要求美觀、方面也有了體會。</p><p>  循環(huán)是C語言的重要方法,也是本程序的靈魂,它在本程序

27、中既有“穿針引線”的作用,也起到了對數(shù)據(jù)進行分析、存貯、讀取等重要的作用,本程序在使用循環(huán)過程中對循環(huán)進行了多方法的應(yīng)用也是一個“亮點”,它使程序變得結(jié)構(gòu)合理,通俗易懂,也降低了程序的難度。以后要對這種方法進行深刻的體會。</p><p>  數(shù)組在程序中有著很重要的作用,對數(shù)據(jù)的貯存、輸入、讀取起著很重要的作用,本程序幾乎所有數(shù)據(jù)都以數(shù)組進行輸入、貯存、讀取方便了對數(shù)據(jù)的處理和輸入,數(shù)組的的使用在本程序中有很大

28、的好處。</p><p>  函數(shù)是實現(xiàn)模塊化編程的基礎(chǔ),它使程序變得方面易懂,對修改起了很大作用,降低了編程的難度,一個函數(shù)就是一個功能,它使各個功能之間有了一定的獨立性,但也有了一定的聯(lián)系性,一個函數(shù)的錯誤,不會導致整個程序的失?。ㄖ骱瘮?shù)除外),對函數(shù)的良好應(yīng)用時在本程序中又以深刻的體會,有了很大提高。</p><p>  結(jié)構(gòu)體的使用,為本程序提供了很大方便,也提高了程序的可讀性,結(jié)

29、構(gòu)數(shù)組方便了對數(shù)據(jù)的管理。</p><p>  這個程序的結(jié)構(gòu)大體是從網(wǎng)絡(luò)上借鑒的,但是大部分功能模塊與任務(wù)要求不同,只能自己修改,最后終于調(diào)試通過,同時也使我們知道,要學好這門課程,僅學習書本上的知識是不夠的,還要有較強的實踐能力。因為我們學習知識就是為了實踐。而只有多實踐,多編寫程序,才能更好的理解與掌握書本上的東西。同時提高了自己對編程的興趣,使自己對編程有了更深的理解,體會到編程的樂趣。</p>

30、;<p><b>  八.附件</b></p><p><b>  原代碼清單及注釋</b></p><p>  #include<stdio.h> </p><p>  #include<string.h> </p><p>  #include<con

31、io.h> </p><p>  #include<stdlib.h> </p><p>  #define N sizeof(struct book)</p><p>  #define PT "%-5d %10s %6s %6s %8s %3d \n",p->num,p->name,p->

32、;author,p->pub,p->where,p->count</p><p>  struct book /*圖書信息*/</p><p><b>  {</b></p><p>  int num; /*書號*/</p><p>  char name[10]; /

33、*書名*/</p><p>  char where[10]; /*出版日期*/</p><p>  char author[15]; /*作者*/</p><p>  char pub[20]; /*出版社*/</p><p>  int count; /*單價*/</p><p>

34、;  struct book *next;</p><p><b>  };</b></p><p>  void find1 (struct book *p0);</p><p>  void find2 (struct book *p0);</p><p><b>  /*輸出模塊*/</b>&

35、lt;/p><p>  void print(struct book *p0)</p><p><b>  {</b></p><p>  struct book *p;</p><p>  system("cls");</p><p>  p=p0->next;</p

36、><p>  printf("\n\n^^^^^^^^^^^^^^^^圖書信息表^^^^^^^^^^^^^^^^");</p><p>  printf("\n\n圖書編號----圖書名稱---作者------出版社--------出版日期---單價\n\n");</p><p>  while(p!=NULL)</p>

37、;<p><b>  {</b></p><p>  printf(PT);</p><p>  p=p->next;</p><p><b>  }</b></p><p>  getch(); //輸入任意值返回</p><p>  syste

38、m("cls");</p><p><b>  }</b></p><p><b>  /*輸入模塊*/</b></p><p>  struct book *creat() </p><p><b>  {</b></p><p>

39、  struct book *head,*p1,*p2;</p><p><b>  int i=0;</b></p><p>  head=p2=(struct book *)malloc(N);//分配新的內(nèi)存給p2</p><p>  head->next=NULL;</p><p>  printf(&qu

40、ot;\n\n\t\t錄入圖書信息");</p><p>  printf("\n---------------------------------------------");</p><p><b>  while(1)</b></p><p>  { p1=(struct book *)malloc(N);&

41、lt;/p><p>  printf("\n 請輸入圖書編號(書號0為結(jié)束): ");</p><p>  scanf("%d",&p1->num);</p><p>  if(p1->num!=0)</p><p><b>  {</b></p>

42、<p>  printf("\n\n書名 作者 出版社 出版日期 單價\n\n\n");</p><p>  scanf("%s%s%s%s%d",p1->name,p1->author,p1->pub,p1->where,&p1->count);</p><p>  p2->next=p1;

43、</p><p><b>  p2=p1;</b></p><p><b>  i++;</b></p><p><b>  }</b></p><p><b>  else </b></p><p><b>  brea

44、k; </b></p><p><b>  }</b></p><p>  p2->next=NULL;</p><p><b>  free(p1);</b></p><p>  printf("\n----------------------------------

45、-----------");</p><p>  printf("\n\t\t %d 種書錄入完畢",i);</p><p><b>  getch();</b></p><p>  system("cls");</p><p>  return hea

46、d;</p><p><b>  }</b></p><p><b>  /*查找模塊*/</b></p><p>  void find(struct book *p0)</p><p><b>  {</b></p><p><b>  i

47、nt v;</b></p><p>  system("cls");</p><p>  printf("1.按書名查找\n\n\n");</p><p>  printf("2.按書號查找\n");</p><p>  scanf("%d",&

48、;v);</p><p><b>  switch(v)</b></p><p><b>  {</b></p><p>  case 1 : find1(p0);break;</p><p>  case 2:find2(p0);break;</p><p>  defau

49、lt: ;</p><p><b>  }</b></p><p><b>  }</b></p><p>  void find1 (struct book *p0)</p><p><b>  {</b></p><p>  system("

50、;cls");</p><p>  char name[10];</p><p>  int flag=1;</p><p>  struct book *p;</p><p>  p=p0->next;</p><p>  printf("請輸入要查找的書名:\n");</p

51、><p>  scanf("%s",&name);</p><p>  for(p=p0;p;p=p->next)</p><p>  if(strcmp(p->name,name)==0) </p><p><b>  {</b></p><p>  pri

52、ntf("\n\n圖書編號----圖書名稱---作者------出版社--------出版日期---單價\n\n");</p><p>  printf(PT);</p><p><b>  flag=0;</b></p><p><b>  break;</b></p><p>

53、;<b>  }</b></p><p>  if(flag) printf("\n 暫無此圖書信息\n");//當flag=1時執(zhí)行</p><p><b>  getch(); </b></p><p><b>  }</b></p><p>  v

54、oid find2 (struct book *p0)</p><p><b>  {</b></p><p>  system("cls");</p><p><b>  int num;</b></p><p>  int flag=1;</p><p&g

55、t;  struct book *p;</p><p>  p=p0->next;</p><p>  printf("請輸入要查找的書號:\n");</p><p>  scanf("%d",&num);</p><p>  for(p=p0;p;p=p->next)</p&

56、gt;<p>  if(p->num==num) </p><p><b>  {</b></p><p>  printf("\n\n圖書編號----圖書名稱---作者------出版社--------出版日期---單價\n\n");</p><p>  printf(PT);</p>

57、<p><b>  flag=0;</b></p><p><b>  break;</b></p><p><b>  }</b></p><p>  if(flag) printf("\n 暫無此圖書信息\n");</p><p><

58、b>  getch(); </b></p><p><b>  }</b></p><p><b>  /*刪除模塊*/</b></p><p>  void del(struct book *p0)</p><p><b>  {</b></p>

59、<p>  system("cls");</p><p>  char name[10];</p><p>  int flag=1;</p><p>  struct book *p;</p><p><b>  p=p0;</b></p><p>  prin

60、tf("請輸入要刪除的書名:\n");</p><p>  scanf("%s",name);</p><p>  while(p!=NULL)</p><p><b>  {</b></p><p>  if(strcmp(p->name,name)==0)</p&g

61、t;<p><b>  {</b></p><p>  p0->next=p->next; //后續(xù)結(jié)點連接到前驅(qū)結(jié)點之后</p><p><b>  free(p);</b></p><p>  printf("\t該書資料已刪除.");</p><

62、;p><b>  flag=0;</b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  p0=p;</b></p><p>  p=p->next;</p>

63、<p><b>  }</b></p><p>  if(flag) printf("\n\t無此圖書信息。");</p><p><b>  getch();</b></p><p>  system("cls"); </p><p><

64、b>  }</b></p><p><b>  /*錄入模塊*/</b></p><p>  void insert(struct book *p0)</p><p><b>  {</b></p><p>  struct book *p;</p><p>

65、;  system("cls");</p><p>  p=(struct book *)malloc(N);</p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  printf("\n 請輸入要錄入的圖

66、書編號(書號0為退出): ");</p><p>  scanf("%d",&p->num); </p><p>  if(p->num!=0)</p><p><b>  {</b></p><p>  if(p0->next!=NULL&&p0

67、->next->num==p->num) //找到重號</p><p><b>  {</b></p><p>  p=p->next;</p><p><b>  free(p);</b></p><p>  printf("\t該書已存在");<

68、;/p><p><b>  }</b></p><p><b>  else </b></p><p>  {printf("\n\n書名 作者 出版社 出版日期 單價\n\n\n");</p><p>  scanf("%s%s%s%s%d",p->nam

69、e,p->author,p->pub,p->where,&p->count);</p><p>  p->next=p0->next;</p><p>  p0->next=p;</p><p>  printf("\t已成功錄入.");</p><p><b>

70、  }</b></p><p><b>  }</b></p><p><b>  else </b></p><p>  break; </p><p><b>  }</b></p><p><b>  getch();

71、</b></p><p>  system("cls");</p><p><b>  }</b></p><p><b>  /*修改模塊*/</b></p><p>  void modify(struct book *p0)</p><p&g

72、t;<b>  {</b></p><p>  system("cls");</p><p>  char name[10];</p><p>  int flag=1;</p><p>  int choice;</p><p>  struct book *p;</p

73、><p>  p=p0->next;</p><p>  printf("請輸入要修改的書名:\n\n");</p><p>  scanf("%s",name);</p><p>  while(p!=NULL&&flag==1)</p><p><b&

74、gt;  {</b></p><p>  if(strcmp(p->name,name)==0)</p><p><b>  {</b></p><p>  printf("\n\t請選擇要修改的項:");</p><p>  printf("\n\t 1.修改圖

75、書編號\n");</p><p>  printf("\n\t 2.修改圖書出版日期\n");</p><p>  printf("\n\t 3.修改圖書作者\n");</p><p>  printf("\n\t 4.修改圖書出版社\n");</p>

76、<p>  printf("\n\t 5.修改圖書單價\n");</p><p>  scanf("%d",&choice);</p><p>  switch(choice)</p><p><b>  {</b></p><p>  case 1:

77、 { printf("\n 請輸入新的圖書編號:"); </p><p>  scanf("%d",p->num); break;</p><p><b>  }</b></p><p>  case 2: { printf("\n 請輸入新的圖書出版日期:");

78、 </p><p>  scanf("%s",p->where); break;</p><p><b>  }</b></p><p>  case 3: { printf("\n 請輸入新的圖書作者:");</p><p>  scanf("%s"

79、;,p->author); break;</p><p><b>  }</b></p><p>  case 4: {printf("\n 請輸入新的圖書出版社:"); </p><p>  scanf("%s",p->pub); break;</p><

80、;p><b>  }</b></p><p>  case 5: {printf("\n 請輸入新的圖書單價:"); </p><p>  scanf("%d",p->count); break;</p><p><b>  }</b></p>&l

81、t;p><b>  }</b></p><p>  printf("\n\t該項已成功修改。\n\t 新的圖書信息:");</p><p>  printf("\n\n圖書編號----圖書名稱---作者------出版社--------出版日期---單價\n\n");</p><p>  prin

82、tf(PT);</p><p><b>  flag=0;</b></p><p><b>  } </b></p><p><b>  p0=p;</b></p><p>  p=p0->next;</p><p><b>  }<

83、;/b></p><p>  if(flag) printf("\n\t暫無此圖書信息。");</p><p><b>  getch();</b></p><p>  system("cls");</p><p><b>  }</b></p

84、><p><b>  /*讀文件*/</b></p><p>  struct book *read_file() </p><p><b>  {</b></p><p><b>  int i=0;</b></p><p>  struct bo

85、ok *p,*p1,*head=NULL;</p><p><b>  FILE *fp;</b></p><p>  if((fp=fopen("library.txt","rb"))==NULL)//以只讀的方式打開文件</p><p>  {printf("\n\n \t*******

86、*庫文件不存在,請創(chuàng)建!**********");</p><p><b>  getch();</b></p><p>  return NULL;</p><p><b>  }</b></p><p>  head=(struct book *)malloc(N);</p>

87、;<p><b>  p1=head;</b></p><p>  head->next=NULL;</p><p>  printf("\n 已有圖書信息:");</p><p>  printf("\n\n圖書編號----圖書名稱---作者------出版社--------出版日期---單價

88、\n\n");</p><p>  while(!feof(fp))</p><p><b>  {</b></p><p>  p=(struct book *)malloc(N); </p><p>  while(fscanf(fp,"%d%s%s%s%s%d",&p-&g

89、t;num,p->name,p->author,p->pub,p->where,&p->count)!=EOF)</p><p><b>  {</b></p><p>  printf(PT);</p><p><b>  i++;</b></p><p>&

90、lt;b>  }</b></p><p>  p1->next=p;</p><p><b>  p1=p;</b></p><p><b>  }</b></p><p>  p1->next=NULL;</p><p>  fclose(fp

91、);</p><p>  printf("\n 共種%d 圖書信息",i);</p><p>  printf("\n\n\n 文件中的信息以正確讀出。按任意鍵返回。");</p><p><b>  getch();</b></p><p>  system

92、("cls");</p><p>  return (head); </p><p><b>  }</b></p><p><b>  /*保存文件*/</b></p><p>  void save(struct book *head) </p><

93、;p><b>  {</b></p><p><b>  FILE *fp;</b></p><p>  struct book *p;</p><p>  fp=fopen("library.txt","wb"); //以只寫方式打開二進制文件</p>

94、<p>  if(fp==NULL) //打開文件失敗</p><p><b>  {</b></p><p>  printf("\n=====>打開文件失敗!\n");</p><p><b>  getch();</b></p><p><

95、;b>  return ;</b></p><p><b>  }</b></p><p><b>  else</b></p><p>  for(p=head->next;p!=NULL;p=p->next)</p><p>  fprintf(fp,"%

96、d %s %s %s %s %d\n",p->num,p->name,p->author,p->pub,p->where,p->count);</p><p>  fclose(fp);</p><p>  printf("\n\t保存文件成功!\n");</p><p><b>  }&l

97、t;/b></p><p>  void main()</p><p><b>  {</b></p><p>  struct book *head=NULL;</p><p>  int choice=1;</p><p>  head=read_file();</p>&

98、lt;p>  if(head==NULL)</p><p><b>  {</b></p><p>  printf("\n\t\t********************");</p><p><b>  getch();</b></p><p>  head=creat

99、();</p><p><b>  }</b></p><p><b>  do</b></p><p><b>  {</b></p><p>  system("cls");</p><p>  printf("----

100、------------Welcome-----------------\n");</p><p>  printf("歡迎您,圖書管理員\n\n\n\n");</p><p>  printf("****************************************\n\n");</p><p>  pr

101、intf("\n 請選擇:");</p><p>  printf("\n 1.圖書基本信息錄入\n");</p><p>  printf("\n 2.圖書基本信息查詢\n");</p><p>  printf("\n 3.圖書基本信息刪除\n&

102、quot;);</p><p>  printf("\n 4.圖書基本信息修改\n"); </p><p>  printf("\n 5.圖書基本信息顯示\n");</p><p>  printf("\n 0.退出系統(tǒng)\n");</p>&

103、lt;p>  printf("****************************************\n");</p><p>  scanf("%d",&choice);</p><p>  switch(choice)</p><p><b>  {</b></p>

104、<p>  case 2: find(head); break;</p><p>  case 4: modify(head); break;</p><p>  case 1: insert(head); break;</p><p>  case 3: del(head); break;</p>

105、<p>  case 5: print(head); break;</p><p>  case 0: system("cls"); break;</p><p><b>  }</b></p><p><b>  }</b></p><p>  w

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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

提交評論