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

下載本文檔

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

文檔簡介

1、<p>  《面向?qū)ο蟪绦蛟O(shè)計(jì)C++》</p><p>  課程設(shè)計(jì)圖書管理系統(tǒng)說明書</p><p>  組 員: </p><p>  院 系: 電子信息工程學(xué)院 </p><p>  專 業(yè) 班 級: 計(jì)算機(jī)*** &

2、lt;/p><p>  指 導(dǎo) 教 師: </p><p>  日期: 2011年12月 </p><p><b>  目錄</b></p><p>  《面向?qū)ο蟪绦蛟O(shè)計(jì)C++》1</p><p>  課程設(shè)計(jì)圖書管理系統(tǒng)說明書1</p&

3、gt;<p><b>  一、實(shí)驗(yàn)?zāi)康?</b></p><p><b>  二、實(shí)驗(yàn)原理2</b></p><p><b>  1、類與對象3</b></p><p><b>  2、構(gòu)造函數(shù)3</b></p><p>  3、繼承

4、、虛函數(shù)3</p><p><b>  三、實(shí)驗(yàn)要求3</b></p><p><b>  1. 實(shí)驗(yàn)準(zhǔn)備3</b></p><p><b>  2. 實(shí)驗(yàn)步驟3</b></p><p>  3. 系統(tǒng)主要功能:4</p><p>  四、實(shí)驗(yàn)

5、儀器設(shè)備和軟件環(huán)境4</p><p>  五、實(shí)驗(yàn)步驟及結(jié)果測試及分析。4</p><p><b>  六.實(shí)驗(yàn)心得8</b></p><p>  七.附錄(部分關(guān)鍵代碼)9</p><p><b>  八.參考文獻(xiàn)12</b></p><p>  背景: 課程設(shè)

6、計(jì)比教學(xué)實(shí)驗(yàn)復(fù)雜,涉及的深度較廣,并更加實(shí)用。目的是通過課程設(shè)計(jì)的綜合訓(xùn)練,培養(yǎng)實(shí)際分析問題和編程能力。最終目標(biāo)是通過課程設(shè)計(jì)的形式,幫助學(xué)習(xí)者系統(tǒng)地掌握該門課程的主要內(nèi)容,更好地完成學(xué)習(xí)任務(wù)。另外,課程設(shè)計(jì)中的較大規(guī)模的綜合設(shè)計(jì),可以分成幾個(gè)小項(xiàng)目進(jìn)行分工合作,以培養(yǎng)團(tuán)隊(duì)協(xié)作精神。</p><p><b>  一、實(shí)驗(yàn)?zāi)康?lt;/b></p><p>  綜合復(fù)習(xí)課程的

7、所有知識點(diǎn),進(jìn)一步熟練面向?qū)ο蟪绦虻拈_發(fā)方法和流程,提高獨(dú)立分析問題和解決問題的能力,進(jìn)一步培養(yǎng)動(dòng)手實(shí)踐技能。</p><p><b>  實(shí)驗(yàn)內(nèi)容主要包括:</b></p><p> ?。?)了解圖書管理系統(tǒng)的功能,需要完成的主要任務(wù);</p><p> ?。?)掌握類、對象、繼承等面向?qū)ο蠹夹g(shù)的編程實(shí)現(xiàn);</p><p&

8、gt; ?。?)掌握如何進(jìn)行一個(gè)較完整系統(tǒng)的整合。</p><p><b>  二、實(shí)驗(yàn)原理</b></p><p>  在以往學(xué)習(xí)的基礎(chǔ)上,對以往所學(xué)內(nèi)容進(jìn)行整合,綜合運(yùn)用類、對象、繼承等面向?qū)ο蠹夹g(shù),進(jìn)行圖書管理系統(tǒng)的開發(fā)。</p><p>  面向?qū)ο蟮膸讉€(gè)基本概念:</p><p><b>  1、類與

9、對象</b></p><p>  類是C++語言封裝的基本單位,用來創(chuàng)建對象,它是定義對象形式的模板,指定代碼和數(shù)據(jù)。C++使用類的規(guī)范構(gòu)建對象,對象是類的實(shí)例。定義一個(gè)類時(shí),要聲明其包含的數(shù)據(jù)以及處理這些數(shù)據(jù)的代碼。數(shù)據(jù)包含于由類定義的實(shí)例變量中,代碼則包含于函數(shù)中,組成類的代碼和數(shù)據(jù)稱為這個(gè)類的成員?!?lt;/p><p><b>  2、構(gòu)造函數(shù)</b>

10、</p><p>  構(gòu)造函數(shù)在對象創(chuàng)建時(shí)進(jìn)行初始化,為類定義的實(shí)例變量賦初始值,或者執(zhí)行一個(gè)結(jié)構(gòu)完整的對象必須的任何其他啟動(dòng)過程。</p><p><b>  3、繼承、虛函數(shù)</b></p><p>  繼承允許一個(gè)類繼承另一個(gè)類的特征。使用繼承可以創(chuàng)建一個(gè)普通類,定義一組相關(guān)對象的共有特征,然后這個(gè)類可以由另一個(gè)更為具體的類繼承,每個(gè)類都

11、可以增加自己獨(dú)有的元素。虛函數(shù)建立在繼承的基礎(chǔ)上,支持多態(tài),即“一個(gè)接口多種方法”的面向?qū)ο缶幊淘瓌t。</p><p>  在C++中被繼承的類叫基類,繼承基類的類是派生類。因此,派生類就是基類的具體版本。派生類繼承基類定義的所有成員并添加自己的獨(dú)特元素。C++通過允許一個(gè)類將另一個(gè)類合并到其聲明中來實(shí)現(xiàn)繼承。</p><p>  C++支持多態(tài)性的基礎(chǔ),由繼承和基類指針組成,實(shí)際實(shí)現(xiàn)多態(tài)

12、性的具體功能就是虛函數(shù)。虛函數(shù)在基類中聲明為virtual,并在一個(gè)或多個(gè)派生類中重新定義。因此,每個(gè)派生類都可以有自己的虛函數(shù)版本。調(diào)用時(shí),C++根據(jù)指針指向的對象的類型確定調(diào)用函數(shù)的哪個(gè)版本。因此,如果基類包含虛函數(shù)且有兩個(gè)或多個(gè)類由基類派生而來,那么當(dāng)通過基類指針指向不同類型對象時(shí),就會執(zhí)行不同版本的虛函數(shù)。多態(tài)性是面向?qū)ο缶幊痰幕竟δ埽驗(yàn)樗试S一般化的類指定類的所有派生類共用的那些函數(shù),同時(shí)允許派生類定義所有這些函數(shù)或其中一

13、部分函數(shù)的具體實(shí)現(xiàn)。</p><p><b>  三、實(shí)驗(yàn)要求</b></p><p><b>  1. 實(shí)驗(yàn)準(zhǔn)備</b></p><p>  綜合復(fù)習(xí)編寫該程序要用到的所有知識點(diǎn)。</p><p>  安裝 Visual C++6.0 集成開發(fā)環(huán)境。 </p><p>&l

14、t;b>  2. 實(shí)驗(yàn)步驟 </b></p><p>  調(diào)研:到圖書館、資料室調(diào)研圖書管理方式及圖書分類的國家標(biāo)準(zhǔn)。</p><p>  系統(tǒng)分析:分析系統(tǒng)的構(gòu)成模塊和開發(fā)流程。</p><p>  系統(tǒng)開發(fā):按照系統(tǒng)模塊的劃分和開發(fā)流程,編寫程序代碼。 </p><p>  系統(tǒng)測試:做單元、接口、集成測試,白盒和黑盒兩

15、種方法相結(jié)合。 </p><p>  系統(tǒng)提交:提交程序,實(shí)驗(yàn)報(bào)告,測試數(shù)據(jù)和結(jié)果。 </p><p>  3. 系統(tǒng)主要功能:</p><p><b> ?。?)讀者借書。</b></p><p><b> ?。?)讀者還書。</b></p><p><b>  

16、(3)圖書維護(hù)。</b></p><p><b> ?。?)讀者維護(hù)。</b></p><p>  四、實(shí)驗(yàn)儀器設(shè)備和軟件環(huán)境</p><p>  計(jì)算機(jī),Windows2000或WindowsXP操作系統(tǒng),Visual C++6.0</p><p>  五、實(shí)驗(yàn)步驟及結(jié)果測試及分析。</p>

17、<p>  對多個(gè)模擬數(shù)據(jù)進(jìn)行測試,觀察圖書、讀者信息的更新,對系統(tǒng)的各項(xiàng)功能都要進(jìn)行一一測試,充分運(yùn)用黑盒測試和白盒測試等手段進(jìn)行。</p><p> ?。ㄒ唬┫到y(tǒng)主功能模塊圖</p><p>  圖1 系統(tǒng)功能模塊圖</p><p><b> ?。ǘ┫到y(tǒng)運(yùn)行截圖</b></p><p><b>

18、  記錄操作區(qū)</b></p><p><b>  字串表</b></p><p><b>  六.實(shí)驗(yàn)心得</b></p><p>  這次課程設(shè)計(jì)讓我掌握了許多的有用知識。首先通過不斷地學(xué)習(xí)和鍛煉更加熟悉地掌握應(yīng)用軟件Microsoft Visual C++6.0了。設(shè)計(jì)正確及合適的程序

19、對于我們初心者來說是很大的難題,出現(xiàn)一丁點(diǎn)錯(cuò)誤就得費(fèi)很大努力去修改,正式這一步步一點(diǎn)點(diǎn)的努力讓我對C語言有了更加深刻的認(rèn)識。同時(shí)我掌握了解決問題的方法,無論是對以后的學(xué)習(xí)、生活都有無比重要的價(jià)值</p><p>  在這次課程設(shè)計(jì)中,我們小組完成了圖書管理系統(tǒng)的設(shè)計(jì),小組內(nèi)的分工和相互協(xié)調(diào)很重要,大家在分工中揚(yáng)長避短,個(gè)及所長,很好的提高了大家的積極性和合作意識,并有效的縮短了完成時(shí)間。通過這次的設(shè)計(jì),我學(xué)到了

20、很多,同時(shí)也學(xué)會了細(xì)心與耐心的培養(yǎng)。我想這在將來的工作或社會“旅程”中都將起到很大的幫助。</p><p>  在設(shè)計(jì)中,每個(gè)同學(xué)都會遇到一些困難,或多或少,這些困難常常讓我心情煩躁,比如不能清晰的建立設(shè)計(jì)模板,不會修改出現(xiàn)的錯(cuò)誤等等,然后我向同學(xué)尋求幫助,向他們學(xué)習(xí),最終通過自己努力建立了模版。不可避免程序中肯定依然存在著某些問題,我希望在以后的學(xué)習(xí)和應(yīng)用中不斷提高自己的能力,攻克遇到的難題。同時(shí)我也深刻的體會

21、到團(tuán)隊(duì)的合作是多么的重要</p><p>  在學(xué)習(xí)C++以前,我認(rèn)為c++只是在c語言的基礎(chǔ)上的一種延伸,認(rèn)為只要學(xué)習(xí)c預(yù)言就可以用c語言的那種設(shè)計(jì)思想來學(xué)習(xí)c++\設(shè)計(jì)c++程序。只是由于抱了這種思想,是我在一開始學(xué)習(xí)c++的時(shí)候遇到了很大的困難,我沒有辦法體會面向?qū)ο蟮脑O(shè)計(jì)思想,我在學(xué)習(xí)這門課的時(shí)候老是想著實(shí)現(xiàn)這個(gè)函數(shù)功能的具體過程,而沒有太注意對象分類的重要性。在學(xué)習(xí)這門課的過程中,我感受到了自己親手編程

22、序、調(diào)程序的重要性,我們要熟悉c++的語法、體會調(diào)試的思想,最好的一個(gè)手段就是自己動(dòng)手編程、調(diào)試,這會比我們一味的看書效果好得多。</p><p>  七.附錄(部分關(guān)鍵代碼)</p><p>  // 102圖書城View.h : interface of the C102View class</p><p><b>  //</b><

23、/p><p>  /////////////////////////////////////////////////////////////////////////////</p><p>  #if !defined(AFX_102VIEW_H__641E7367_4011_40C3_9046_91B74C65F92C__INCLUDED_)</p><p>  #d

24、efine AFX_102VIEW_H__641E7367_4011_40C3_9046_91B74C65F92C__INCLUDED_</p><p>  #if _MSC_VER > 1000</p><p>  #pragma once</p><p>  #endif // _MSC_VER > 1000</p><p>

25、  class C102Set;</p><p>  class C102View : public CRecordView</p><p><b>  {</b></p><p>  protected: // create from serialization only</p><p>  C102View();&l

26、t;/p><p>  DECLARE_DYNCREATE(C102View)</p><p><b>  public:</b></p><p>  //{{AFX_DATA(C102View)</p><p>  enum { IDD = IDD_102_FORM };</p><p>  C102

27、Set* m_pSet;</p><p>  //}}AFX_DATA</p><p>  // Attributes</p><p><b>  public:</b></p><p>  C102Doc* GetDocument();</p><p>  // Operations</p

28、><p><b>  public:</b></p><p>  // Overrides</p><p>  // ClassWizard generated virtual function overrides</p><p>  //{{AFX_VIRTUAL(C102View)</p><p>

29、;<b>  public:</b></p><p>  virtual CRecordset* OnGetRecordset();</p><p>  virtual BOOL PreCreateWindow(CREATESTRUCT& cs);</p><p>  protected:</p><p>  v

30、irtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support</p><p>  virtual void OnInitialUpdate(); // called first time after construct</p><p>  virtual BOOL OnPreparePrinting(CPrint

31、Info* pInfo);</p><p>  virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);</p><p>  virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);</p><p>  //}}AFX_VIRTUAL</p>

32、;<p>  // Implementation</p><p><b>  public:</b></p><p>  virtual ~C102View();</p><p>  #ifdef _DEBUG</p><p>  virtual void AssertValid() const;</

33、p><p>  virtual void Dump(CDumpContext& dc) const;</p><p><b>  #endif</b></p><p>  protected:</p><p>  // Generated message map functions</p><p&

34、gt;  protected:</p><p>  //{{AFX_MSG(C102View)</p><p>  afx_msg void OnButtonaddnew();</p><p>  afx_msg void OnButtondelete();</p><p>  afx_msg void OnButtonupdate();&l

35、t;/p><p>  afx_msg void OnButtonfirst();</p><p>  afx_msg void OnButtonprev();</p><p>  afx_msg void OnButtonnext();</p><p>  afx_msg void OnButtonlast();</p><p

36、>  afx_msg void OnRadio1();</p><p>  afx_msg void OnRadio2();</p><p>  afx_msg void OnButton3();</p><p>  //}}AFX_MSG</p><p>  DECLARE_MESSAGE_MAP()</p><p

37、><b>  };</b></p><p>  #ifndef _DEBUG // debug version in 102圖書城View.cpp</p><p>  inline C102Doc* C102View::GetDocument()</p><p>  { return (C102Doc*)m_pDocument; }&l

38、t;/p><p><b>  #endif</b></p><p>  /////////////////////////////////////////////////////////////////////////////</p><p>  //{{AFX_INSERT_LOCATION}}</p><p>  //

39、Microsoft Visual C++ will insert additional declarations immediately before the previous line.</p><p>  #endif // !defined(AFX_102VIEW_H__641E7367_4011_40C3_9046_91B74C65F92C__INCLUDED_)</p><p>

40、  // 102圖書城Set.h : interface of the C102Set class</p><p><b>  //</b></p><p>  /////////////////////////////////////////////////////////////////////////////</p><p>  #if

41、!defined(AFX_102SET_H__98C62E7F_389F_49F6_9454_A2D60835C2C4__INCLUDED_)</p><p>  #define AFX_102SET_H__98C62E7F_389F_49F6_9454_A2D60835C2C4__INCLUDED_</p><p>  #if _MSC_VER > 1000</p>

42、<p>  #pragma once</p><p>  #endif // _MSC_VER > 1000</p><p>  class C102Set : public CRecordset</p><p><b>  {</b></p><p><b>  public:</b&g

43、t;</p><p>  C102Set(CDatabase* pDatabase = NULL);</p><p>  DECLARE_DYNAMIC(C102Set)</p><p>  // Field/Param Data</p><p>  //{{AFX_FIELD(C102Set, CRecordset)</p>

44、<p>  CStringm_bookID;</p><p>  CStringm_bookname;</p><p>  CStringm_class;</p><p>  CStringm_outhor;</p><p>  CStringm_price;</p><p>  intm_num

45、ber;</p><p>  CStringm_introduce;</p><p>  CStringm_public;</p><p>  CTimem_publictime;</p><p>  CStringm_stdnum;</p><p>  CStringm_bookID2;</p>

46、<p>  CStringm_bookname2;</p><p>  CTimem_brotime;</p><p>  CStringm_identity;</p><p>  CStringm_stdname;</p><p>  //}}AFX_FIELD</p><p>  // Ove

47、rrides</p><p>  // ClassWizard generated virtual function overrides</p><p>  //{{AFX_VIRTUAL(C102Set)</p><p><b>  public:</b></p><p>  virtual CString GetDe

48、faultConnect();// Default connection string</p><p>  virtual CString GetDefaultSQL(); // default SQL for Recordset</p><p>  virtual void DoFieldExchange(CFieldExchange* pFX);// RFX support<

49、;/p><p>  //}}AFX_VIRTUAL</p><p>  // Implementation</p><p>  #ifdef _DEBUG</p><p>  virtual void AssertValid() const;</p><p>  virtual void Dump(CDumpContext

50、& dc) const;</p><p><b>  #endif</b></p><p><b>  };</b></p><p>  //{{AFX_INSERT_LOCATION}}</p><p>  // Microsoft Visual C++ will insert addit

51、ional declarations immediately before the previous line.</p><p>  #endif // !defined(AFX_102SET_H__98C62E7F_389F_49F6_9454_A2D60835C2C4__INCLUDED_)</p><p><b>  八.參考文獻(xiàn)</b></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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論