2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩24頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  課程設(shè)計(jì)報(bào)告</b></p><p>  課程:面向?qū)ο蟪绦蛟O(shè)計(jì)</p><p>  學(xué)號: </p><p>  姓名: </p><p>  班級: 11計(jì)81 </p><p>  教師:

2、 </p><p>  課程設(shè)計(jì)名稱:圖書信息管理系統(tǒng)</p><p><b>  一、設(shè)計(jì)內(nèi)容</b></p><p>  圖書信息管理系統(tǒng),包括圖書信息和學(xué)生信息。圖書信息包括:書名、作者名、分類號、出版單位、出版時間、價格等。學(xué)生信息包括:學(xué)號、姓名等。</p><p><b>  二、設(shè)計(jì)目的

3、與要求</b></p><p>  圖書信息管理系統(tǒng),使圖書的借閱、歸還等管理操作簡便,易于管理,能有效地提高效率。圖書信息錄入功能(圖書信息用文件保存)--輸入,圖書信息瀏覽功能--輸出,查詢功能(至少一種查詢方式) -- 按書名查詢,按作者名查詢,圖書信息的刪除與修改(可選項(xiàng))。</p><p><b>  三、系統(tǒng)功能分析</b></p>

4、<p>  圖書信息管理系統(tǒng),包括圖書信息和學(xué)生信息。圖書信息包括:登錄號、書名、作者名、分類號、出版單位、出版時間、價格等。圖書信息錄入功能(圖書信息用文件保存)--輸入,圖書信息瀏覽功能--輸出,查詢功能(至少一種查詢方式) -- 按書名查詢,按作者名查詢,圖書信息的刪除與修改(可選項(xiàng))。學(xué)生信息包括:學(xué)號、姓名等,并能實(shí)現(xiàn)學(xué)生信息的查詢功能。</p><p><b>  四、功能模塊

5、圖</b></p><p><b>  五、系統(tǒng)流程圖</b></p><p><b>  六、編碼實(shí)現(xiàn)</b></p><p>  6.1 讀者類的設(shè)計(jì)</p><p>  該類定義了借書操作,還書操作,設(shè)置讀者姓名等功能。</p><p>  6.2 讀者庫類

6、類的設(shè)計(jì)</p><p>  該類實(shí)現(xiàn)了建立讀者的個人資料,刪除讀者信息,輸出讀者信息等功能。</p><p>  6.3 圖書類的設(shè)計(jì)</p><p>  圖書類,可以實(shí)現(xiàn)對圖書的描述,圖書的編號,書名,借出,還入等操作。</p><p>  6.4 圖書庫類的設(shè)計(jì)</p><p>  6.5 源程序代碼:</

7、p><p>  #include<iostream.h></p><p>  #include<conio.h></p><p>  #include<fstream.h></p><p>  #include<iomanip.h> </p><p>  #include&l

8、t;string.h></p><p>  const int Maxr=100; //最多的讀者數(shù) </p><p>  const int Maxb=100; //最多的圖書數(shù)</p><p>  const int Maxbor=5; //每位讀者最多借的書</p><p>  class Book

9、</p><p>  { //圖書類,實(shí)現(xiàn)對圖書的描述,圖書的編號,書名,作者,出版社,價格,出版時間,借出,還入等功能</p><p><b>  private: </b></p><p>  int tag; //刪除標(biāo)記 1:已刪 0:未刪</p>&

10、lt;p>  int no; //圖書編號</p><p>  char name[40]; //書名 </p><p>  char author[40]; //作者</p><p>  char publicsher[40]; //出版社</p><p>  ch

11、ar year[40]; //出版時間</p><p>  int cost; //價格</p><p>  int onshelf; //是否再架 1:再架 2:已借 </p><p><b>  public: </b></p><p>  Book(){;}

12、</p><p>  char *getname()</p><p>  { //獲取書名</p><p>  return name; </p><p><b>  } </b></p><p>  char *getauthorname() </p

13、><p>  { //獲取作者名</p><p>  return author;</p><p><b>  } </b></p><p>  char *getpublicshername()</p><p>  {

14、//獲取出版社名 </p><p>  return publicsher; </p><p><b>  } </b></p><p>  char *getyear()</p><p>  { //獲取出版時間 </p><p>  return yea

15、r; </p><p><b>  } </b></p><p>  int getcost()</p><p>  { //獲取價格 </p><p>  return cost; </p><p><b>  } </b></

16、p><p>  int getno()</p><p>  { //獲取圖書編號</p><p>  return no; </p><p><b>  }</b></p><p>  int gettag()</p><p>  {

17、 //獲取刪除標(biāo)記 </p><p>  return tag; </p><p><b>  }</b></p><p>  void setname(char na[]) </p><p>  { //設(shè)置書名</p>&

18、lt;p>  strcpy(name,na); </p><p><b>  } </b></p><p>  void setonshelf(int oa) </p><p><b>  {</b></p><p>  onshelf=oa;</p><p><

19、b>  } </b></p><p>  void delbook()</p><p>  { //刪除圖書 </p><p><b>  tag=1;</b></p><p><b>  } </b></p><p

20、>  void addbook(int n,char *na,char *aa,char *pa,char *ya,int ca,int oa) </p><p>  { //增加圖書 </p><p><b>  tag=0; </b></p><p><b>  no=n; &l

21、t;/b></p><p>  strcpy(name,na);</p><p>  strcpy(author,aa);</p><p>  strcpy(publicsher,pa);</p><p>  strcpy(year,ya);</p><p><b>  cost=ca;</b&g

22、t;</p><p>  onshelf=oa; </p><p><b>  } </b></p><p>  int borrowbook() </p><p>  { //借書操作 </p><p>  if (onshelf>0) <

23、;/p><p><b>  { </b></p><p>  onshelf--;</p><p>  return 1; </p><p><b>  } </b></p><p>  return 0; </p><p><b>  } &l

24、t;/b></p><p>  void retbook()</p><p>  { //還書操作</p><p>  onshelf++; </p><p><b>  } </b></p><p>  void disp() </p&g

25、t;<p>  { //輸出圖書 </p><p>  cout<<setw(6)<<no<<setw(18)<<name<<setw(10)<<author<<setw(10)<<publicsher<<setw(10)<<year&

26、lt;<setw(6)<<cost<<setw(10)<<onshelf<<endl; </p><p><b>  } </b></p><p><b>  };</b></p><p>  class BDatabase </p><p> 

27、 { //圖書庫類,實(shí)現(xiàn)對圖書的維護(hù),查找,刪除等 </p><p><b>  private: </b></p><p>  int top; //圖書記錄指針</p><p>  Book book[Maxb]; //圖書記錄</p><

28、p><b>  public: </b></p><p>  BDatabase() </p><p>  { //構(gòu)造函數(shù),將book.txt讀到book[]中 </p><p><b>  Book b; </b></p><p><b>

29、  top=-1; </b></p><p>  fstream file("book.txt",ios::in); </p><p>  while (1) </p><p><b>  { </b></p><p>  file.read((char *)&b,sizeof(b

30、)); </p><p>  if (!file) </p><p><b>  break; </b></p><p><b>  top++; </b></p><p>  book[top]=b; </p><p><b>  } </b><

31、/p><p>  file.close(); </p><p><b>  } </b></p><p>  void clear() </p><p>  { //全刪 </p><p><b>  top=-1; </b><

32、/p><p><b>  } </b></p><p>  int addbook(int n,char *na,char *aa,char *pa,char *ya,int ca,int oa) </p><p>  { //增加圖書 </p><p>  Book *p=qu

33、ery1(n); </p><p>  if (NULL==p) </p><p><b>  { </b></p><p><b>  top++; </b></p><p>  book[top].addbook(n,na,aa,pa,ya,ca,oa); </p><p&g

34、t;  return 1; </p><p><b>  } </b></p><p>  return 0; </p><p><b>  } </b></p><p>  Book *query1(int bookid) </p><p>  {

35、 //按編號查找圖書 </p><p>  for(int i=0;i<=top;i++) </p><p>  if(book[i].getno()==bookid &&book[i].gettag()==0) </p><p><b>  { </b></p><p>  r

36、eturn &book[i]; </p><p><b>  } </b></p><p>  return NULL; </p><p><b>  }</b></p><p>  Book *query2(char a[]) </p><p>  {

37、 //按書名查找圖書</p><p><b>  Book *e;</b></p><p><b>  int r=0;</b></p><p>  for(int i=0;i<=top;i++)</p><p>  if(strcmp(book[i].getn

38、ame(),a)==0 &&book[i].gettag()==0) </p><p><b>  { </b></p><p><b>  if(r==0)</b></p><p>  cout<<setw(6)<<"編號"<<setw(18)<

39、;<"書名"<<setw(10)<<"作者"<<setw(10)<<"出版社"<<setw(10)<<"出版時間"<<setw(6)<<"價格"<<setw(10)<<"存量"<<e

40、ndl;</p><p>  e=&book[i];</p><p>  e->disp();</p><p><b>  r++; </b></p><p><b>  } </b></p><p><b>  if(r==0)</b>&

41、lt;/p><p>  cout<<"找不到該書!"<<endl;</p><p>  return NULL; </p><p><b>  } </b></p><p>  Book *query3(char a[]) </p><p>  {

42、 //按作者查找圖書 </p><p><b>  Book *e;</b></p><p><b>  int r=0;</b></p><p>  for(int i=0;i<=top;i++) </p><p>  if(strcmp(book[i].

43、getauthorname(),a)==0 &&book[i].gettag()==0) </p><p><b>  { </b></p><p><b>  if(r==0)</b></p><p>  cout<<setw(6)<<"編號"<<s

44、etw(18)<<"書名"<<setw(10)<<"作者"<<setw(10)<<"出版社"<<setw(10)<<"出版時間"<<setw(6)<<"價格"<< setw(10)<<"存量&quo

45、t;<<endl;</p><p>  e=&book[i];</p><p>  e->disp();</p><p><b>  r++; </b></p><p><b>  } </b></p><p><b>  if(r==0)

46、</b></p><p>  cout<<"找不到該書!"<<endl;</p><p>  return NULL; </p><p><b>  }</b></p><p>  Book *query4(char a[]) </p><p&g

47、t;  { //按出版社查找圖書 </p><p><b>  Book *e;</b></p><p><b>  int r=0;</b></p><p>  for (int i=0;i<=top;i++)</p><p>  if (str

48、cmp(book[i].getpublicshername(),a)==0 &&book[i].gettag()==0) </p><p><b>  { </b></p><p>  if(r==0)cout<<setw(6)<<"編號"<<setw(18)<<"書名&qu

49、ot;<<setw(10)<<"作者"<<setw(10)<<"出版社"<<setw(10)<<"出版時間"<<setw(6)<<"價格"<<setw(10)<<"存量"<<endl;</p>

50、<p>  e=&book[i];</p><p>  e->disp();</p><p><b>  r++; </b></p><p><b>  }</b></p><p><b>  if(r==0)</b></p><p&

51、gt;  cout<<"找不到該書!"<<endl;</p><p>  return NULL; </p><p><b>  } </b></p><p>  void bookdata(); //圖書庫信息</p><p>  void disp(

52、) </p><p><b>  { </b></p><p>  for(int i=0;i<=top;i++) </p><p>  if(book[i].gettag()==0) </p><p>  book[i].disp(); </p><p><b>  } <

53、/b></p><p>  ~BDatabase() </p><p>  { //析構(gòu)函數(shù),將book[]寫到book.txt文件中 </p><p>  fstream file("book.txt",ios::out); </p><p>  for(int i=0

54、;i<=top;i++) </p><p>  if(book[i].gettag()==0)</p><p>  file.write((char *)&book[i],sizeof(book[i])); </p><p>  file.close(); </p><p><b>  } </b><

55、/p><p><b>  }; </b></p><p>  void BDatabase::bookdata() </p><p><b>  { </b></p><p>  char choice3; </p><p>  char bname[40];</p>

56、<p>  char auname[40];</p><p>  char pname[40];</p><p>  char year[40];</p><p><b>  int cost;</b></p><p><b>  char ch;</b></p><

57、;p>  int choice4;</p><p>  int bookid;</p><p>  int bookod;</p><p><b>  Book *b; </b></p><p>  while (choice3!='0') </p><p><b>

58、;  { </b></p><p>  cout<<"\n\t\t\t**圖 書 信 息**\n"<<endl; </p><p>  cout<<"\t\t\t** 1.新 增 **"<<endl;</p><p>  cout<<"

59、;\t\t\t** 2.更 改 **"<<endl;</p><p>  cout<<"\t\t\t** 3.刪 除 **"<<endl;</p><p>  cout<<"\t\t\t** 4.查 找 **"<<endl;</p>

60、<p>  cout<<"\t\t\t** 5.顯 示 **"<<endl;</p><p>  cout<<"\t\t\t** 6.全 刪 **"<<endl;</p><p>  cout<<"\t\t\t** 0.返 回 **&

61、quot;<<endl; </p><p>  cout<<"\t\t\t 請選擇:";</p><p>  cin>>choice3; </p><p>  switch(choice3) </p><p><b>  { </b></p><

62、p>  case '1': </p><p>  cout<<"請輸入新書編號:"; </p><p>  cin>>bookid;</p><p>  b=query1(bookid); </p><p>  if(b!=NULL) </p><p>

63、<b>  { </b></p><p>  cout<<"該編號已經(jīng)存在,不能添加!"<<endl;</p><p><b>  break; </b></p><p><b>  }</b></p><p>  cout<&

64、lt;"請輸入新書書名:"; </p><p>  cin>>bname;</p><p>  cout<<"請輸入新書作者名:"; </p><p>  cin>>auname;</p><p>  cout<<"請輸入新書出版社:"

65、; </p><p>  cin>>pname;</p><p>  cout<<"請輸入新書價格:"; </p><p>  cin>>cost;</p><p>  cout<<"請輸入新書出版時間:"; </p><p>  

66、cin>>year;</p><p>  cout<<"請輸入新書數(shù)量:"; </p><p>  cin>>bookod;</p><p>  addbook(bookid,bname,auname,pname,year,cost,bookod);</p><p>  cout<

67、<"添加圖書成功!";</p><p><b>  getch(); </b></p><p><b>  break; </b></p><p>  case '2': </p><p>  cout<<"請輸入圖書編號:"

68、; </p><p>  cin>>bookid; </p><p>  b=query1(bookid); </p><p>  if(b==NULL) </p><p><b>  { </b></p><p>  cout<<"該圖書不存在! "&

69、lt;<endl;</p><p><b>  break; </b></p><p><b>  }</b></p><p>  cout<<"該圖書的信息是:"<<endl;</p><p>  cout<<setw(6)<&l

70、t;"編號"<<setw(18)<<"書名"<<setw(10)<<"作者"<<setw(10)<<"出版社"<<setw(10)<<"出版時間"<<setw(6)<<"價格"<< set

71、w(10)<<"存量"<<endl;</p><p>  b->disp();</p><p>  cout<<"是否修改?( y/n ):";</p><p><b>  cin>>ch;</b></p><p>  if(c

72、h=='y')</p><p><b>  {</b></p><p>  cout<<"請輸入新的書名:"; </p><p>  cin>>bname;</p><p>  cout<<"請輸入新的作者:";</p>

73、;<p>  cin>>auname;</p><p>  cout<<"請輸入新書出版社:";</p><p>  cin>>pname;</p><p>  cout<<"請輸入新書出版時間:";</p><p>  cin>>

74、;year;</p><p>  cout<<"請輸入新書價格:";</p><p>  cin>>cost;</p><p>  cout<<"請輸入新的存量:"; </p><p>  cin>>bookod;</p><p>

75、  b->setname(bname);</p><p>  b->setonshelf(bookod); </p><p><b>  }</b></p><p>  cout<<"修改圖書成功!";</p><p><b>  getch(); </b>

76、;</p><p><b>  break;</b></p><p>  case '3': </p><p>  cout<<"請輸入圖書編號:"; </p><p>  cin>>bookid; </p><p>  b=quer

77、y1(bookid); </p><p>  if(b==NULL) </p><p><b>  { </b></p><p>  cout<<"該圖書不存在,無法刪除!"<<endl;</p><p><b>  break; </b></p&g

78、t;<p><b>  } </b></p><p>  b->delbook();</p><p>  cout<<"刪除成功!";</p><p><b>  getch();</b></p><p><b>  break; <

79、;/b></p><p>  case '4': </p><p>  cout<<"\t\t\t** 1.按圖書編號查找 **"<<endl;</p><p>  cout<<"\t\t\t** 2.按圖書書名查找 **"<<endl;</p&g

80、t;<p>  cout<<"\t\t\t** 3.按圖書作者查找 **"<<endl;</p><p>  cout<<"\t\t\t** 4.按圖書出版社查找**"<<endl;</p><p>  cout<<"\t\t\t** 0.返 回 *

81、*"<<endl;</p><p>  cout<<"\t\t\t 請選擇:"; </p><p>  cin>>choice4;</p><p>  switch(choice4)</p><p><b>  {</b></p><p

82、><b>  case 1: </b></p><p>  cout<<"請輸入圖書編號:"; </p><p>  cin>>bookid;</p><p>  b=query1(bookid);</p><p>  if(b==NULL) </p>&l

83、t;p><b>  { </b></p><p>  cout<<"該圖書不存在!";</p><p><b>  break; </b></p><p><b>  }</b></p><p>  cout<<setw(6)&

84、lt;<"編號"<<setw(18)<<"書名"<<setw(10)<<"作者"<<setw(10)<<"出版社"<<setw(10)<<"出版時間"<<setw(6)<<"價格"<<

85、;setw(10)<<"存量"<<endl;</p><p>  b->disp(); </p><p>  break; </p><p><b>  case 2: </b></p><p>  cout<<"請輸入圖書書名:"

86、; </p><p>  cin>>bname;</p><p>  b=query2(bname);</p><p><b>  break;</b></p><p><b>  case 3: </b></p><p>  cout<<"

87、請輸入圖書作者:"; </p><p>  cin>>auname;</p><p>  b=query3(auname);</p><p><b>  break;</b></p><p><b>  case 4: </b></p><p>  co

88、ut<<"請輸入圖書出版社:"; </p><p>  cin>>pname;</p><p>  b=query4(pname);</p><p><b>  break;</b></p><p><b>  case 0: </b></p>

89、<p><b>  break;</b></p><p><b>  }</b></p><p><b>  break;</b></p><p>  case '5': </p><p>  cout<<setw(6)<<

90、"編號"<<setw(18)<<"書名"<<setw(10)<<"作者"<<setw(10)<<"出版社"<<setw(10)<<"出版時間"<<setw(6)<<"價格"<< setw(

91、10)<<"存量"<<endl;</p><p><b>  disp();</b></p><p><b>  getch(); </b></p><p><b>  break; </b></p><p>  case '

92、6': </p><p><b>  clear(); </b></p><p><b>  break; </b></p><p><b>  default: </b></p><p><b>  break; </b></p>

93、<p><b>  } </b></p><p><b>  } </b></p><p><b>  }</b></p><p>  class Reader</p><p>  { //讀者的信息描述 <

94、/p><p><b>  private: </b></p><p>  int tag; //刪除標(biāo)記 1表示已刪 0表示未刪 </p><p>  int no; //讀者編號</p><p>  char name[10]; /

95、/讀者姓名 </p><p>  int borbook[Maxbor]; //所借圖書 </p><p><b>  public: </b></p><p><b>  Reader()</b></p><p><b>  { ; } </b></p>

96、<p>  char *getname() </p><p>  { //獲取姓名 </p><p>  return name;</p><p><b>  } </b></p><p>  int gettag() </p><p>

97、;  { //獲取刪除標(biāo)記 </p><p>  return tag; </p><p><b>  } </b></p><p>  int getno() </p><p>  { //獲取讀者編號 </p>

98、<p>  return no; </p><p><b>  } </b></p><p>  void setname(char na[]) </p><p>  { //設(shè)置姓名 </p><p>  strcpy(name,na); </p

99、><p><b>  }</b></p><p>  void delbook() </p><p>  { //設(shè)置刪除標(biāo)記 1:已刪 0:未刪 </p><p><b>  tag=1; </b></p><p><

100、b>  } </b></p><p>  void addreader(int n,char *na) </p><p>  { //增加讀者 </p><p><b>  tag=0; </b></p><p><b>  no=n;

101、 </b></p><p>  strcpy(name,na); </p><p>  for(int i=0;i<Maxbor;i++) </p><p>  borbook[i]=0; </p><p><b>  } </b></p><p>  void borrowbo

102、ok(int bookid) </p><p>  { //借書操作 </p><p>  for(int i=0;i<Maxbor;i++) </p><p><b>  { </b></p><p>  if (borbook[i]==0) </p&g

103、t;<p><b>  {</b></p><p>  borbook[i]=bookid;</p><p><b>  return ; </b></p><p><b>  } </b></p><p><b>  } </b></

104、p><p><b>  } </b></p><p>  int retbook(int bookid) </p><p>  { //還書操作 </p><p>  for(int i=0;i<Maxbor;i++) </p><p>&l

105、t;b>  { </b></p><p>  if(borbook[i]==bookid) </p><p><b>  { </b></p><p>  borbook[i]=0;</p><p>  cout<<"還書成功!"<<endl;</p&g

106、t;<p>  return 1; </p><p><b>  } </b></p><p><b>  }</b></p><p>  cout<<"未借該書,還書失敗!"<<endl;</p><p>  return 0; </

107、p><p><b>  } </b></p><p>  void disp() </p><p>  { //讀出讀者信息</p><p>  int have=0;</p><p><b>  int bz=0;</b>&

108、lt;/p><p>  cout<<setw(5)<<no<<setw(21)<<name<<setw(15);</p><p>  for(int i=0;i<Maxbor;i++) </p><p>  if(borbook[i]!=0)</p><p><b>  

109、{ </b></p><p><b>  if(bz==0)</b></p><p><b>  {</b></p><p><b>  have=1;</b></p><p>  cout<<"["<<borbook[i

110、]<<"]\t\t"<<endl; </p><p><b>  bz++;</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {

111、</b></p><p>  cout<<"\r\t\t\t\t\t""["<<borbook[i]<<"]\t\t"<<setw(15)<<endl; </p><p><b>  }</b></p><p>&

112、lt;b>  }</b></p><p>  if(have==0)</p><p>  cout<<"\t 還未借書"<<endl;</p><p><b>  }</b></p><p><b>  };</b></p&

113、gt;<p>  class RDatabase </p><p>  { //讀者類庫,實(shí)現(xiàn)建立讀者的個人資料 </p><p><b>  private: </b></p><p>  int top; //讀者記錄指針 </p>

114、<p>  Reader read[Maxr]; //讀者記錄 </p><p><b>  public: </b></p><p>  RDatabase() </p><p>  { //構(gòu)造函數(shù),將reader.txt讀到read[]中 </p>

115、<p>  Reader s; </p><p>  top=-1; </p><p>  fstream file("reader.txt",ios::in); //打開一個輸入文件</p><p>  while (1) </p><p><b>  { </b></p&g

116、t;<p>  file.read((char *)&s,sizeof(s)); </p><p>  if (!file)</p><p><b>  break; </b></p><p><b>  top++; </b></p><p>  read[top]=s; &

117、lt;/p><p><b>  } </b></p><p>  file.close(); //關(guān)閉 reader.txt 文件</p><p><b>  } </b></p><p>  void clear() </p><p>  {

118、 //刪除所有讀者信息 </p><p><b>  top=-1; </b></p><p><b>  } </b></p><p>  int addreader(int n,char *na) </p><p>  {

119、 //添加讀者時先查找是否存在 </p><p>  Reader *p=queryid(n); </p><p>  if (p==NULL)</p><p><b>  {</b></p><p><b>  top++; </b></p><p>

120、  read[top].addreader(n,na); </p><p>  return 1; </p><p><b>  }</b></p><p><b>  else</b></p><p>  cout<<"該編號已經(jīng)存在!";</p>&

121、lt;p>  return 0; </p><p><b>  } </b></p><p>  Reader *queryid(int readerid) </p><p>  { //按讀者編號查找</p><p>  for (int i=0;i&l

122、t;=top;i++) </p><p>  if (read[i].getno()==readerid&&read[i].gettag()==0) </p><p><b>  { </b></p><p>  return &read[i]; </p><p><b>  } <

123、;/b></p><p>  return NULL;</p><p><b>  }</b></p><p>  Reader *queryname(char readername[10]) </p><p>  {

124、 //按讀者姓名查找</p><p>  for (int i=0;i<=top;i++) </p><p>  if (strcmp(read[i].getname(),readername)==0 && read[i].gettag()==0) </p><p><b>  { </b></p><

125、p>  return &read[i]; </p><p><b>  } </b></p><p>  return NULL; </p><p>  } </p><p>  void

126、 disp() </p><p>  { //輸出所有讀者信息 </p><p>  for(int i=0;i<=top;i++)</p><p>  read[i].disp(); </p><p><b>  } </b></p><p

127、>  void readerdata(); //讀者庫信息</p><p>  ~RDatabase() </p><p>  { //析構(gòu)函數(shù),將read[]寫到reader.txt文件中</p><p>  fstream file("reader.txt",io

128、s::out); </p><p>  for (int i=0;i<=top;i++) </p><p>  if (read[i].gettag()==0) </p><p>  file.write((char *)&read[i],sizeof(read[i])); </p><p>  file.close(); &l

129、t;/p><p><b>  } </b></p><p><b>  };</b></p><p>  void RDatabase::readerdata() </p><p><b>  {</b></p><p>  char choice1; &l

130、t;/p><p>  char rname[20]; </p><p>  int readerid;</p><p>  char readername[10];</p><p>  int choice2;</p><p>  Reader *r; </p><p>  while(choice

131、1!='0')</p><p><b>  {</b></p><p>  cout<<"\n\t\t\t** 讀 者 信 息 **\n"<<endl;</p><p>  cout<<"\t\t\t** 1.新 增 **"<<

132、;endl;</p><p>  cout<<"\t\t\t** 2.更 改 **"<<endl;</p><p>  cout<<"\t\t\t** 3.刪 除 **"<<endl;</p><p>  cout<<"\t\

133、t\t** 4.查 找 **"<<endl;</p><p>  cout<<"\t\t\t** 5.顯 示 **"<<endl;</p><p>  cout<<"\t\t\t** 6.全 刪 **"<<endl;</p>

134、;<p>  cout<<"\t\t\t** 0.返 回 **"<<endl; </p><p>  cout<<"\t\t\t 請選擇:";</p><p>  cin>>choice1; </p><p>  switch(choice1) &l

135、t;/p><p><b>  { </b></p><p>  case '1': </p><p>  cout<<"請輸入讀者編號:"; </p><p>  cin>>readerid;</p><p>  cout<<&q

136、uot;請輸入讀者姓名:"; </p><p>  cin>>rname;</p><p>  addreader(readerid,rname);</p><p>  cout<<"添加讀者成功!"<<endl;</p><p><b>  getch();<

137、/b></p><p><b>  break;</b></p><p>  case '2': </p><p>  cout<<"請輸入讀者編號:"; </p><p>  cin>>readerid; </p><p>  r

138、=queryid(readerid); </p><p>  if(r==NULL) </p><p><b>  { </b></p><p>  cout<<"該讀者不存在! "<<endl; </p><p><b>  break; </b><

139、;/p><p><b>  } </b></p><p>  cout<<"請輸入新的姓名:"; </p><p>  cin>>rname; </p><p>  r->setname(rname); </p><p>  cout<<&

140、quot;修改讀者成功!"<<endl;</p><p><b>  getch();</b></p><p><b>  break;</b></p><p>  case '3': </p><p>  cout<<"請輸入讀者編號:&

141、quot;; </p><p>  cin>>readerid; </p><p>  r=queryid(readerid); </p><p>  if(r==NULL) </p><p><b>  { </b></p><p>  cout<<"該讀者不存

142、在!" << endl; </p><p><b>  break; </b></p><p><b>  } </b></p><p>  r->delbook();</p><p>  cout<<"刪除成功!"<&

143、lt;endl;</p><p><b>  getch();</b></p><p><b>  break; </b></p><p><b>  case '4':</b></p><p>  cout<<"\t\t\t** 1.按讀

144、者編號查找 **"<<endl;</p><p>  cout<<"\t\t\t** 2.按讀者姓名查找 **"<<endl;</p><p>  cout<<"\t\t\t** 0.返 回 **"<<endl;</p><p>  cou

145、t<<"\t\t\t 請選擇:"; </p><p>  cin>>choice2;</p><p>  switch(choice2)</p><p><b>  {</b></p><p><b>  case 1: </b></p>&

146、lt;p>  cout<<"請輸入讀者編號:"; </p><p>  cin>>readerid;</p><p>  r=queryid(readerid); </p><p>  if(r==NULL) </p><p><b>  { </b></p>

147、<p>  cout<<"該讀者不存在!"<< endl; </p><p><b>  break; </b></p><p><b>  }</b></p><p>  cout<<setw(10)<<"讀者編號"&l

148、t;<setw(17)<<"讀者姓名"<<setw(20)<<"已借書編號"<<endl;</p><p>  r->disp();</p><p>  break; </p><p><b>  case 2: </b></p&g

149、t;<p>  cout<<"請輸入讀者姓名:"; </p><p>  cin>>readername; </p><p>  r=queryname(readername); </p><p>  if(r==NULL) </p><p><b>  { </b&g

150、t;</p><p>  cout<<"該讀者不存在!"<<endl;</p><p><b>  break; </b></p><p><b>  }</b></p><p>  cout<<setw(10)<<"讀者

151、編號"<<setw(17)<<"讀者姓名"<<setw(20)<<"已借書編號"<<endl;</p><p>  r->disp();</p><p><b>  break;</b></p><p><b>  ca

152、se 0: </b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  break;</b></p><p><b>  case '5':</b></p

153、><p>  cout<<setw(10)<<"讀者編號"<<setw(17)<<"讀者姓名"<<setw(20)<<"已借書編號"<<endl;</p><p><b>  disp();</b></p><

154、p><b>  getch(); </b></p><p><b>  break; </b></p><p>  case '6': </p><p><b>  clear();</b></p><p><b>  break; </b

155、></p><p><b>  default: </b></p><p><b>  break; </b></p><p><b>  } </b></p><p><b>  } </b></p><p><b&g

156、t;  }</b></p><p>  void main() //實(shí)現(xiàn)程序的主界面 </p><p><b>  { </b></p><p>  char choice5; </p><p>  int bookid,readerid; </p>

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論