《C++課程設(shè)計報告--公司設(shè)備管理系統(tǒng).doc》由會員分享,可在線閱讀,更多相關(guān)《C++課程設(shè)計報告--公司設(shè)備管理系統(tǒng).doc(13頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、江南大學(xué)數(shù)字媒體學(xué)院 課程設(shè)計報告課程設(shè)計報告(說明書)課程: 面向?qū)ο笳Z言與 C+程序設(shè)計題目: 公司設(shè)備管理系統(tǒng) 數(shù)字媒體 學(xué) 院 數(shù)字媒體技術(shù) 專 業(yè)班 級: 數(shù)字媒體 1003 學(xué) 號: 0305100307 學(xué)生姓名: 劉文韜 指導(dǎo)教師: 姚曉峰 日 期: 2011.12.272012.1.04 目錄1. 課程設(shè)計目的22. 設(shè)計題目(問題)描述和要求22.1 題目:公司設(shè)備管理系統(tǒng)22.1.1 問題描述:22.1.2 要求:23. 系統(tǒng)分析與設(shè)計33.1 系統(tǒng)功能模塊33.2 系統(tǒng)總體框架33.2.1 類的層次圖43.2.2 系統(tǒng)功能模塊圖43.2.3 系統(tǒng)關(guān)鍵算法流程圖54. 系
2、統(tǒng)調(diào)試出現(xiàn)的問題94.1 調(diào)試方法94.2 測試遇到的問題及解決105. 系統(tǒng)運(yùn)行報告106. 總結(jié)127. 參考書目121. 課程設(shè)計目的(1)要求學(xué)生達(dá)到熟練掌握C+語言的基本知識和技能;(2)基本掌握面向?qū)ο蟪绦蛟O(shè)計的基本思路和方法;(3)能夠利用所學(xué)的基本知識和技能,解決簡單的面向?qū)ο蟪绦蛟O(shè)計問題。2. 設(shè)計題目(問題)描述和要求2.1 題目:公司設(shè)備管理系統(tǒng)2.1.1 問題描述:公司現(xiàn)有以下設(shè)備:普通電視機(jī)、DVD、帶DVD 的電視機(jī),帶DVD 的電視機(jī)的售價為普通電視機(jī)和DVD 單價之和的80%,要求對所有的庫存設(shè)備都能按照品名進(jìn)行顯示、查找、增加和刪除、保存的功能。2.1.2 要
3、求:基本要求:(1)要求利用面向?qū)ο蟮姆椒ㄒ约癈+的編程思想來完成系統(tǒng)的設(shè)計;(2)要求在設(shè)計的過程中,建立清晰的類層次;(3)在系統(tǒng)中至少要定義四個類,每個類中要有各自的屬性和方法;(4)在系統(tǒng)的設(shè)計中,至少要用到面向?qū)ο蟮囊环N機(jī)制。創(chuàng)新要求:在基本要求達(dá)到后,可進(jìn)行創(chuàng)新設(shè)計,如根據(jù)查找結(jié)果進(jìn)行修改的功能。寫出設(shè)計說明書。(1)分析系統(tǒng)中的各個實體之間的關(guān)系及其屬性和行為;(2)根據(jù)問題描述,設(shè)計系統(tǒng)的類層次;(3)完成類層次中各個類的描述(包括屬性和方法);(4)完成類中各個成員函數(shù)的定義;(5)完成系統(tǒng)的應(yīng)用模塊;(6)功能調(diào)試;(7)完成系統(tǒng)總結(jié)報告以及系統(tǒng)使用說明書。3. 系統(tǒng)分析與
4、設(shè)計3.1 系統(tǒng)功能模塊根據(jù)問題描述和要求,系統(tǒng)要求能夠?qū)λ械膸齑嬖O(shè)備都能按照品名進(jìn)行顯示、查找、增加和刪除、保存的功能。確定程序至少應(yīng)該具備如下功能: “查詢” 、 “增加” 、 “刪除” 、 “數(shù)據(jù)保存”基本模塊。(1)添加功能:能根據(jù)設(shè)備的變動情況,添加記錄;(2)刪除功能: 刪除記錄;(3)保存功能:能對輸入的數(shù)據(jù)進(jìn)行相應(yīng)的存儲,要求重載插入和提取符以完成數(shù)據(jù)的保存和打開。(4)刪除功能: 刪除記錄查詢功能:能根據(jù)編號進(jìn)行查詢;考慮到系統(tǒng)實現(xiàn)簡捷,設(shè)備數(shù)據(jù)文件采用文本文件,設(shè)備數(shù)據(jù)文件名:某某公司設(shè)備管理系統(tǒng).txt。系統(tǒng)使用的數(shù)據(jù)文件格式如下:某某公司設(shè)備管理系統(tǒng).txt 格式(格
5、式:類型,名稱,價格,庫存數(shù)量) 注: 1類型;2名稱;3價格;4庫存數(shù)量3.2 系統(tǒng)總體框架使用面向?qū)ο蟮某绦蛟O(shè)計思想進(jìn)行分析,整個系統(tǒng)涉及一類信息和操作,設(shè)備。設(shè)備類machine:設(shè)備類包含設(shè)備里面的設(shè)備類型,名稱,價錢以及庫存數(shù)量。其余TV,DVD,TV_DVD由設(shè)備類派生而來。設(shè)備類中包含對設(shè)備相關(guān)屬性操作的相關(guān)函數(shù)(setname(),getname(),setkind(),getkind(),setprice(),getprice(),getnum(),setnum() )。3.2.1 類的層次圖設(shè)計四個類:設(shè)備、普通電視機(jī)、DVD、帶DVD的電視機(jī)。這四個類的關(guān)系如下:設(shè)備管理
6、系統(tǒng)添加設(shè)備信息輸出設(shè)備信息查詢設(shè)備信息刪除設(shè)備信息保存設(shè)備信息3.2.2 系統(tǒng)功能模塊圖3.2.3 系統(tǒng)關(guān)鍵算法流程圖(1)主函數(shù)流程(2)add()(3)search()(4)output()(5)save()(6)deleteinfo()4. 系統(tǒng)調(diào)試出現(xiàn)的問題4.1 調(diào)試方法在編譯連接前先進(jìn)行靜態(tài)檢查,對每個函數(shù)模塊出現(xiàn)的細(xì)節(jié)語法錯誤逐步改正。再進(jìn)行系統(tǒng)編譯連接,根據(jù)編譯器提示錯誤類型逐個修正。調(diào)試一個函數(shù)模塊的程序時,將其他模塊及相應(yīng)的函數(shù)定義用注釋語句注釋,至頂向下,順序化,模塊化。4.2 測試遇到的問題及解決(1)輸入的數(shù)據(jù)無法查找。解決方法:調(diào)用嵌套查找函數(shù),將實參傳遞至相應(yīng)形
7、參,定位數(shù)據(jù),并輸出。(2)輸入數(shù)據(jù)類型如果不同,會出現(xiàn)死循環(huán)。解決方法,更改數(shù)據(jù)定義類型。(3)測試某段文本,檢查文本向量序列時,發(fā)現(xiàn)其句數(shù),與真實情況不符。5. 系統(tǒng)運(yùn)行報告6. 總結(jié)從課程設(shè)計的目的出發(fā),通過課程設(shè)計的各個環(huán)節(jié),通過C+課程設(shè)計實例,我們握了C+語言程序設(shè)計基礎(chǔ),學(xué)會運(yùn)用基本算法,程序控制結(jié)構(gòu),學(xué)會了調(diào)試程序的方法,培養(yǎng)嚴(yán)謹(jǐn)?shù)乃季S。并逐步加深了對知識的理解與實際運(yùn)用,學(xué)會分析和解決問題將所學(xué)知識聯(lián)系實際,提高了我對語言學(xué)習(xí)的積極性,增強(qiáng)了自己的動手能。學(xué)到了如何通過團(tuán)隊合作將一個復(fù)雜的程序分解成段簡單化,減小工作量,但是由于自身編程能力不足導(dǎo)致了編寫時出現(xiàn)各種異常,但在我們共同努力和討論下,一個個的錯誤都迎刃而解。雖然最后成功了,可是出現(xiàn)了很多不足之處,例如類成員的互相調(diào)用,文件的讀寫與存儲,再加上對鏈表方面的陌生,使得編寫過程異常繁瑣困難,在時間有限的情況下只能做成現(xiàn)在這個程度,這確實比較遺憾。7. 參考書目1.鄭莉、董淵、何江舟編著,C+語言程序設(shè)計(第4版),清華大學(xué)出版社,2010.102.譚浩強(qiáng)編著,C程序設(shè)計(第三版),清華大學(xué)出版社,2009.103.現(xiàn)代C+程序設(shè)計(原書第2版),Barbara Johnston美,2008.94.C+標(biāo)準(zhǔn)程序庫自修教程與參考手冊,Nicolai M.Josuttis,2002.9 12