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

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  圖書信息管理系統(tǒng)</b></p><p><b>  設(shè)計(jì)目的:</b></p><p>  為了鍛煉計(jì)算機(jī)專業(yè)學(xué)生的編程能力,特別組織了這次軟件實(shí)習(xí),編程是一種抽象思維,必須要通過(guò)動(dòng)手才能培養(yǎng)其能力,我們軟件實(shí)習(xí)的主要目的是要求學(xué)生對(duì)所學(xué)的語(yǔ)言熟練的掌握,并可以精通一門自己喜歡的編程語(yǔ)言,并且能把現(xiàn)實(shí)的問(wèn)題抽象成程

2、序,用程序語(yǔ)言表現(xiàn)出來(lái)。</p><p>  1.能根據(jù)實(shí)際問(wèn)題的具體情況,結(jié)合面向?qū)ο蟮幕纠碚摵突炯记桑_分析問(wèn)題,并能設(shè)計(jì)出解決問(wèn)題的有效算法與程序。</p><p>  2.提高程序設(shè)計(jì)和調(diào)試能力。學(xué)生通過(guò)上機(jī)實(shí)習(xí),驗(yàn)證自己設(shè)計(jì)的算法和程序的正確性。學(xué)會(huì)有效利用基本調(diào)試方法,迅速找出程序代碼中的錯(cuò)誤并且修改,進(jìn)一步提高程序設(shè)計(jì)水平。</p><p>&l

3、t;b>  設(shè)計(jì)要求:</b></p><p>  圖書信息包括:登錄號(hào)、書名、作者名、分類號(hào)、出版單位、出版時(shí)間、價(jià)格等。試設(shè)計(jì)一圖書信息管理系統(tǒng),使之能提供以下功能:</p><p>  系統(tǒng)以菜單方式工作?</p><p>  圖書信息錄入功能(圖書信息用文件保存)--輸入?</p><p>  圖書信息瀏覽功能--輸

4、出?</p><p>  查詢和排序功能:(至少一種查詢方式)--算法?</p><p><b>  按書名查詢</b></p><p><b>  按作者名查詢</b></p><p>  圖書信息的刪除與修改(可選項(xiàng))</p><p><b>  流程圖:<

5、;/b></p><p><b>  四、模塊分析:</b></p><p> ?。?)main()函數(shù)模塊</p><p>  主函數(shù)定義了一個(gè)database類的對(duì)象book2,通過(guò)這個(gè)對(duì)象調(diào)用bookdata(),主函數(shù)代碼很少,只是一個(gè)菜單首頁(yè)。</p><p>  int main()</p>

6、;<p>  { database book2; </p><p>  cout<<endl<<endl<<"\t\t\t圖 書 信 息 管 理 系 統(tǒng)";</p><p>  cout<<endl<<endl;</p><p>  book2

7、.bookdata();</p><p>  return 0;}</p><p> ?。?)添加圖書信息模塊</p><p>  void addbook(int n,char *bn,char *an,char *ty,char *pub,char *ti,char *pr) //增加圖書</p><p>  {

8、 num=n; </p><p>  strcpy(bname,bn); //把輸入的內(nèi)容復(fù)制給bname</p><p>  strcpy(aname,an);</p><p>  strcpy(type,ty);</p><p>  strcpy(publish,pub);</p><

9、;p>  strcpy(time,ti);</p><p>  strcpy(price,pr);}</p><p>  用戶通過(guò)鍵盤輸入圖書基本信息(圖書編號(hào),書名,作者名,圖書類型,出版日期,出版單位,圖書價(jià)格)</p><p> ?。?)顯示圖書文件中所有圖書信息</p><p>  void show() <

10、/p><p>  {cout<<setw(10)<<num<<setw(9)<<bname<<setw(9)<<aname<<setw(8)<<type<<setw(6)<<publish<<setw(20)<<time<<setw(9)<<price

11、<<setw(5)<<endl;}</p><p>  void show()</p><p>  { for (int i=0;i<=top;i++)</p><p>  book1[i].show();</p><p><b>  }</b></p><p> 

12、 (4)查詢圖書信息模塊</p><p>  book *find(int id) //查找圖書</p><p>  {for (int i=0;i<=top;i++)</p><p>  if (book1[i].getnum()==id)</p><p>  {return &book1[i];}</

13、p><p><b>  }</b></p><p>  五、程序的源代碼(含注釋):</p><p>  #include"iostream"</p><p>  #include "iomanip"</p><p>  #include "strin

14、g"</p><p>  #include "fstream" /*輸入/輸出文件流類*/</p><p>  using namespace std;</p><p>  const int max=5; /*數(shù)組5,圖書添加五本*/</p><p&

15、gt;  class book</p><p><b>  {</b></p><p><b>  private:</b></p><p>  int num; //圖書編號(hào)</p><p>  char bname[20]; //書名</p>&l

16、t;p>  char aname[20]; //作者名 </p><p>  char type[20]; //圖書類型</p><p>  char publish[20]; //出版單位</p><p>  char time[20]; //出版時(shí)間</p><p>  char pr

17、ice[20];//價(jià)格 </p><p><b>  public:</b></p><p>  void query(int m){};</p><p>  int getnum()</p><p>  { return num;}</p><p>  char getbname()&l

18、t;/p><p>  { return bname[20];}</p><p>  char getaname()</p><p>  { return aname[20];}</p><p>  char gettype()</p><p>  { return type[20];}</p><

19、p>  char getpublish()</p><p>  { return publish[20]; }</p><p>  char gettime()</p><p>  { return time[20];} </p><p>  char getprice()</p><p>  {retur

20、n price[20];} </p><p>  void addbook(int n,char *bn,char *an,char *ty,char *pub,char *ti,char *pr) //增加圖書</p><p><b>  {</b></p><p>  num=n; </p>

21、<p>  strcpy(bname,bn); //把輸入的內(nèi)容復(fù)制給bname,相當(dāng)于復(fù)制</p><p>  strcpy(aname,an);</p><p>  strcpy(type,ty);</p><p>  strcpy(publish,pub);</p><p>  strcpy(time,ti

22、);</p><p>  strcpy(price,pr);</p><p><b>  }</b></p><p>  void show() //輸出圖書</p><p><b>  {</b></p><p>  cout<<setw(10)&

23、lt;<num<<setw(9)<<bname<<setw(9)<<aname<<setw(8)<<type<<setw(6)<<publish<<setw(20)<<time<<setw(9)<<price<<setw(5)<<endl;</p>

24、<p>  } </p><p><b>  };</b></p><p>  class database</p><p><b>  {</b></p><p><b>  private:</b></p><p>

25、;  int top; //圖書記錄指針</p><p>  book book1[max]; //圖書記錄</p><p><b>  public:</b></p><p>  database() //構(gòu)造函數(shù),將book.

26、dat讀到book1[]中</p><p><b>  { </b></p><p><b>  book b;</b></p><p>  top=-1; //數(shù)組首地址是從[0]開(kāi)始的</p><p>  fstream file("book.dat&

27、quot;,ios::in);</p><p><b>  while (1)</b></p><p><b>  {</b></p><p>  file.read((char *)&b,sizeof(b));</p><p>  if (!file) break;</p>

28、<p>  top++; </p><p>  book1[top]=b;</p><p><b>  }</b></p><p>  file.close();</p><p><b>  } </b></p><p>  int add

29、book(int n,char *an,char *bn,char *ty,char *pub,char *ti,char *pr) </p><p><b>  {</b></p><p><b>  top++;</b></p><p>  book1[top].addbook(n,an,bn,ty,

30、pub,ti,pr); </p><p>  return 1; //返回到while,文件里增加一本書</p><p><b>  return 0;</b></p><p><b>  }</b></p><p>  void bookdata();

31、 //圖書庫(kù)</p><p>  void show()</p><p><b>  {</b></p><p>  for (int i=0;i<=top;i++)</p><p>  book1[i].show();</p><p><b>  }</b>

32、</p><p>  ~database() //析構(gòu)函數(shù),將book1[]寫到book.dat文件中</p><p><b>  {</b></p><p>  fstream file("book.dat",ios::out);</p><p>  for (

33、int i=0;i<=top;i++)</p><p>  file.write((char *)&book1[i],sizeof(book1[i]));</p><p>  file.close();</p><p><b>  }</b></p><p><b>  };</b>&

34、lt;/p><p>  void database::bookdata() //bookdata 函數(shù)實(shí)現(xiàn)部分</p><p><b>  {</b></p><p>  char choice;</p><p><b>  int id;</b></p&g

35、t;<p>  char bbname[40];</p><p>  char baname[40];</p><p>  char btype[20];</p><p>  char bpublish[40];</p><p>  char btime[40];</p><p>  char bpric

36、e[40];</p><p>  while (choice!='4')</p><p><b>  { </b></p><p>  cout<<"-----------------------------------------------------------------------------

37、---\n";</p><p>  cout<<endl;</p><p>  cout<<"\t\t\t圖 書 信 息 管 理 系 統(tǒng)\n\n";</p><p>  cout<<"\t\t\t 1 新 增 圖 書\n\n";</p>&

38、lt;p>  cout<<"\t\t\t 2 顯 示 圖 書\n\n";</p><p>  cout<<"\t\t\t 3 查 找 圖 書\n\n";</p><p>  cout<<"\t\t\t 4 返 回 主 界 面 \n\n";<

39、/p><p>  cout<<endl;</p><p>  cout<<"--------------------------------------------------------------------------------\n";</p><p>  cout<<" 請(qǐng) 繼 續(xù) 選 擇(1,

40、2,3,4):";</p><p>  cin>>choice; </p><p>  switch (choice)</p><p><b>  {</b></p><p><b>  case 1:</b></p><p>  cout<<

41、;"請(qǐng)輸入圖書信息(圖書編號(hào)、書名、作者、類型、出版單位、出版時(shí)間、價(jià)格)"<<endl;</p><p>  cin>>id>>bbname>>baname>>btype>>bpublish>>btime>>bprice;</p><p>  addbook(id,bbn

42、ame,baname,btype,bpublish,btime,bprice);</p><p>  cout<<"--------------------------------------------------------------------------------"<<endl;</p><p>  cout<<"

43、;圖書信息已存入系統(tǒng)文件中"<<endl;</p><p>  cout<<"--------------------------------------------------------------------------------"<<endl;</p><p><b>  break;</b>

44、;</p><p><b>  case 2:</b></p><p>  cout<<setw(15)<<"圖書編號(hào)"<<setw(7)<<"書名"<<setw(10)<<"作者名"<<setw(7)<<&quo

45、t;類型"<<setw(10)<<"出版單位"<<setw(12)<<"出版時(shí)間"<<setw(10)<<"價(jià)格"<<endl;</p><p><b>  show();</b></p><p><b&g

46、t;  break;</b></p><p><b>  case 3:</b></p><p>  cout << "輸入圖書編號(hào):"; </p><p>  cin >> id; </p><p>  void book::query (int id)<

47、;/p><p><b>  {</b></p><p>  for (int i=0;i<=top;i++) </p><p><b>  {</b></p><p>  if (book[i].getnum()==id ) </p><p>  book[i].show

48、(); break;</p><p><b>  else </b></p><p>  return NULL; </p><p><b>  } </b></p><p>  if (id==NULL) </p><p><b>  { </b&

49、gt;</p><p>  cout << " 該讀者不存在 "<<endl; </p><p><b>  break; </b></p><p><b>  }</b></p><p><b>  }</b></p>

50、;<p><b>  case 4:</b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b><

51、;/p><p>  //main() 函數(shù)的實(shí)現(xiàn),程序的主界面的引導(dǎo)</p><p>  void main()</p><p><b>  { </b></p><p><b>  int n;</b></p><p>  char choice;</p>

52、<p>  database book2;</p><p>  while(choice!='2')</p><p><b>  { </b></p><p>  cout<<endl<<endl<<"\t\t\t圖 書 信 息 管 理 系 統(tǒng)&quo

53、t;;</p><p>  cout<<endl<<endl;</p><p>  cout<<" \t\t\t 1 進(jìn) 入 系 統(tǒng)\n\n \t\t\t 2 退 出"<<endl;</p><p>  cout<<" 您 好, 請(qǐng)

54、選 擇(1或2):";</p><p>  cin>>choice;</p><p>  switch(choice)</p><p><b>  {</b></p><p>  case '1': </p><p

55、>  book2.bookdata();</p><p><b>  break; </b></p><p><b>  case '2':</b></p><p>  cout<<"\n\n\t\t\t謝 謝 使 用!\n\n";</p><

56、p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  五.總結(jié):</b></p>

溫馨提示

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

評(píng)論

0/150

提交評(píng)論