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

下載本文檔

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

文檔簡介

1、<p><b>  1需求分析</b></p><p><b>  1.1功能需求分析</b></p><p>  隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,傳統(tǒng)的圖書管理方式必然被計(jì)算機(jī)為基礎(chǔ)的信息管理系統(tǒng)所取代。因?yàn)樽鳛橛?jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對圖書信息進(jìn)行管理,具有著手工管理所無法比擬的優(yōu)點(diǎn):檢索迅速、查找方便、可靠性高、

2、存儲量大、保密性好、壽命長、成本低等。因此,如何設(shè)計(jì)一個(gè)管理系統(tǒng)來輔助協(xié)調(diào)和管理圖書已經(jīng)成了一個(gè)急需解決的問題。</p><p>  面對大量繁雜的圖書管理、分類、查詢與借還工作,迫切需要通過計(jì)算機(jī)來幫助解決,減少圖書館管理人員的工作量。隨著辦公自動化的深入及普及和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,圖書管理系統(tǒng)能夠隨時(shí)通過增加網(wǎng)絡(luò)設(shè)備及模塊來擴(kuò)展、升級整個(gè)系統(tǒng),達(dá)到和辦公自動化網(wǎng)絡(luò)的連接,實(shí)現(xiàn)遠(yuǎn)程管理、異地續(xù)借等功能。<

3、/p><p>  系統(tǒng)應(yīng)實(shí)現(xiàn)的操作及功能包括:</p><p>  圖書維護(hù):增加圖書,刪除圖書,查找圖書,輸出所有</p><p>  讀者維護(hù):增加讀者,刪除讀者,查找讀者,輸出讀者</p><p>  讀者:借書,還書,查找書,輸出所有</p><p><b>  1.2設(shè)計(jì)平臺</b><

4、/p><p>  Visual C++ 6.0 , Windows 2000或以上平臺</p><p><b>  2概要設(shè)計(jì)</b></p><p>  此課程設(shè)計(jì)中,涉及到知識點(diǎn)主要有:數(shù)據(jù)結(jié)構(gòu)、類、鏈表、函數(shù)調(diào)用、選擇結(jié)構(gòu)中的條件語句、循環(huán)結(jié)構(gòu)中的while語句、if 循環(huán)語句、控制語句中的break語句、字符串函數(shù),及文件的讀取等等。&l

5、t;/p><p>  2.1 基礎(chǔ)知識概述</p><p>  虛基類:在虛繼承體系中的通過virtual繼承而來的基類 </p><p>  構(gòu)造函數(shù):構(gòu)造函數(shù)是一種特殊的方法,主要用來在創(chuàng)建對象時(shí)初始化對象 即為對象成員變量賦初始值??偱cnew運(yùn)算符一起使用在創(chuàng)建對象的語句</p><p><b>  中。</b>&l

6、t;/p><p>  一個(gè)類可以有多個(gè)構(gòu)造函數(shù) 可根據(jù)其參數(shù)個(gè)數(shù)的不同或參數(shù)類型的不同來區(qū)分它們 。</p><p>  繼承: 在C++語言中,一個(gè)派生類可以從一個(gè)基類派生,也可以從多個(gè)基類派生。從一個(gè)基類派生的繼承稱為單繼承;從多個(gè)基類派生的繼承稱為多繼承。</p><p>  鏈表: 鏈表由一系列結(jié)點(diǎn)(鏈表中每一個(gè)元素稱為結(jié)點(diǎn))組成,結(jié)點(diǎn)可以在運(yùn)行時(shí)動態(tài)生成。每個(gè)

7、結(jié)點(diǎn)包括兩個(gè)部分:一個(gè)是存儲數(shù)據(jù)元素的數(shù)據(jù)域,另一個(gè)是存儲下一個(gè)結(jié)點(diǎn)地址的指針域。</p><p>  圖書管理管理系統(tǒng)一般包括圖書結(jié)點(diǎn)信息的增加、查詢、刪除、更新的輸出等功能。通過鏈表把圖書和讀者的信息。</p><p>  成員函數(shù):它是屬于一個(gè)類的成員,出現(xiàn)在類體中,它可以被指定為private(私有的)、public (公用的)或protected(受保護(hù)的)。在使用類函數(shù)時(shí),要注

8、意調(diào)用它的權(quán)限(它能否被調(diào)用)以及它的作用域(函數(shù)能使用什么范圍中的數(shù)據(jù)和函數(shù))。</p><p>  switch(表達(dá)式)</p><p><b>  { </b></p><p>  case常量表達(dá)式1: 語句1;</p><p>  case常量表達(dá)式2: 語句2;…</p><p> 

9、 case常量表達(dá)式n: 語句n;</p><p>  default : 語句n+1;</p><p><b>  }</b></p><p>  其語義是:計(jì)算表達(dá)式的值。 并逐個(gè)與其后的常量表達(dá)式值相比較,當(dāng)表達(dá)式的值與某個(gè)常量表達(dá)式的值相等時(shí),即執(zhí)行其后的語句,然后不再進(jìn)行判斷,繼續(xù)執(zhí)行后面所有case后的語句。如表達(dá)式的值與所有cas

10、e后的常量表達(dá)式均不相同時(shí),則執(zhí)行default后的語句。</p><p><b>  2.2方法及原理</b></p><p>  圖書管理系統(tǒng)是實(shí)現(xiàn)對圖書的管理與查詢,具體包括對圖書的增加,刪除,查找,以及庫存量的查詢,還可以對以上信息進(jìn)行更新,修改,刪除和添加。</p><p>  Class books ///

11、虛基類</p><p>  { </p><p>  protected:</p><p>  books_node *broot;</p><p><b>  publi

12、c:</b></p><p>  books();//構(gòu)造函數(shù)</p><p>  savebooks();//保存修改的內(nèi)容</p><p>  search_book();//查找某一本書</p><p>  print_books();//輸出所有書的信息</p><p>  virtual add_

13、book()=0;//對于讀者是還書,對于管理員添加書</p><p>  virtual delet_book()=0;//對于讀者是借書,對于管理員是去掉某一本書</p><p><b>  };</b></p><p>  Class manager:public books //管理員類

14、 </p><p><b>  {</b></p><p>  protected:</p><p>  readers_node *rroot;</p><p><b>  public:</b></p

15、><p>  manager(readers_node*);</p><p>  savereaders();</p><p>  add_book();//添加圖書信息</p><p>  delet_book();//刪除圖書</p><p>  search_reader();//查找讀者信息</p>

16、<p>  add_reader();//添加讀者</p><p>  delet_reader();//刪除讀者</p><p>  print_readers();//輸出所有讀者</p><p><b>  };</b></p><p>  class reader:public books{//讀者類&

17、lt;/p><p>  private:readers_node* personnel;//存放讀者自身信息</p><p><b>  public:</b></p><p>  reader(readers_node*);</p><p>  add_book();//還書</p><p>  r

18、eader_borrow();</p><p>  delet_book();</p><p>  reader_return();//借書</p><p>  print_me();//查看自己借書情況</p><p>  save_readers(readers_node*);</p><p><b> 

19、 };</b></p><p>  2.3 設(shè)計(jì)的思想原則</p><p>  隨著新世紀(jì)的到來,科學(xué)技術(shù)的突飛猛進(jìn),知識經(jīng)濟(jì)的日益發(fā)展,許多圖書管理系統(tǒng)已經(jīng)慢慢走向了老化。本系統(tǒng)正是針對這一現(xiàn)象設(shè)計(jì)了適應(yīng)學(xué)校管理的圖書管理系統(tǒng)。</p><p>  1.方便學(xué)生借書、還書、查找、統(tǒng)計(jì)等操作。</p><p>  2.可以自定義圖

20、書類別,讀者類別,方便添加圖書、管理圖書、添加讀者、管理讀者。</p><p>  3.提供完善的借書和還書操作。</p><p>  4.數(shù)據(jù)查詢?yōu)槟峁航栝喦闆r,書庫查詢,讀者查詢。</p><p><b>  3詳細(xì)設(shè)計(jì)和實(shí)現(xiàn)</b></p><p><b>  3.1 功能模塊</b>&l

21、t;/p><p><b>  借書</b></p><p>  reader::delet_book() </p><p><b>  {</b></p><p>  if(personnel->reader_borrow_num<max)</p><p>

22、;<b>  {</b></p><p>  books_node*node;</p><p>  node=new books_node;</p><p>  node=broot->next;</p><p>  char borrowed[15];</p><p>  cout<

23、<"輸入要借書的名子:";</p><p>  cin>>borrowed;</p><p>  while(node)</p><p><b>  {</b></p><p>  if((strcmp(node->book_name,borrowed)==0))break;&

24、lt;/p><p>  else node=node->next;</p><p><b>  }</b></p><p>  if(node&&(node->total_num-node->borrow_num)>0)</p><p><b>  {</b>&l

25、t;/p><p>  strcpy(personnel->reader_borrow_book[personnel->reader_borrow_num].borrow_books_name,node->book_name);</p><p>  strcpy(personnel->reader_borrow_book[personnel->reader_borr

26、ow_num++].borrow_books_no,node->book_num);</p><p>  node->borrow_num++;</p><p>  savebooks();</p><p><b>  }</b></p><p>  else cout<<"對不起,沒有

27、你要借的書或者所要借的書已經(jīng)借完!"<<endl;</p><p><b>  }</b></p><p>  else cout<<"對不起,你借書的數(shù)量已經(jīng)超過最大借數(shù)量"<<endl;</p><p><b>  }</b></p>&l

28、t;p>  reader::print_me()</p><p><b>  {</b></p><p>  cout<<"姓名"<<personnel->reader_name<<" 編號:"<<personnel->reader_no<<&qu

29、ot; 借書總數(shù):"<<personnel->reader_borrow_num<<endl;</p><p>  for(int i=0;i<personnel->reader_borrow_num;i++)</p><p><b>  {</b></p><p>  printf(&q

30、uot;書名:%s,書的編號:%s",personnel->reader_borrow_book[i].borrow_books_name,personnel->reader_borrow_book[i].borrow_books_no);</p><p><b>  }</b></p><p><b>  }</b><

31、;/p><p><b>  還書</b></p><p>  reader::add_book()</p><p><b>  {</b></p><p>  books_node*node;</p><p>  node=new books_node;</p>&

32、lt;p>  node=broot->next;</p><p>  char returned[15];</p><p>  cout<<"輸入要還書的名子:";</p><p>  cin>>returned;</p><p>  for(int i=0;i<personnel

33、->reader_borrow_num;i++)</p><p><b>  {</b></p><p>  if((strcmp(returned,personnel->reader_borrow_book[i].borrow_books_name))==0)break;</p><p><b>  }</b>

34、;</p><p>  if(i==personnel->reader_borrow_num+1)</p><p><b>  {</b></p><p>  printf("不好意思,你沒有此書");system("pause");</p><p><b>  }

35、</b></p><p><b>  else{</b></p><p>  while(node)</p><p><b>  {</b></p><p>  if((strcmp(node->book_name,returned)==0))break;</p>&

36、lt;p>  else node=node->next;</p><p><b>  }</b></p><p><b>  if(node)</b></p><p><b>  {</b></p><p>  personnel->reader_borrow

37、_num--;</p><p>  node->borrow_num--;</p><p>  savebooks();</p><p><b>  }</b></p><p>  else cout<<"對不起,沒有你要還的書或者所還書被刪除"<<endl;</p

38、><p><b>  }</b></p><p><b>  }</b></p><p><b>  查找書</b></p><p>  books::search_book()</p><p><b>  {</b></p>

39、;<p>  char searchedbook[15];</p><p>  cout<<"輸入要查找的書的名子:";</p><p>  cin>>searchedbook;</p><p>  books_node *r;</p><p>  r=new books_node;&

40、lt;/p><p>  r=broot->next;</p><p><b>  while(r)</b></p><p><b>  {</b></p><p>  if((strcmp(searchedbook,r->book_name))==0)</p><p>

41、;<b>  {</b></p><p>  cout<<"書名:"<<r->book_name<<" 書的總量:"<<r->total_num<<" 借出:"<<r->borrow_num<<"

42、 書的編號:"<<r->book_num<<endl;break;</p><p><b>  }</b></p><p>  r=r->next;</p><p><b>  }</b></p><p>  if(r==NULL)cout<&l

43、t;"對不起,沒有此書"<<endl;</p><p><b>  }</b></p><p><b>  輸出所有</b></p><p>  books::print_books()</p><p><b>  {</b></p>

44、;<p>  books_node *r;</p><p>  r=new books_node;</p><p>  r=broot->next;</p><p><b>  while(r)</b></p><p><b>  {</b></p><p&g

45、t;  cout<<"書名:" <<r->book_name<<" 書的總量:"<<r->total_num<<" 借出:"<< r->borrow_num <<" 書的編號:"<<r->book_num<<endl;<

46、/p><p>  r=r->next;</p><p><b>  }</b></p><p><b>  delete r;</b></p><p><b>  }</b></p><p><b>  自身信息</b></

47、p><p>  reader::print_me()</p><p><b>  {</b></p><p>  cout<<"姓名"<<personnel->reader_name<<" 編號:"<<personnel->reader_no&l

48、t;<" 借書總數(shù):"<<personnel->reader_borrow_num<<endl;</p><p>  for(int i=0;i<personnel->reader_borrow_num;i++)</p><p><b>  {</b></p><p>  

49、printf("書名:%s,書的編號:%s",personnel->reader_borrow_book[i].borrow_books_name,personnel->reader_borrow_book[i].borrow_books_no);</p><p><b>  }</b></p><p><b>  }<

50、/b></p><p><b>  3.2系統(tǒng)流程圖</b></p><p><b>  圖3.2.1</b></p><p><b>  4調(diào)試與操作說明</b></p><p><b>  管理員身份登錄:</b></p><

51、p>  圖書維護(hù) :增加圖書,刪除圖書,查找圖書,輸出所有</p><p>  讀者維護(hù):增加讀者,刪除讀者,查找讀者,輸出所有</p><p>  這兩項(xiàng)由其他組員完成</p><p><b>  讀者身份登錄:</b></p><p><b>  圖4.1</b></p>&

52、lt;p><b>  用戶登錄</b></p><p><b>  圖4.2</b></p><p><b>  借書模塊</b></p><p><b>  圖4.3</b></p><p><b>  還書模塊</b><

53、;/p><p><b>  圖4.4</b></p><p><b>  查找書</b></p><p><b>  圖4.5</b></p><p><b>  輸出所有</b></p><p><b>  圖4.6<

54、/b></p><p><b>  自身信息</b></p><p><b>  圖4.7</b></p><p><b>  總結(jié)</b></p><p>  這次課程設(shè)計(jì)使我對做系統(tǒng)的認(rèn)識深刻了許多。雖然在整個(gè)設(shè)計(jì)過程中遇到很多問題不會解決,但在自己的努力以及同學(xué)

55、老師的幫助下,最終和同組伙伴一起完成了該系統(tǒng)。當(dāng)看到自己做的程序能運(yùn)行時(shí),心中充滿了成就感。在克服困難的過程中,對自己所學(xué)知識的掌握程度也有了比較清楚的了解。綜合起來,主要體現(xiàn)在以下幾個(gè)方面:</p><p>  首先,對數(shù)據(jù)結(jié)構(gòu),C++,C#的掌握還不夠。雖然完成了程序,但是只用到了基本的結(jié)點(diǎn)以及鏈表,在數(shù)據(jù)結(jié)構(gòu)的選擇上避重就輕,覆蓋面較小,不能很好的體現(xiàn)各種數(shù)據(jù)結(jié)構(gòu)的掌握度,同時(shí)也缺少了適當(dāng)?shù)腻憻?,在這方面還

56、需要自己主動去提高。</p><p>  其次,在程序整體的設(shè)計(jì)上還不夠完善,各模塊可以適當(dāng)增加內(nèi)容,界面還可以更加的人性化些,同時(shí)可考慮從面向?qū)ο蠓矫嫒胧郑@樣整個(gè)程序才具有更強(qiáng)的美觀性與實(shí)用性。</p><p>  最后,我覺得該程序還有很大的改進(jìn)空間,譬如可以用多文件做,這樣功能更強(qiáng)大,也便于以后更好地改進(jìn)和完善程序;而在程序的內(nèi)容方面,還能增加更多功能,以滿足不同需要的各種要求。&

57、lt;/p><p>  但是,值得欣慰的是,該程序基本完成里設(shè)計(jì)要求,并能順利運(yùn)行,界面清晰易理解,且具備各項(xiàng)基本功能,易于操作;而且代碼部分有注釋,簡單易懂。</p><p>  總而言之,這次課程設(shè)計(jì)給了我很大啟發(fā),我明白了,不管遇到什么問題,只要抓住根源,不氣餒,從不同方面去攻破它,終究會成功,生活也是如此。這次課程設(shè)計(jì)是我真正的去做的一個(gè)系統(tǒng),肯定會有很多不足,但是我很欣慰。</

58、p><p><b>  致謝</b></p><p>  本次課程設(shè)計(jì)中,我有通過自己的努力,但也得到了很多來自他方的幫助,在這里我要謝謝所有幫助過我的老師同學(xué)。</p><p>  首先,我要謝謝淮陰工學(xué)院計(jì)算機(jī)工程系給我提供了這次難得的實(shí)踐機(jī)會,以及實(shí)驗(yàn)室人員提供的方便舒適的實(shí)驗(yàn)環(huán)境!其次,我要謝謝這次課程設(shè)計(jì)的輔導(dǎo)老師夏森老師和江波老師給

59、予我的幫助和辛勤指導(dǎo),以及和我一起合作的同學(xué)的共同互助。在設(shè)計(jì)過程中,我遇到了諸多的困難與麻煩,如果沒有他們的悉心指導(dǎo)與共同研討,我也不能這么順利的完成本次的課程設(shè)計(jì),在這里衷心得對他們表示深深的謝意,謝謝!最后,我要謝謝我的其他同學(xué),多謝他們給我所提的建議以及他們給予我的幫助。</p><p>  當(dāng)然,在本次課程設(shè)計(jì)的完成過程中,我也參考了很多資料參考書,以及瀏覽了很多網(wǎng)站。所以我也要謝謝這些書籍的著作者,及

60、各網(wǎng)站提供信息的作者們。在這里還要特別謝謝www.baidu.com網(wǎng)站給我的指導(dǎo)和幫助。同時(shí)謝謝淮陰工學(xué)院圖書館,給我提供了豐富的書籍資料!</p><p><b>  參考文獻(xiàn)</b></p><p>  1 殷人昆主編.數(shù)據(jù)結(jié)構(gòu)(用面向?qū)ο蠓椒ㄅcC++語言描述).第2版.北京:清華大學(xué)出版社,2007</p><p>  2 寧正元,易金

61、聰.數(shù)據(jù)結(jié)構(gòu)習(xí)題解析與上機(jī)實(shí)驗(yàn)指導(dǎo).北京:中國水利水電出版社,2000</p><p>  3 吳乃陵,況迎輝.C++程序設(shè)計(jì).第2版.北京:高等教育出版社,2006</p><p>  4 揣錦華.面向?qū)ο蟪绦蛟O(shè)計(jì)與VC++實(shí)踐.西安:西安電子科技大學(xué)出版社,2005</p><p>  5 蘇仕華.?dāng)?shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì).機(jī)械工業(yè)出版社,2005</p>

62、<p>  6 李春葆,金晶.?dāng)?shù)據(jù)結(jié)構(gòu)教程.清華大學(xué)出版社,2006</p><p>  7揣錦華.面向?qū)ο蟪绦蛟O(shè)計(jì)與VC++實(shí)踐.西安電子科技大學(xué)出版社,2006</p><p>  8王曉東.數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計(jì).電子工業(yè)出版社,2002</p><p>  9 陳慧南.數(shù)據(jù)結(jié)構(gòu)-使用C++語言描述.東南大學(xué)出版社,2001</p>&l

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論