版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 課 程 設(shè) 計(jì) 報(bào) 告</p><p> 課程名稱 面向?qū)ο蟪绦蛟O(shè)計(jì) </p><p> 課題名稱 圖書管理系統(tǒng) </p><p> 專 業(yè) 計(jì)算機(jī)科學(xué)與技術(shù) </p><p> 班 級(jí) 計(jì)算機(jī)1202班
2、 </p><p> 一、設(shè)計(jì)內(nèi)容與設(shè)計(jì)要求</p><p><b> 1.課程設(shè)計(jì)目的:</b></p><p> 面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)是集中實(shí)踐性環(huán)節(jié)之一,是學(xué)習(xí)完《面向?qū)ο蟪绦蛟O(shè)計(jì)》課程后進(jìn)行的一次全面的綜合練習(xí)。要求學(xué)生達(dá)到熟練掌握C++語(yǔ)言的基本知識(shí)和技能;基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的思想和方法;能夠利用所學(xué)的基本
3、知識(shí)和技能,解決簡(jiǎn)單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題,從而提高動(dòng)手編程解決實(shí)際問題的能力。</p><p><b> 2.課題題目</b></p><p> 1)公司庫(kù)存管理系統(tǒng)</p><p> 2)高校學(xué)籍管理系統(tǒng)</p><p> 3)高校工資管理系統(tǒng)</p><p> 4)高校人事管理系統(tǒng)
4、</p><p> 5)學(xué)生成績(jī)管理系統(tǒng)</p><p><b> 6) 圖書管理系統(tǒng)</b></p><p> 7)學(xué)生考勤管理系統(tǒng)</p><p> 8)公司人員管理系統(tǒng)</p><p><b> 3.設(shè)計(jì)要求:</b></p><p>
5、 ⑴ 設(shè)計(jì)課題題目:每位同學(xué)根據(jù)自己學(xué)號(hào)除以8所得的余數(shù)加一選擇相應(yīng)題號(hào)的課題。擅自換題者不記成績(jī)。</p><p> ?、?根據(jù)自己對(duì)應(yīng)的課題完成以下主要工作:①完成系統(tǒng)需求分析:包括系統(tǒng)設(shè)計(jì)目的與意義;系統(tǒng)功能需求(系統(tǒng)流程圖);輸入輸出的要求。②完成系統(tǒng)總體設(shè)計(jì):包括系統(tǒng)功能分析;系統(tǒng)功能模塊劃分與設(shè)計(jì)(系統(tǒng)功能模塊圖)。③完成系統(tǒng)詳細(xì)設(shè)計(jì):包括數(shù)據(jù)庫(kù)需求分析;類層次圖;界面設(shè)計(jì)與各功能模塊實(shí)現(xiàn)。④系統(tǒng)調(diào)
6、試:調(diào)試出現(xiàn)的主要問題,編譯語(yǔ)法錯(cuò)誤及修改,重點(diǎn)是運(yùn)行邏輯問題修改和調(diào)整。⑤使用說明書及編程體會(huì):說明如何使用你編寫的程序,詳細(xì)列出每一步的操作步驟。⑥關(guān)鍵源程序(帶注釋)</p><p> ?、?按規(guī)定格式完成課程設(shè)計(jì)報(bào)告,將其打印稿(A4紙)上交給老師存檔。</p><p> ?、?不得抄襲他人程序、課程設(shè)計(jì)報(bào)告,每個(gè)人應(yīng)體現(xiàn)自己的個(gè)性設(shè)計(jì)。</p><p>&
7、lt;b> 二、進(jìn)度安排</b></p><p> 第 17 周 星期一 8:00——12:00</p><p> 星期二 8:00——12:00</p><p> 星期四 8:00——12:00</p><p> 第 18 周 星期一 8:00——12:00</p><p>
8、 星期二 14:30——18:30</p><p> 星期三 8:00——12:00</p><p><b> 三、參考書籍</b></p><p> 1.《C++程序設(shè)計(jì)課程設(shè)計(jì)》 劉振安編著 TP312C563</p><p> 2.《C++ Builder和Delphi課程設(shè)計(jì)與系統(tǒng)開發(fā)案例》 伍俊良
9、 清華大學(xué)出版社 7-302-06072-X </p><p> 3.Visual C++課程設(shè)計(jì)案例精編 嚴(yán)華峰 中國(guó)水利水電出版社 7-5084-2007-1 2004 </p><p> 4.Visual C++課程設(shè)計(jì)與系統(tǒng)開發(fā)案例 伍俊良 清華大學(xué)出版社 7-302-05968-3 2002</p><p> 5.Visual C
10、++語(yǔ)言課程設(shè)計(jì) : 案例精選與編程指導(dǎo) 陳清華朱紅 東南大學(xué)出版社 7-81089-275-4 2003 </p><p> 6.VisualC++課程設(shè)計(jì)案例精編 中國(guó)水利水電出版社 7-5084-1004-1 2002 </p><p> 7.數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)案例精編 : 用C/C++描述 李建學(xué)李光元吳春芳 清華大學(xué)出版社 7-302-14536-9
11、 2007 </p><p> ?。ň幊唐脚_(tái)不限,vc++, c++ Builder等等。)</p><p> 課題1:公司庫(kù)存管理系統(tǒng) </p><p> ?。ㄒ唬⒄n程設(shè)計(jì)題目:</p><p> 某公司的庫(kù)存管理系統(tǒng)</p><p> ?。ǘ?、目的與要求: </p><p>&l
12、t;b> 1、目的: </b></p><p> ?。?)要求學(xué)生達(dá)到熟練掌握C++語(yǔ)言的基本知識(shí)和技能; </p><p> ?。?)基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思路和方法; </p><p> ?。?)能夠利用所學(xué)的基本知識(shí)和技能,解決簡(jiǎn)單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題。 </p><p><b> 2、基本要求
13、: </b></p><p> ?。?)要求利用面向?qū)ο蟮姆椒ㄒ约癈++的編程思想來完成系統(tǒng)的設(shè)計(jì); </p><p> ?。?)要求在設(shè)計(jì)的過程中,建立清晰的類層次; </p><p> (3)在系統(tǒng)中至少要定義四個(gè)類,每個(gè)類中要有各自的屬性和方法; </p><p> ?。?)在系統(tǒng)的設(shè)計(jì)中,至少要用到面向?qū)ο蟮囊环N機(jī)制。
14、</p><p><b> 3、創(chuàng)新要求: </b></p><p> 在基本要求達(dá)到后,可進(jìn)行創(chuàng)新設(shè)計(jì),如根據(jù)查找結(jié)果進(jìn)行修改的功能。 </p><p> 4、寫出設(shè)計(jì)說明書 </p><p> (三)、設(shè)計(jì)方法和基本原理: </p><p> 1、問題描述(功能要求): </p
15、><p> 某公司現(xiàn)有以下設(shè)備:普通電視機(jī)、DVD、帶DVD的電視機(jī),帶DVD的電視機(jī)的售價(jià)為普通電視機(jī)和DVD單價(jià)之和的80%,要求對(duì)所有的庫(kù)存設(shè)備都能按照品名進(jìn)行顯示、查找、增加和刪除、保存的功能。 </p><p> 2、問題的解決方案: </p><p> 根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟: </p><p> ?。?)
16、分析系統(tǒng)中的各個(gè)實(shí)體之間的關(guān)系及其屬性和行為; </p><p> (2)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次; </p><p> ?。?)完成類層次中各個(gè)類的描述(包括屬性和方法); </p><p> ?。?)完成類中各個(gè)成員函數(shù)的定義; </p><p> ?。?)完成系統(tǒng)的應(yīng)用模塊; </p><p><b
17、> ?。?)功能調(diào)試; </b></p><p> ?。?)完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說明書。 </p><p> 課題2:高校學(xué)籍管理系統(tǒng) </p><p> ?。ㄒ唬?、課程設(shè)計(jì)題目:</p><p><b> 高校學(xué)籍管理系統(tǒng)</b></p><p> ?。ǘ⒛康呐c
18、要求: </p><p><b> 1、目的: </b></p><p> ?。?)要求學(xué)生達(dá)到熟練掌握C++語(yǔ)言的基本知識(shí)和技能; </p><p> ?。?)基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思路和方法; </p><p> ?。?)能夠利用所學(xué)的基本知識(shí)和技能,解決簡(jiǎn)單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題。 </p>
19、<p><b> 2、基本要求: </b></p><p> ?。?)要求利用面向?qū)ο蟮姆椒ㄒ约癈++的編程思想來完成系統(tǒng)的設(shè)計(jì);</p><p> (2)要求在設(shè)計(jì)的過程中,建立清晰的類層次; </p><p> ?。?)在系統(tǒng)的設(shè)計(jì)中,至少要用到面向?qū)ο蟮囊环N機(jī)制。</p><p><b>
20、 3、創(chuàng)新要求: </b></p><p> 在基本要求達(dá)到后,可進(jìn)行創(chuàng)新設(shè)計(jì),如根據(jù)查找結(jié)果進(jìn)行修改的功能。 </p><p> 4、寫出設(shè)計(jì)說明書 </p><p> ?。ㄈ⒃O(shè)計(jì)方法和基本原理: </p><p> 1、問題描述(功能要求): </p><p> ?。?)能夠從屏幕上讀取一個(gè)
21、學(xué)生的信息并將信息存入到數(shù)據(jù)文件中。</p><p> ?。?)能夠?qū)⒅付ǖ男畔奈募袆h除。</p><p> ?。?)能夠按編號(hào)、姓名對(duì)學(xué)生的信息進(jìn)行檢索并將檢索結(jié)果顯示在屏幕上。</p><p> ?。?)可以統(tǒng)計(jì)全部學(xué)生的總成績(jī),及其在班上的排名。</p><p> ?。?)能夠統(tǒng)計(jì)各科的平均成績(jī)及及格率。</p>&l
22、t;p> ?。?)要求有錯(cuò)誤提示功能,例如性別只能輸入男女,輸入錯(cuò)誤提示重新輸入。</p><p> ?。?)如果檢索不到相應(yīng)的信息應(yīng)提示用戶。 </p><p> 2、問題的解決方案: </p><p> 根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟: </p><p> ?。?)寫出需求分析(做什么);</p>&
23、lt;p> ?。?)分析系統(tǒng)中的各個(gè)實(shí)體之間的關(guān)系及其屬性和行為; </p><p> (3)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次; </p><p> ?。?)完成類層次中各個(gè)類的描述(包括屬性和方法); </p><p> ?。?)完成類中各個(gè)成員函數(shù)的定義; </p><p> ?。?)用戶界面的設(shè)計(jì); </p><
24、;p> ?。?)分析系統(tǒng)功能模塊(系統(tǒng)流程圖);</p><p> ?。?)代碼編寫,功能調(diào)試;</p><p> (9)完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說明書。</p><p> 課題3:高校工資管理系統(tǒng) </p><p> ?。ㄒ唬⒄n程設(shè)計(jì)題目:</p><p><b> 高校工資管理系統(tǒng)<
25、;/b></p><p> ?。ǘ?、目的與要求: </p><p><b> 1、目的: </b></p><p> ?。?)要求學(xué)生達(dá)到熟練掌握C++語(yǔ)言的基本知識(shí)和技能; </p><p> ?。?)基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思路和方法; </p><p> ?。?)能夠利用所學(xué)
26、的基本知識(shí)和技能,解決簡(jiǎn)單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題。 </p><p><b> 2、基本要求: </b></p><p> ?。?)要求利用面向?qū)ο蟮姆椒ㄒ约癈++的編程思想來完成系統(tǒng)的設(shè)計(jì); </p><p> (2)要求在設(shè)計(jì)的過程中,建立清晰的類層次; </p><p> ?。?)在系統(tǒng)中至少要定義四個(gè)類,每個(gè)
27、類中要有各自的屬性和方法; </p><p> (4)在系統(tǒng)的設(shè)計(jì)中,至少要用到面向?qū)ο蟮囊环N機(jī)制。 </p><p><b> 3、創(chuàng)新要求: </b></p><p> 在基本要求達(dá)到后,可進(jìn)行創(chuàng)新設(shè)計(jì),如根據(jù)查找結(jié)果進(jìn)行修改的功能。 </p><p> 4、寫出設(shè)計(jì)說明書 </p><p
28、> ?。ㄈ?、設(shè)計(jì)方法和基本原理: </p><p> 1、問題描述(功能要求): </p><p> 現(xiàn)一高校有五類職工:教師,實(shí)驗(yàn)員,行政人員,教師兼職實(shí)驗(yàn)員,行政人員兼職教師。為了實(shí)現(xiàn)工資發(fā)放的自動(dòng)功能,現(xiàn)要求編寫程序來自動(dòng)完成此功能。同時(shí)注意生成的相關(guān)數(shù)據(jù)結(jié)果以文件方式存放在硬盤中。程序應(yīng)具備從鍵盤錄入,文件的可繼續(xù)錄入,任意職工的工資查詢(可由職工編號(hào)和職工姓名來實(shí)現(xiàn))
29、,如若有職工由于工作調(diào)動(dòng),則可進(jìn)行相對(duì)應(yīng)的刪除動(dòng)作。</p><p><b> 相關(guān)信息:</b></p><p> 每一學(xué)期將學(xué)校職工的本學(xué)期任職情況及上學(xué)期工作的相關(guān)情況輸入計(jì)算機(jī),則本學(xué)期職工的月工資按程序處理后的結(jié)果發(fā)放,其中職工的工資計(jì)算方法如下:</p><p> 其中工資的基本構(gòu)成如下:</p><p&g
30、t; 教師: 基本工資+課時(shí)費(fèi);</p><p> 實(shí)驗(yàn)員: 基本工資+實(shí)驗(yàn)室補(bǔ)助;</p><p> 行政人員: 基本工資+行政補(bǔ)貼;</p><p> 教師兼職實(shí)驗(yàn)員: 基本工資+課時(shí)費(fèi)+實(shí)驗(yàn)室補(bǔ)助;</p><p> 行政人員兼職教師:基本工資+行政補(bǔ)貼+課時(shí)費(fèi);<
31、/p><p><b> (其中:</b></p><p> ?。?)課時(shí)費(fèi):教師每一學(xué)期的基本工作量為120,實(shí)驗(yàn)員每學(xué)期基本工作量為70,行政人員沒有基本工作量,每節(jié)課時(shí)費(fèi)為20元;課時(shí)費(fèi)=(上學(xué)期工作量-基本工作量)*20;</p><p> 注意:如果上學(xué)期基本工作量沒完成,則其(上學(xué)期工作量-基本工作量)*20為負(fù)值。</p>
32、;<p> ?。?)基本工資:教師800元,實(shí)驗(yàn)員650元,行政人員750元。</p><p> ?。?)行政補(bǔ)貼:250元。</p><p> ?。?)實(shí)驗(yàn)室補(bǔ)助:150元。</p><p> 2、問題的解決方案: </p><p> 根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟: </p><p>
33、; ?。?)寫出需求分析(做什么);</p><p> ?。?)分析系統(tǒng)中的各個(gè)實(shí)體之間的關(guān)系及其屬性和行為; </p><p> ?。?)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次; </p><p> (4)完成類層次中各個(gè)類的描述(包括屬性和方法); </p><p> ?。?)完成類中各個(gè)成員函數(shù)的定義; </p><p&g
34、t; ?。?)用戶界面的設(shè)計(jì); </p><p> ?。?)分析系統(tǒng)功能模塊(系統(tǒng)流程圖);</p><p> ?。?)代碼編寫 ,功能調(diào)試;</p><p> ?。?)完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說明書。</p><p> 課題4:高校人事管理系統(tǒng) </p><p> ?。ㄒ唬⒄n程設(shè)計(jì)題目:</p>
35、<p><b> 高校人事管理系統(tǒng)</b></p><p> ?。ǘ?、目的與要求: </p><p><b> 1、目的: </b></p><p> ?。?)要求學(xué)生達(dá)到熟練掌握C++語(yǔ)言的基本知識(shí)和技能; </p><p> (2)基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思路和方法;
36、</p><p> ?。?)能夠利用所學(xué)的基本知識(shí)和技能,解決簡(jiǎn)單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題。 </p><p><b> 2、基本要求: </b></p><p> ?。?)要求利用面向?qū)ο蟮姆椒ㄒ约癈++的編程思想來完成系統(tǒng)的設(shè)計(jì); </p><p> ?。?)要求在設(shè)計(jì)的過程中,建立清晰的類層次; </p>
37、;<p> (3)在系統(tǒng)中至少要定義四個(gè)類,每個(gè)類中要有各自的屬性和方法; </p><p> ?。?)在系統(tǒng)的設(shè)計(jì)中,至少要用到面向?qū)ο蟮囊环N機(jī)制。 </p><p><b> 3、創(chuàng)新要求: </b></p><p> 在基本要求達(dá)到后,可進(jìn)行創(chuàng)新設(shè)計(jì),如根據(jù)查找結(jié)果進(jìn)行修改的功能。 </p><p&
38、gt; 4、寫出設(shè)計(jì)說明書 </p><p> (三)、設(shè)計(jì)方法和基本原理: </p><p> 1、問題描述(功能要求): </p><p> 某高校,主要人員有:在職人員(行政人員、教師、一般員工)、退休人員、返聘人員和臨時(shí)工?,F(xiàn)在,需要存儲(chǔ)這些人員的人事檔案信息:編號(hào)、姓名、性別、年齡、職務(wù)、職稱、政治面貌、最高學(xué)歷、任職時(shí)間、來院時(shí)間。</p&
39、gt;<p><b> 要求: </b></p><p> ?。?)添加刪除功能:能根據(jù)學(xué)院人事的變動(dòng)情況,添加刪除記錄;</p><p> ?。?)查詢功能:能根據(jù)編號(hào)和姓名進(jìn)行查詢;</p><p> (3)編輯功能(高級(jí)):根據(jù)查詢對(duì)相應(yīng)的記錄進(jìn)行修改,并存儲(chǔ);</p><p> (4)統(tǒng)計(jì)功能
40、:能根據(jù)多種參數(shù)進(jìn)行人員的統(tǒng)計(jì)(在職人數(shù)、黨員人數(shù)、女工人數(shù)、高學(xué)歷高職稱人數(shù));</p><p> (5)保存功能:能對(duì)輸入的數(shù)據(jù)進(jìn)行相應(yīng)的存儲(chǔ),要求重載插入和提取符以完成數(shù)據(jù)的保存和打開。</p><p> ?。?)人員編號(hào)在生成人員信息時(shí)同時(shí)生成,每輸入一個(gè)人員信息編號(hào)順序加1。</p><p> 2、問題的解決方案: </p><p&
41、gt; 根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟: </p><p> ?。?)應(yīng)用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計(jì);</p><p> (2)分析系統(tǒng)中的各個(gè)實(shí)體及它們之間的關(guān)系包括屬性和行為; </p><p> ?。?)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次; </p><p> ?。?)完成類層次中各個(gè)類的描述(
42、包括屬性和方法); </p><p> ?。?)完成類中各個(gè)成員函數(shù)的定義; </p><p> ?。?)完成系統(tǒng)的應(yīng)用模塊; </p><p><b> ?。?)功能調(diào)試; </b></p><p> (8)完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說明書。</p><p> 課題5:學(xué)生成績(jī)管理系統(tǒng)&l
43、t;/p><p> ?。ㄒ唬?、課程設(shè)計(jì)題目:</p><p><b> 學(xué)生成績(jī)管理系統(tǒng)</b></p><p> ?。ǘ?、目的與要求: </p><p><b> 1、目的: </b></p><p> ?。?)要求學(xué)生達(dá)到熟練掌握C++語(yǔ)言的基本知識(shí)和技能; </
44、p><p> (2)基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思路和方法; </p><p> ?。?)能夠利用所學(xué)的基本知識(shí)和技能,解決簡(jiǎn)單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題。 </p><p><b> 2、基本要求: </b></p><p> (1)要求利用面向?qū)ο蟮姆椒ㄒ约癈++的編程思想來完成系統(tǒng)的設(shè)計(jì); </p>
45、<p> ?。?)要求在設(shè)計(jì)的過程中,建立清晰的類層次; </p><p> (3)在系統(tǒng)中至少要定義四個(gè)類,每個(gè)類中要有各自的屬性和方法; </p><p> ?。?)在系統(tǒng)的設(shè)計(jì)中,至少要用到面向?qū)ο蟮囊环N機(jī)制。 </p><p><b> 3、創(chuàng)新要求: </b></p><p> 在基本要求達(dá)到后
46、,可進(jìn)行創(chuàng)新設(shè)計(jì),如根據(jù)查找結(jié)果進(jìn)行修改的功能。 </p><p> 4、寫出設(shè)計(jì)說明書 </p><p> ?。ㄈ?、設(shè)計(jì)方法和基本原理: </p><p> 1、問題描述(功能要求): </p><p> 設(shè)計(jì)一個(gè)實(shí)用的小型學(xué)生成績(jī)管理程序,具有查詢,檢索和刪除功能,并且能夠打開或修改指定文件及將多個(gè)文件組成一個(gè)文件。它完全使用類來
47、實(shí)現(xiàn),充分體現(xiàn)面向?qū)ο蟮某绦蛟O(shè)計(jì)特點(diǎn)。</p><p><b> 要求: </b></p><p> 實(shí)現(xiàn)主要功能:建立文件,文件的存取和顯示,刪除記錄,查詢記錄。可以隨時(shí)檢索,刪除,或增加記錄,也可以保存或取消新的記錄。</p><p> 2、問題的解決方案: </p><p> 根據(jù)系統(tǒng)功能要求,可以將問題解
48、決分為以下步驟: </p><p> ?。?)應(yīng)用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計(jì);</p><p> ?。?)分析系統(tǒng)中的各個(gè)實(shí)體及它們之間的關(guān)系包括屬性和行為; </p><p> (3)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次; </p><p> ?。?)完成類層次中各個(gè)類的描述(包括屬性和方法); </p>
49、<p> ?。?)完成類中各個(gè)成員函數(shù)的定義; </p><p> ?。?)完成系統(tǒng)的應(yīng)用模塊; </p><p><b> (7)功能調(diào)試; </b></p><p> ?。?)完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說明書。</p><p> 課題6:圖書管理系統(tǒng)</p><p> ?。?/p>
50、一)、課程設(shè)計(jì)題目:</p><p><b> 圖書管理系統(tǒng)</b></p><p> ?。ǘ?、目的與要求: </p><p><b> 1、目的: </b></p><p> (1)要求學(xué)生達(dá)到熟練掌握C++語(yǔ)言的基本知識(shí)和技能; </p><p> ?。?)基本掌
51、握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思路和方法; </p><p> ?。?)能夠利用所學(xué)的基本知識(shí)和技能,解決簡(jiǎn)單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題。 </p><p><b> 2、基本要求: </b></p><p> ?。?)要求利用面向?qū)ο蟮姆椒ㄒ约癈++的編程思想來完成系統(tǒng)的設(shè)計(jì); </p><p> ?。?)要求在設(shè)計(jì)的過程中,
52、建立清晰的類層次; </p><p> (3)在系統(tǒng)中至少要定義四個(gè)類,每個(gè)類中要有各自的屬性和方法; </p><p> ?。?)在系統(tǒng)的設(shè)計(jì)中,至少要用到面向?qū)ο蟮囊环N機(jī)制。 </p><p><b> 3、創(chuàng)新要求: </b></p><p> 在基本要求達(dá)到后,可進(jìn)行創(chuàng)新設(shè)計(jì),如根據(jù)查找結(jié)果進(jìn)行修改的功能。
53、 </p><p> 4、寫出設(shè)計(jì)說明書 </p><p> ?。ㄈ?、設(shè)計(jì)方法和基本原理: </p><p> 1、問題描述(功能要求): </p><p> 在圖書管理系統(tǒng)中,要為每個(gè)借閱者建立一個(gè)賬戶,并給借閱者發(fā)放借閱卡(借閱卡可以提供借閱卡號(hào)、借閱者名),賬戶中存儲(chǔ)借閱者的個(gè)人信息、借閱信息以及預(yù)定信息。持有借閱卡的借閱者可以
54、借閱書刊、返還書刊、查詢書刊信息、預(yù)定書刊并取消預(yù)定,但這些操作都是通過圖書管理員進(jìn)行的,也即借閱者不直接與系統(tǒng)交互,而是圖書管理員充當(dāng)借閱者的代理與系統(tǒng)交互。在借閱書刊時(shí),需要輸入所借閱的書刊名,書刊的ISBN/ISSN號(hào),然后輸入借閱者的圖書卡號(hào)和借閱者名,完成后提交所填表格,系統(tǒng)驗(yàn)證借閱者是否有效(在系統(tǒng)中存在賬戶),若有效,借閱請(qǐng)求被接受,系統(tǒng)查詢數(shù)據(jù)庫(kù)系統(tǒng),看借閱者所借閱的書刊是否存在,若存在,則借閱者可借出書刊,建立并在系統(tǒng)
55、中存儲(chǔ)借閱記錄。借閱者還書后,刪除關(guān)于所還書刊的借閱記錄。如果借閱者所借的書刊已被借出,借閱者還可預(yù)定該書刊,一旦借閱者預(yù)定的書刊可以獲得,就將書刊直接寄給預(yù)定人(為了簡(jiǎn)化系統(tǒng),預(yù)定書刊可獲得時(shí)就不通知借閱者了)。另外,為了簡(jiǎn)化系統(tǒng),也不考慮書刊的最長(zhǎng)借閱期限,假設(shè)借閱者可以無限期地保存所借閱的書刊。</p><p> 2、問題的解決方案: </p><p> 根據(jù)系統(tǒng)功能要求,可以將
56、問題解決分為以下步驟: </p><p> ?。?)應(yīng)用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計(jì);</p><p> ?。?)分析系統(tǒng)中的各個(gè)實(shí)體及它們之間的關(guān)系包括屬性和行為; </p><p> ?。?)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次; </p><p> ?。?)完成類層次中各個(gè)類的描述(包括屬性和方法); </p&
57、gt;<p> ?。?)完成類中各個(gè)成員函數(shù)的定義; </p><p> (6)完成系統(tǒng)的應(yīng)用模塊; </p><p><b> ?。?)功能調(diào)試; </b></p><p> ?。?)完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說明書。</p><p> 課題7:學(xué)生考勤管理系統(tǒng)</p><p&g
58、t; ?。ㄒ唬?、課程設(shè)計(jì)題目:</p><p> 學(xué)生考勤管理系統(tǒng) </p><p> (二)、目的與要求: </p><p><b> 1、目的: </b></p><p> ?。?)要求學(xué)生達(dá)到熟練掌握C++語(yǔ)言的基本知識(shí)和技能; </p><p> ?。?)基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的
59、基本思路和方法; </p><p> (3)能夠利用所學(xué)的基本知識(shí)和技能,解決簡(jiǎn)單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題。 </p><p><b> 2、基本要求: </b></p><p> ?。?)要求利用面向?qū)ο蟮姆椒ㄒ约癈++的編程思想來完成系統(tǒng)的設(shè)計(jì); </p><p> (2)要求在設(shè)計(jì)的過程中,建立清晰的類層次;
60、</p><p> ?。?)在系統(tǒng)中至少要定義四個(gè)類,每個(gè)類中要有各自的屬性和方法; </p><p> ?。?)在系統(tǒng)的設(shè)計(jì)中,至少要用到面向?qū)ο蟮囊环N機(jī)制。 </p><p><b> 3、創(chuàng)新要求: </b></p><p> 在基本要求達(dá)到后,可進(jìn)行創(chuàng)新設(shè)計(jì),如根據(jù)查找結(jié)果進(jìn)行修改的功能。 </p>
61、;<p> 4、寫出設(shè)計(jì)說明書 </p><p> ?。ㄈ⒃O(shè)計(jì)方法和基本原理: </p><p> 1、問題描述(功能要求): </p><p> 考勤信息記錄了學(xué)生的缺課情況,它包括:缺課日期、第幾節(jié)課(連續(xù)多節(jié)課用 begin-end 的形式表示)、課程名稱(課程名稱中不會(huì)出現(xiàn)空格)、學(xué)生姓名、缺課類型(遲到、早退、請(qǐng)假及曠課)。試設(shè)計(jì)考
62、勤管理系統(tǒng),使之能提供以下功能:</p><p> 1).錄入學(xué)生的缺課記錄:從鍵盤輸入數(shù)據(jù)(提示:為避免重復(fù)從鍵盤輸入數(shù)據(jù),測(cè)試時(shí)可將數(shù)據(jù)存儲(chǔ)在文件中,利用輸入重定向功能讀入),輸入格式為:</p><p> 缺課日期第幾節(jié)課 課程名稱學(xué)生姓名 缺課類型</p><p><b> 每行一條紀(jì)錄。</b></p><p
63、><b> 例如:</b></p><p> 2008-04-29 3-4 C++程序設(shè)計(jì)實(shí)驗(yàn) 張三 遲到</p><p> 2008-04-28 3-4 C++程序設(shè)計(jì) 李四 曠課</p><p> 2).修改某個(gè)學(xué)生的缺課記錄:可以對(duì)缺課紀(jì)錄的任意部分進(jìn)行修改,然后顯示一下修改后的紀(jì)錄。</p><p>
64、; 3).查詢某個(gè)學(xué)生的缺課情況:查詢結(jié)果按照日期升序排序,同一天內(nèi)按照所缺課程的時(shí)間升序排序。</p><p> 4).統(tǒng)計(jì)某段時(shí)間內(nèi)(以天為單位),曠課學(xué)生姓名及曠課節(jié)數(shù),查詢結(jié)果先按曠課節(jié)數(shù)降序排序,曠課節(jié)數(shù)相同的學(xué)生按姓名升序排序;</p><p> 5).統(tǒng)計(jì)某段時(shí)間內(nèi),有學(xué)生曠課的課程及曠課人次,按曠課人次由多到少排序,曠課人次相同的課程按課程名稱升序排序; </
65、p><p> 6).系統(tǒng)以菜單方式工作。(所謂菜單指用戶可以自由選擇所要執(zhí)行的功能)</p><p> 2、問題的解決方案: </p><p> 根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟: </p><p> ?。?)應(yīng)用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計(jì);</p><p> ?。?)分析系統(tǒng)
66、中的各個(gè)實(shí)體及它們之間的關(guān)系包括屬性和行為; </p><p> ?。?)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次; </p><p> ?。?)完成類層次中各個(gè)類的描述(包括屬性和方法); </p><p> (5)完成類中各個(gè)成員函數(shù)的定義; </p><p> (6)完成系統(tǒng)的應(yīng)用模塊; </p><p><b&
67、gt; ?。?)功能調(diào)試; </b></p><p> ?。?)完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說明書。</p><p> 課題8:公司人員管理系統(tǒng)</p><p> ?。ㄒ唬?、課程設(shè)計(jì)題目:</p><p><b> 公司人員管理系統(tǒng)</b></p><p> (二)、目的與要求:
68、 </p><p><b> 1、目的: </b></p><p> (1)要求學(xué)生達(dá)到熟練掌握C++語(yǔ)言的基本知識(shí)和技能; </p><p> ?。?)基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思路和方法; </p><p> ?。?)能夠利用所學(xué)的基本知識(shí)和技能,解決簡(jiǎn)單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題。 </p>&l
69、t;p><b> 2、基本要求: </b></p><p> ?。?)要求利用面向?qū)ο蟮姆椒ㄒ约癈++的編程思想來完成系統(tǒng)的設(shè)計(jì); </p><p> ?。?)要求在設(shè)計(jì)的過程中,建立清晰的類層次; </p><p> (3)在系統(tǒng)中至少要定義四個(gè)類,每個(gè)類中要有各自的屬性和方法; </p><p> ?。?)
70、在系統(tǒng)的設(shè)計(jì)中,至少要用到面向?qū)ο蟮囊环N機(jī)制。 </p><p><b> 3、創(chuàng)新要求: </b></p><p> 在基本要求達(dá)到后,可進(jìn)行創(chuàng)新設(shè)計(jì),如根據(jù)查找結(jié)果進(jìn)行修改的功能。 </p><p> 4、寫出設(shè)計(jì)說明書 </p><p> ?。ㄈ⒃O(shè)計(jì)方法和基本原理: </p><p&g
71、t; 1、問題描述(功能要求): </p><p> 公司人員管理系統(tǒng)實(shí)現(xiàn)對(duì)公司人員按姓名或者編號(hào)顯示、查找、增加、刪除和保存各類人員信息的操作。 </p><p> 某小型公司,主要有四類人員:經(jīng)理、兼職技術(shù)人員、銷售經(jīng)理和兼職推銷員?,F(xiàn)在,需要存儲(chǔ)這些人員的姓名、編號(hào)、級(jí)別、當(dāng)月薪水,計(jì)算月薪總額并顯示全部信息。 </p><p> 人員編號(hào)在生成人員信
72、息時(shí)同時(shí)生成,每輸入一個(gè)人員信息編號(hào)順序加1。 </p><p> 程序?qū)λ腥藛T有提升級(jí)別的功能 。</p><p> 薪金的計(jì)算方法是:經(jīng)理拿固定月薪,兼職技術(shù)人員按工作小時(shí)數(shù)領(lǐng)取月薪,兼職推銷員的報(bào)酬按該推銷員當(dāng)月銷售額提成 ,銷售經(jīng)理既拿固定月薪也領(lǐng)取銷售提成。 </p><p> 能按姓名或者編號(hào)顯示、查找、增加、刪除和保存各類人員的信息 。在基本要
73、求達(dá)到后,可設(shè)計(jì)出比較友好的界面(如下拉菜單),也可用VC++ ClassWizard 設(shè)計(jì)(選作)。</p><p> 2、問題的解決方案: </p><p> 根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟: </p><p> ?。?)應(yīng)用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計(jì);</p><p> ?。?)分析系統(tǒng)中的
74、各個(gè)實(shí)體及它們之間的關(guān)系包括屬性和行為; </p><p> (3)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次; </p><p> (4)完成類層次中各個(gè)類的描述(包括屬性和方法); </p><p> ?。?)完成類中各個(gè)成員函數(shù)的定義; </p><p> ?。?)完成系統(tǒng)的應(yīng)用模塊; </p><p><b>
75、; (7)功能調(diào)試; </b></p><p> ?。?)完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說明書。</p><p> 課題6:圖書管理系統(tǒng)</p><p> ?。ㄒ唬?、課程設(shè)計(jì)題目:</p><p><b> 圖書管理系統(tǒng)</b></p><p> ?。ǘ?、目的與要求: </
76、p><p><b> 1、目的: </b></p><p> ?。?)要求學(xué)生達(dá)到熟練掌握C++語(yǔ)言的基本知識(shí)和技能; </p><p> (2)基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思路和方法; </p><p> ?。?)能夠利用所學(xué)的基本知識(shí)和技能,解決簡(jiǎn)單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題。 </p><p>
77、;<b> 2、基本要求: </b></p><p> ?。?)要求利用面向?qū)ο蟮姆椒ㄒ约癈++的編程思想來完成系統(tǒng)的設(shè)計(jì); </p><p> ?。?)要求在設(shè)計(jì)的過程中,建立清晰的類層次; </p><p> ?。?)在系統(tǒng)中至少要定義四個(gè)類,每個(gè)類中要有各自的屬性和方法; </p><p> (4)在系統(tǒng)的設(shè)計(jì)
78、中,至少要用到面向?qū)ο蟮囊环N機(jī)制。 </p><p><b> 3、創(chuàng)新要求: </b></p><p> 在基本要求達(dá)到后,可進(jìn)行創(chuàng)新設(shè)計(jì),如根據(jù)查找結(jié)果進(jìn)行修改的功能。 </p><p> 4、寫出設(shè)計(jì)說明書 </p><p> ?。ㄈ?、設(shè)計(jì)方法和基本原理: </p><p> 1、
79、問題描述(功能要求): </p><p> 在圖書管理系統(tǒng)中,要為每個(gè)借閱者建立一個(gè)賬戶,并給借閱者發(fā)放借閱卡(借閱卡可以提供借閱卡號(hào)、借閱者名),賬戶中存儲(chǔ)借閱者的個(gè)人信息、借閱信息以及預(yù)定信息。持有借閱卡的借閱者可以借閱書刊、返還書刊、查詢書刊信息、預(yù)定書刊并取消預(yù)定,但這些操作都是通過圖書管理員進(jìn)行的,也即借閱者不直接與系統(tǒng)交互,而是圖書管理員充當(dāng)借閱者的代理與系統(tǒng)交互。在借閱書刊時(shí),需要輸入所借閱的書刊
80、名,書刊的ISBN/ISSN號(hào),然后輸入借閱者的圖書卡號(hào)和借閱者名,完成后提交所填表格,系統(tǒng)驗(yàn)證借閱者是否有效(在系統(tǒng)中存在賬戶),若有效,借閱請(qǐng)求被接受,系統(tǒng)查詢數(shù)據(jù)庫(kù)系統(tǒng),看借閱者所借閱的書刊是否存在,若存在,則借閱者可借出書刊,建立并在系統(tǒng)中存儲(chǔ)借閱記錄。借閱者還書后,刪除關(guān)于所還書刊的借閱記錄。如果借閱者所借的書刊已被借出,借閱者還可預(yù)定該書刊,一旦借閱者預(yù)定的書刊可以獲得,就將書刊直接寄給預(yù)定人(為了簡(jiǎn)化系統(tǒng),預(yù)定書刊可獲得時(shí)
81、就不通知借閱者了)。另外,為了簡(jiǎn)化系統(tǒng),也不考慮書刊的最長(zhǎng)借閱期限,假設(shè)借閱者可以無限期地保存所借閱的書刊。</p><p> 2、問題的解決方案: </p><p> 根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟: </p><p> ?。?)應(yīng)用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計(jì);</p><p> ?。?)分析系
82、統(tǒng)中的各個(gè)實(shí)體及它們之間的關(guān)系包括屬性和行為; </p><p> ?。?)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次; </p><p> (4)完成類層次中各個(gè)類的描述(包括屬性和方法); </p><p> ?。?)完成類中各個(gè)成員函數(shù)的定義; </p><p> ?。?)完成系統(tǒng)的應(yīng)用模塊; </p><p><b
83、> ?。?)功能調(diào)試; </b></p><p> ?。?)完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說明書。</p><p><b> 目 錄</b></p><p> 1.系統(tǒng)需求分析1</p><p><b> 2.總體設(shè)計(jì)1</b></p><p>
84、;<b> 3.詳細(xì)設(shè)計(jì)1</b></p><p><b> 4.系統(tǒng)調(diào)試1</b></p><p><b> 5.結(jié)果分析1</b></p><p><b> 6.總結(jié)1</b></p><p><b> 系統(tǒng)需求分析
85、</b></p><p> 二十一世紀(jì)是信息的社會(huì),信息作為社會(huì)最主要的資源,將成為戰(zhàn)略資源引起人們廣泛的關(guān)注。如何獲取信息?圖書是我們最好的獲取信息的方式,但由于圖書館圖書收藏量大大增加,使傳統(tǒng)的圖書管理員的工作日益繁重起來。迫使人們起用新的管理方法來管理圖書,但如何把圖書管理員從繁重的工作中解脫出來呢?</p><p> 科學(xué)技術(shù)日新月異的進(jìn)步,讓人類生活發(fā)生了巨大的變
86、化,計(jì)算機(jī)技術(shù)的飛速發(fā)展,使各行各業(yè)在計(jì)算機(jī)技術(shù)應(yīng)用方面得到了廣泛的普及和使用。信息化時(shí)代的到來成為不可抗拒的潮流,人類文明正在進(jìn)入一個(gè)嶄新的時(shí)代。因此,圖書管理系統(tǒng)也以方便、快捷、費(fèi)用低的優(yōu)點(diǎn)正慢慢地進(jìn)入人們的生活,將傳統(tǒng)的圖書管理方式徹底的解脫出來,提高效率,減輕工人人員以往繁忙的工作,減小出錯(cuò)的概率,使讀者可以花更多的時(shí)間在選擇書和看書上。從而使人們有更多時(shí)間來獲取信息、了解信息、掌握信息 。</p><p&g
87、t; 利用圖書管理系統(tǒng)對(duì)圖書記錄進(jìn)行統(tǒng)一管理,包括新增圖書記錄,更改圖書記錄,刪除圖書記錄等功能,實(shí)現(xiàn)圖書管理工作的系統(tǒng)化,規(guī)范化和自動(dòng)化,為圖書管理提供便利。同時(shí)是學(xué)習(xí)完《面向?qū)ο蟪绦蛟O(shè)計(jì)》課程后進(jìn)行的一次全面的綜合練習(xí)。有助于加深對(duì)面向?qū)ο蟪绦蛟O(shè)計(jì)中基礎(chǔ)理論和基本知識(shí)的理解,培養(yǎng)了實(shí)踐能力,促進(jìn)理論與實(shí)踐的結(jié)合。</p><p><b> 總體設(shè)計(jì)</b></p>&l
88、t;p><b> 1、設(shè)計(jì)內(nèi)容及要求</b></p><p> 設(shè)計(jì)的圖書管理系統(tǒng),可以完成圖書信息管理和讀者信息管理的功能,并能對(duì)借閱信息進(jìn)行管理。其中圖書信息管理,可以完成新增、更改、刪除、查找、顯示、全刪書籍信息功能。而讀者信息管理,可以完成新增、更改、刪除、查找、顯示、全刪讀者信息功能。對(duì)借書管理,可以進(jìn)行添加借書信息。對(duì)還書管理,可以進(jìn)行還書信。;</p>
89、<p> 該項(xiàng)目是在Visual C++ 6.0的平臺(tái)下用c++語(yǔ)言實(shí)現(xiàn),創(chuàng)建對(duì)象,程序運(yùn)行開始,打開文件并將其分別鏈入鏈表之中;程序結(jié)束關(guān)閉并保存文件。整體系統(tǒng)功能全部由鏈表實(shí)現(xiàn)。 </p><p><b> 2、模塊圖</b></p><p><b> 詳細(xì)設(shè)計(jì)</b></p><p> Book 圖
90、書類、Reader讀者類、BDatabase 圖書庫(kù)類、RDatabase 讀者庫(kù)類,</p><p> 各類的詳細(xì)描述如下:</p><p><b> 1、添加操作:</b></p><p> 先通過輸入設(shè)備輸入信息,系統(tǒng)獲?。?lt;/p><p> 然后添加入讀者數(shù)據(jù)庫(kù)read.txt文件中:</p>
91、<p><b> 2、借書操作:</b></p><p><b> 3、還書操作:</b></p><p><b> 系統(tǒng)調(diào)試</b></p><p> 圖書管理系統(tǒng)的主界面:</p><p><b> 圖 4-1</b></
92、p><p> 2、圖書信息的增添:</p><p><b> 圖 4-2</b></p><p> 3、讀者信息的顯示:</p><p><b> 圖 4-3</b></p><p><b> 4、借書操作:</b></p><
93、p><b> 圖 4-4</b></p><p><b> 圖 4-5</b></p><p><b> 5、讀者信息顯示:</b></p><p><b> 圖 4-6</b></p><p> 6、圖書信息的查找:</p>
94、<p><b> 圖 4-7</b></p><p><b> 7、還書操作:</b></p><p><b> 圖 4-8</b></p><p> 8、圖書信息的全刪:</p><p><b> 圖 4-9</b></p&g
95、t;<p> 9、圖書管理系統(tǒng)的退出界面:</p><p><b> 圖 4-10</b></p><p><b> 總結(jié)</b></p><p> 通過這兩周的課程設(shè)計(jì),我逐步學(xué)會(huì)了如何運(yùn)用C++面向?qū)ο蟪绦蛟O(shè)計(jì)的設(shè)計(jì)思想和方法來解決實(shí)際問題。</p><p> 在這次設(shè)計(jì)
96、圖書管理系統(tǒng)中,我首先要考慮是實(shí)際應(yīng)用時(shí),用戶的操作會(huì)是什么,對(duì)哪些對(duì)象進(jìn)行操作。這樣,很顯然的我需要建立兩個(gè)類,包括圖書類和讀者類;同時(shí)考慮到圖書和讀者不止一個(gè),所以還需要兩個(gè)類,圖書庫(kù)類和讀者庫(kù)類,這兩個(gè)類分別將其信息傳遞給圖書類和讀者類。</p><p> 確定了類之后,則需要對(duì)類的內(nèi)容進(jìn)行擴(kuò)充。由于我這個(gè)系統(tǒng)需要完成對(duì)圖書管理和讀者管理的功能,并能對(duì)借閱信息進(jìn)行管理,如圖書資料管理要包括新增、更改、刪除
97、、查找、顯示、全刪書籍信息;讀者資料管理要包括新增、更改、刪除、查找、顯示、全刪讀者信息;借書管理,可以進(jìn)行借書操作;還書管理,可以進(jìn)行還書操作。所以在對(duì)應(yīng)的類下建立相應(yīng)功能函數(shù)就順理成章了。建立功能函數(shù)后就是編寫主函數(shù)了,主函數(shù)的作用就是通過向?qū)ο蟀l(fā)送信息、對(duì)象接受信息啟動(dòng)相應(yīng)的方法來實(shí)現(xiàn)相應(yīng)的操作。</p><p> 為了能夠較好地完成本次課程設(shè)計(jì),我詳細(xì)閱讀了教材,還在網(wǎng)上進(jìn)行了大量搜索,以及到圖書館查找
98、相關(guān)資料等一些努力。在做課程設(shè)計(jì)的過程中,我在利用所學(xué)知識(shí)的同時(shí),又學(xué)到了很多實(shí)例化的理論知識(shí)和軟件工程的一些實(shí)踐,總結(jié)出了一些經(jīng)驗(yàn)和方法,強(qiáng)化了我的實(shí)際動(dòng)手能力,確實(shí)也找到了自己的不足。所以,我一定會(huì)繼續(xù)學(xué)習(xí)來增加自己的編程能力和調(diào)試能力。那么,在今后的學(xué)習(xí)中我將會(huì)更加認(rèn)真,以增加自己的知識(shí)儲(chǔ)備,拓寬自己的知識(shí)面,鍛煉自己的能力,最終使我的綜合素質(zhì)得到較大的提高。</p><p> 不能不提的是,在這次課程設(shè)
99、計(jì)的過程中我確實(shí)出現(xiàn)過一些比較嚴(yán)重的錯(cuò)誤,碰到過一些難以跨過的路障,但慶幸的是我在老師和同學(xué)的幫助下改正錯(cuò)誤,克服了困難,并最終成功調(diào)試出了程序。當(dāng)程序調(diào)試出來的那一瞬間,我感覺自己完成了一件非常了不起的事,特別有成就感,這大大增加了我的信息。在以后的日子,我將會(huì)繼續(xù)我的興趣繼續(xù)深入學(xué)習(xí)程序設(shè)計(jì),相信在越來越多的嘗試之后,自己會(huì)不斷地進(jìn)步不斷地提高。</p><p> 回顧本次課程設(shè)計(jì),雖然說在過程中保證了面向
100、對(duì)象程序設(shè)計(jì)的抽象、封裝、多態(tài)和繼承的特點(diǎn),也綜合考慮到了圖書管理的具體方面,以及做到了界面設(shè)計(jì)的簡(jiǎn)潔與友好、數(shù)據(jù)庫(kù)設(shè)計(jì)的合理,但無可爭(zhēng)辯的是確實(shí)存在一些不足,還請(qǐng)各位老師和同學(xué)多多指教。 最后衷心地感謝老師的指導(dǎo)與同學(xué)的幫助,沒有你們,我不可能比較順利的完成這次程序設(shè)計(jì)。</p><p><b> 附錄:源程序清單:</b></p><p> #include
101、"iostream"</p><p> #include "conio.h" </p><p> #include "iomanip" </p><p> #include "string"</p><p> #include "fstream&
102、quot;</p><p> using namespace std; </p><p> const int Maxr=100; //最多的讀者 </p><p> const int Maxb=100; //最多的圖書 </p><p> const int Maxbor=5; //每位讀者最多借五本書</p>&l
103、t;p> char today[32] ="";</p><p> char today1[32] =""; </p><p> char second[32]=""; </p><p> class Reader //讀者的信息描述 </p><p><
104、;b> {</b></p><p><b> private: </b></p><p> int tag; //刪除標(biāo)記 1:已刪 0:未刪 </p><p> int no; //讀者編號(hào)</p><p> char name[10]; //讀者姓名 </p&g
105、t;<p> int borbook[Maxbor]; //所借圖書 </p><p><b> public: </b></p><p> Reader() { } </p><p> char *getname() //獲取姓名 </p><p><b> { </b>&
106、lt;/p><p> return name; </p><p><b> } </b></p><p> int gettag() //獲取刪除標(biāo)記 </p><p><b> { </b></p><p> return tag; </p><p
107、><b> } </b></p><p> int getno() //獲取讀者編號(hào) </p><p><b> { </b></p><p> return no; </p><p><b> } </b></p><p> void
108、 setname(char na[]) //設(shè)置姓名 </p><p><b> { </b></p><p> strcpy(name,na); </p><p><b> }</b></p><p> void delbook() //設(shè)置刪除標(biāo)記 1:已刪 0:未刪 </p>
109、;<p><b> { </b></p><p><b> tag=1; </b></p><p><b> } </b></p><p> void addreader(int n,char *na) //增加讀者 </p><p><b>
110、; { </b></p><p><b> tag=0; </b></p><p><b> no=n; </b></p><p> strcpy(name,na); </p><p> for(int i=0;i<Maxbor;i++) </p><
111、p> borbook[i]=0; </p><p><b> } </b></p><p> void borrowbook(int bookid,char brdate[32]) //借書操作 </p><p><b> { </b></p><p> for(int i=0;i&
112、lt;Maxbor;i++) </p><p><b> { </b></p><p> if (borbook[i]==0) </p><p><b> { </b></p><p> borbook[i]=bookid;</p><p><b> re
113、turn; </b></p><p><b> } </b></p><p><b> } </b></p><p><b> } </b></p><p> int retbook(int bookid) //還書操作 </p><p&
114、gt;<b> { </b></p><p> for(int i=0;i<Maxbor;i++) </p><p><b> { </b></p><p> if(borbook[i]==bookid) </p><p><b> { </b></p&g
115、t;<p> borbook[i]=0;</p><p> cout<<"還書成功!"<<endl;</p><p> return 1; </p><p><b> } </b></p><p><b> }</b></p&
116、gt;<p> cout<<"未借該書,還書失??!"<<endl;</p><p> return 0; </p><p><b> } </b></p><p> void disp() //讀出讀者信息 </p><p><b> { &l
117、t;/b></p><p> int have=0;</p><p><b> int bz=0;</b></p><p> cout << setw(5) << no <<setw(21) << name<<setw(15);</p><p>
118、for(int i=0;i<Maxbor;i++) </p><p> if(borbook[i]!=0)</p><p><b> { </b></p><p><b> if(bz==0)</b></p><p><b> {</b></p>&
119、lt;p><b> have=1;</b></p><p> cout <<"["<<borbook[i]; </p><p> cout << "]\t\t";</p><p><b> bz++;</b>&l
120、t;/p><p><b> }else{</b></p><p> cout <<"\r\t\t\t\t\t""["<< borbook[i]; </p><p> cout << "]\t\t";</p>&l
121、t;p><b> }</b></p><p><b> }</b></p><p> if(have==0)cout<<" 還未借書";</p><p> cout <<endl;</p><p><b>
122、} </b></p><p><b> }; </b></p><p> class RDatabase //讀者類庫(kù),實(shí)現(xiàn)建立讀者的個(gè)人資料 </p><p><b> { </b></p><p><b> private: </b></p>
123、<p> int top; //讀者記錄指針 </p><p> Reader read[Maxr]; //讀者記錄 </p><p><b> public: </b></p><p> RDatabase() //構(gòu)造函數(shù),將reader.txt讀到read[]中 </p><p><b&
124、gt; { </b></p><p> Reader s; </p><p> top=-1; </p><p> fstream file("reader.txt",ios::in); //打開一個(gè)輸入文件</p><p> while (1) </p><p><
125、;b> { </b></p><p> file.read((char *)&s,sizeof(s)); </p><p> if (!file)break; </p><p><b> top++; </b></p><p> read[top]=s; </p><
126、;p><b> } </b></p><p> file.close(); //關(guān)閉 reader.txt </p><p><b> } </b></p><p> void clear() //刪除所有讀者信息 </p><p><b> { </b><
127、;/p><p><b> top=-1; </b></p><p><b> } </b></p><p> int addreader(int n,char *na) //添加讀者時(shí)先查找是否存在</p><p><b> { </b></p><p&
128、gt; Reader *p=query(n); </p><p> if (p==NULL) </p><p><b> { </b></p><p><b> top++; </b></p><p> read[top].addreader(n,na); </p><
129、p> return 1; </p><p><b> }</b></p><p> else cout<<"該編號(hào)已經(jīng)存在!";</p><p> return 0; </p><p><b> } </b></p><p>
130、; Reader *query(int readerid) //按讀者編號(hào)查找</p><p><b> { </b></p><p> for (int i=0;i<=top;i++) </p><p> if (read[i].getno()==readerid&&read[i].gettag()==0) &l
131、t;/p><p><b> { </b></p><p> return &read[i]; </p><p><b> } </b></p><p> return NULL; </p><p><b> }</b></p>
132、<p> Reader *queryname(char readername[10]) //按讀者姓名查找 </p><p><b> { </b></p><p> for (int i=0;i<=top;i++) </p><p> if (strcmp(read[i].g
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 圖書管理系統(tǒng)c++課程設(shè)計(jì)
- c++圖書管理系統(tǒng)課程設(shè)計(jì)
- c++圖書管理系統(tǒng)課程設(shè)計(jì)
- c++圖書管理系統(tǒng)課程設(shè)計(jì)
- c++課程設(shè)計(jì)圖書管理系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告-圖書管理系統(tǒng)
- c++課程設(shè)計(jì)--圖書管理系統(tǒng)的設(shè)計(jì)
- c++課程設(shè)計(jì)圖書管理
- c&c++課程設(shè)計(jì)-圖書管理系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告--小型圖書管理系統(tǒng)
- c++課程設(shè)計(jì)圖書管理系統(tǒng) (2)
- c++課程設(shè)計(jì)報(bào)告書---圖書管理系統(tǒng)
- c++課程設(shè)計(jì)(簡(jiǎn)易圖書管理系統(tǒng))實(shí)習(xí)報(bào)告
- c課程設(shè)計(jì)---圖書管理系統(tǒng)課程設(shè)計(jì)
- c語(yǔ)言課程設(shè)計(jì)--圖書管理系統(tǒng)
- c++課程設(shè)計(jì)---圖書銷售管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)--圖書管理系統(tǒng)
- c課程設(shè)計(jì)報(bào)告-- 圖書管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)(圖書管理系統(tǒng))
- c#-圖書管理系統(tǒng)-課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論