數(shù)據(jù)結(jié)構(gòu)課設(shè)報告_第1頁
數(shù)據(jù)結(jié)構(gòu)課設(shè)報告_第2頁
數(shù)據(jù)結(jié)構(gòu)課設(shè)報告_第3頁
數(shù)據(jù)結(jié)構(gòu)課設(shè)報告_第4頁
數(shù)據(jù)結(jié)構(gòu)課設(shè)報告_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、沈陽工程學(xué)院 課程設(shè)計(jì) 設(shè)計(jì)題目: 數(shù)據(jù)結(jié)構(gòu)與算法的設(shè)計(jì)與實(shí)現(xiàn) 系 別: 信息學(xué)院 班 級: 學(xué)生姓名: 學(xué)號: 指導(dǎo)教師: 職稱: 講師講師 起止日期:2014年06月23日起至2014年07月04日止 沈陽工程學(xué)院 課程設(shè)計(jì)任務(wù)書 課程設(shè)計(jì)題目:看病排隊(duì) 系 別:信息工程系 班級: 學(xué)生姓名: 學(xué)號: 指導(dǎo)教師: 職稱: 講師講師 課程設(shè)計(jì)進(jìn)行地點(diǎn):實(shí)訓(xùn)F座 任務(wù)下達(dá)時間:2014年06月23日 起止日期:2014年06月23日起-至2014年07月04日止 教研室主任: 年 月 日批準(zhǔn) 、課程設(shè)計(jì)的原始資料及依據(jù) 看病排隊(duì)問題描述 醫(yī)院各科室的醫(yī)生有限, 因此病人到醫(yī)院看病時必須候診,而

2、病人病情有輕重之分, 不能簡 單地根據(jù)先來先服務(wù)的原則進(jìn)行診斷治療,所以醫(yī)院根據(jù)病人的病情規(guī)定了不同的優(yōu)先級 別。醫(yī)生在治療時,總是選擇優(yōu)先級別高的進(jìn)行診治,如果遇到兩個級別相同的病人,則選 擇先來排隊(duì)的病人進(jìn)行診治。 二、課程設(shè)計(jì)主要內(nèi)容及要求 看病排隊(duì)內(nèi)容及要求 用隊(duì)列模擬上述看病排隊(duì)候診的問題,建立兩個隊(duì)列分別對應(yīng)兩個不同的優(yōu)先級別,按照從 終端讀入的輸入數(shù)據(jù)的方式進(jìn)行模擬管理。 (1)新的病人掛號然后加入隊(duì)列候診,護(hù)士根據(jù)病情指定其優(yōu)先級。 (2 )醫(yī)生根據(jù)優(yōu)先級別為病人進(jìn)行診治。 (3)病人出隊(duì)。 三、對課程設(shè)計(jì)說明書撰寫內(nèi)容、格式、字?jǐn)?shù)的要求 1 課程設(shè)計(jì)說明書是體現(xiàn)和總結(jié)課程設(shè)計(jì)

3、成果的載體,主要內(nèi)容包括:設(shè)計(jì)題目、設(shè)計(jì)目 的、設(shè)備器材、設(shè)計(jì)原理及內(nèi)容、設(shè)計(jì)步驟、遇到的問題及解決方法、設(shè)計(jì)總結(jié)、設(shè)計(jì)小組 評語、參考文獻(xiàn)等。一般不應(yīng)少于3000字。 2 在適當(dāng)位置配合相應(yīng)的實(shí)驗(yàn)原理圖、數(shù)據(jù)通路圖、微程序流程圖、實(shí)驗(yàn)接線圖、微指令 代碼表等圖表進(jìn)行說明。應(yīng)做到文理通順,內(nèi)容正確完整,書寫工整,裝訂整齊。 3設(shè)計(jì)總結(jié)部分主要寫本人完成工作簡介以及自己的設(shè)計(jì)體會,包括通過課程設(shè)計(jì)學(xué)到了 什么,哪里遇到了困難, 解決的辦法以及今后的目標(biāo)。設(shè)計(jì)小組評語處注明設(shè)計(jì)組編號、設(shè) 計(jì)組組長、設(shè)計(jì)組成員,并由設(shè)計(jì)組組長給出評語。 4課程設(shè)計(jì)說明書手寫或打印均可。手寫要用學(xué)校統(tǒng)一的課程設(shè)計(jì)用紙

4、,用黑或藍(lán)黑墨水 工整書寫;打印時采用 A4紙,頁邊距均為20mm正文采用宋體小四號字,行間距 18磅。 文中大標(biāo)題采用黑體小三號字, 一級節(jié)標(biāo)題采用黑體四號字, 二級節(jié)標(biāo)題采用黑體小四號字, 表題與圖題采用宋體五號字。 5 課程設(shè)計(jì)說明書裝訂順序?yàn)椋悍饷?、任?wù)書、成績評定表、目錄、正文、參 考文獻(xiàn)。 四、設(shè)計(jì)完成后應(yīng)提交成果的種類、數(shù)量、質(zhì)量等方面的要求 1 完成“任務(wù)書”中指定的操作功能,運(yùn)行穩(wěn)定。 2課程設(shè)計(jì)說明書。 五、時間進(jìn)度安排 順 序 階段日期 計(jì)劃完成內(nèi)容 備注 1 第1天 閱讀資料 2 第2 3天 系統(tǒng)分析設(shè)計(jì) 3 第47天 程序編制、調(diào)試及運(yùn)行 4 第89天 成績評定 5

5、第10天 撰寫課程設(shè)計(jì)說明書 六、主要參考資料(文獻(xiàn)) 1 嚴(yán)蔚敏 吳偉民數(shù)據(jù)結(jié)構(gòu)(C語言版)北京:清華大學(xué)出版社.2007 2 譚浩強(qiáng).C程序設(shè)計(jì)北京:清華大學(xué)出版社.1999.12 3 滕國文.數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì).北京:清華大學(xué)出版社.2010.09 4 蘇仕華等編著.數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì).北京:機(jī)械工業(yè)出版社.2005.05 李春葆.數(shù)據(jù)結(jié)構(gòu)(C語言版)習(xí)題與解析.北京:清華大學(xué)出版社.2002.04 沈陽工程學(xué)院 計(jì)算機(jī)組成原理課程設(shè)計(jì)成績評定表 系(部): 信息工程系 班級: 學(xué)生姓名: 指導(dǎo)教師評審意見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 調(diào)研 論證 能獨(dú)立查閱文獻(xiàn),收集資料;能制定

6、課程設(shè)計(jì)方 案和日程安排。 0.1 5 4 3 2 工作能力 態(tài)度 工作態(tài)度認(rèn)真,遵守紀(jì)律,出勤情況是否良好, 能夠獨(dú)立完成設(shè)計(jì)工作, 0.2 5 4 3 2 工作量 按期圓滿完成規(guī)定的設(shè)計(jì)任務(wù),工作量飽滿, 難度適宜。 0.2 5 4 3 2 說明書的 質(zhì)量 說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理, 文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊 全,圖表完備,書寫工整規(guī)范。 0.5 5 4 3 2 指導(dǎo)教師評審成績 (加權(quán)分合計(jì)乘以8) 分 加權(quán)分合計(jì) 指導(dǎo)教師簽名: 2014年 月日 評閱教師評審意見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 查閱 文獻(xiàn) 查閱文獻(xiàn)有一定廣泛性;有綜合歸納資料的能

7、 力 0.2 5 4 3 2 工作量 工作量飽滿,難度適中。 0.5 5 4 3 2 說明書的 質(zhì)量 說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理, 文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊 全,圖表完備,書寫工整規(guī)范。 0.3 5 4 3 2 評閱教師評審成績 (加權(quán)分合計(jì)乘以4) 分 加權(quán)分合計(jì) 評閱教師簽名: 2014年月日 答辯小組評審意見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 學(xué)生匯報 匯報準(zhǔn)備充分,思路清晰;語言表達(dá)準(zhǔn)確,概 念清楚,論點(diǎn)正確,有層次,有重點(diǎn),基本上 反映了所完成任務(wù)的全部內(nèi)容;時間符合要求。 0.5 5 4 3 2 答辯 思路清晰;回答問題有理論依據(jù),基本概念清 楚;

8、主要問題回答準(zhǔn)確,深入,有說服力。 0.5 5 4 3 2 答辯小組評審成績 (加權(quán)分合計(jì)乘以8) 分 加權(quán)分合計(jì) 答辯小組教師簽名: 2014年 月日 指導(dǎo)教師評審意見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 調(diào)研 論證 能獨(dú)立查閱文獻(xiàn),收集資料;能制定課程設(shè)計(jì)方 案和日程安排。 0.1 5 4 3 2 工作能力 態(tài)度 工作態(tài)度認(rèn)真,遵守紀(jì)律,出勤情況是否良好, 能夠獨(dú)立完成設(shè)計(jì)工作, 0.2 5 4 3 2 工作量 按期圓滿完成規(guī)定的設(shè)計(jì)任務(wù),工作量飽滿, 難度適宜。 0.2 5 4 3 2 說明書的 質(zhì)量 說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理, 文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊

9、 全,圖表完備,書寫工整規(guī)范。 0.5 5 4 3 2 指導(dǎo)教師評審成績 (加權(quán)分合計(jì)乘以8) 分 加權(quán)分合計(jì) 指導(dǎo)教師簽名: 2014年 月日 評閱教師評審意見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 查閱 文獻(xiàn) 查閱文獻(xiàn)有一定廣泛性;有綜合歸納資料的能 力 0.2 5 4 3 2 工作量 工作量飽滿,難度適中。 0.5 5 4 3 2 說明書的 質(zhì)量 說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理, 文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊 全,圖表完備,書寫工整規(guī)范。 0.3 5 4 3 2 評閱教師評審成績 (加權(quán)分合計(jì)乘以4) 分 加權(quán)分合計(jì) 評閱教師簽名: 2014年 月日 答辯小組評審意

10、見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 學(xué)生匯報 匯報準(zhǔn)備充分,思路清晰;語言表達(dá)準(zhǔn)確,概 念清楚,論點(diǎn)正確,有層次,有重點(diǎn),基本上 反映了所完成任務(wù)的全部內(nèi)容;時間符合要求。 0.5 5 4 3 2 答辯 思路清晰;回答問題有理論依據(jù),基本概念清 楚;主要問題回答準(zhǔn)確,深入,有說服力。 0.5 5 4 3 2 答辯小組評審成績 (加權(quán)分合計(jì)乘以8) 分 加權(quán)分合計(jì) 答辯小組教師簽名: 2014年 月日 指導(dǎo)教師評審意見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 調(diào)研 論證 能獨(dú)立查閱文獻(xiàn),收集資料;能制定課程設(shè)計(jì)方 案和日程安排。 0.1 5 4 3 2 工作能力 態(tài)度 工作態(tài)度認(rèn)真,遵守

11、紀(jì)律,出勤情況是否良好, 能夠獨(dú)立完成設(shè)計(jì)工作, 0.2 5 4 3 2 工作量 按期圓滿完成規(guī)定的設(shè)計(jì)任務(wù),工作量飽滿, 難度適宜。 0.2 5 4 3 2 說明書的 質(zhì)量 說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理, 文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊 全,圖表完備,書寫工整規(guī)范。 0.5 5 4 3 2 指導(dǎo)教師評審成績 (加權(quán)分合計(jì)乘以8) 分 加權(quán)分合計(jì) 指導(dǎo)教師簽名: 2014年 月日 評閱教師評審意見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 查閱 文獻(xiàn) 查閱文獻(xiàn)有一定廣泛性;有綜合歸納資料的能 力 0.2 5 4 3 2 工作量 工作量飽滿,難度適中。 0.5 5 4 3 2

12、說明書的 質(zhì)量 說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理, 文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊 全,圖表完備,書寫工整規(guī)范。 0.3 5 4 3 2 評閱教師評審成績 (加權(quán)分合計(jì)乘以4) 分 加權(quán)分合計(jì) 評閱教師簽名: 2014年月日 答辯小組評審意見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 學(xué)生匯報 匯報準(zhǔn)備充分,思路清晰;語言表達(dá)準(zhǔn)確,概 念清楚,論點(diǎn)正確,有層次,有重點(diǎn),基本上 反映了所完成任務(wù)的全部內(nèi)容;時間符合要求。 0.5 5 4 3 2 答辯 思路清晰;回答問題有理論依據(jù),基本概念清 楚;主要問題回答準(zhǔn)確,深入,有說服力。 0.5 5 4 3 2 答辯小組評審成績 (加權(quán)分

13、合計(jì)乘以8) 分 加權(quán)分合計(jì) 答辯小組教師簽名: 2014年 月日 指導(dǎo)教師評審意見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 調(diào)研 論證 能獨(dú)立查閱文獻(xiàn),收集資料;能制定課程設(shè)計(jì)方 案和日程安排。 0.1 5 4 3 2 工作能力 態(tài)度 工作態(tài)度認(rèn)真,遵守紀(jì)律,出勤情況是否良好, 能夠獨(dú)立完成設(shè)計(jì)工作, 0.2 5 4 3 2 工作量 按期圓滿完成規(guī)定的設(shè)計(jì)任務(wù),工作量飽滿, 難度適宜。 0.2 5 4 3 2 說明書的 質(zhì)量 說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理, 文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊 全,圖表完備,書寫工整規(guī)范。 0.5 5 4 3 2 指導(dǎo)教師評審成績 (加權(quán)分合計(jì)

14、乘以8) 分 加權(quán)分合計(jì) 指導(dǎo)教師簽名: 2014年 月日 評閱教師評審意見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 查閱 文獻(xiàn) 查閱文獻(xiàn)有一定廣泛性;有綜合歸納資料的能 力 0.2 5 4 3 2 工作量 工作量飽滿,難度適中。 0.5 5 4 3 2 說明書的 質(zhì)量 說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理, 文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊 全,圖表完備,書寫工整規(guī)范。 0.3 5 4 3 2 評閱教師評審成績 (加權(quán)分合計(jì)乘以4) 分 加權(quán)分合計(jì) 評閱教師簽名: 2014年 月日 答辯小組評審意見 評價內(nèi)容 具體要求 權(quán)重 評分 加權(quán)分 學(xué)生匯報 匯報準(zhǔn)備充分,思路清晰;語言表達(dá)

15、準(zhǔn)確,概 念清楚,論點(diǎn)正確,有層次,有重點(diǎn),基本上 反映了所完成任務(wù)的全部內(nèi)容;時間符合要求。 0.5 5 4 3 2 答辯 思路清晰;回答問題有理論依據(jù),基本概念清 楚;主要問題回答準(zhǔn)確,深入,有說服力。 0.5 5 4 3 2 答辯小組評審成績 (加權(quán)分合計(jì)乘以8) 分 加權(quán)分合計(jì) 答辯小組教師簽名: 2014年月日 摘要 現(xiàn)如今很多的服務(wù)行業(yè),都意識到快速的服務(wù),對于人們很重要。衣食住行相關(guān)的行業(yè) 更是很重要的,所以,人工遠(yuǎn)遠(yuǎn)趕不上時代的需求。在這種情下,機(jī)械化更勝一籌。由此很 多程序應(yīng)運(yùn)而生。 看病排隊(duì),是個很常見的問題。 然而,在這種情況下,如果死板的按“先到先治“的話, 可能會耽誤

16、了最佳的治療時間,病重者可能,會因此喪命。所以設(shè)計(jì)出看病排隊(duì)程序是很有 意義的。 本計(jì)劃用于醫(yī)院站隊(duì)看病問題,并指出以“先重后輕,先到先看”的原則。為重病患者 抓緊了最佳的治療時間,同時又保證了醫(yī)院的秩序。 選用數(shù)據(jù)結(jié)構(gòu)中的隊(duì)列來實(shí)現(xiàn)其功能。列隊(duì)是一種特殊的線性表,是限制在表的一段進(jìn) 行插入的一端和在另一端進(jìn)行刪除的線性表。表中允許插入的一端稱為隊(duì)尾(rear),允許 擅長的一端稱為隊(duì)頭 (front )。隊(duì)列可以采取順序存儲和鏈?zhǔn)酱鎯煞N方式,根據(jù)本課題的 要求采用鏈?zhǔn)酱鎯晚樞虼鎯煞N方式,故采用列隊(duì)的鏈?zhǔn)酱鎯@一數(shù)據(jù)結(jié)構(gòu),以及處理各 種操作。 關(guān)鍵字:線性表,棧和隊(duì)列,二叉樹,圖 沈陽工

17、程學(xué)院課程設(shè)計(jì)目錄 目錄 第一章概述I 1.1 設(shè)計(jì)題目I 1.2 設(shè)計(jì)目的I 第二章設(shè)計(jì)原理及運(yùn)行環(huán)境2. 2.1 設(shè)計(jì)內(nèi)容2 2.2 設(shè)計(jì)原理2 2.3 運(yùn)行環(huán)境2 第三章系統(tǒng)分析與設(shè)計(jì)5. 3.1 問題分析5 3.2 功能模塊圖5 3.3 程序流程圖6 3.4 排序過程7 第四章系統(tǒng)功能實(shí)現(xiàn)8. 4.1 菜單功能實(shí)現(xiàn)8 4.2 掛號功能10 4.3 查詢功能15 結(jié)論1.9 參考文獻(xiàn)20 沈陽工程學(xué)院課程設(shè)計(jì)第1章概述 第一章概述 1.1設(shè)計(jì)題目 有一家大型醫(yī)院,每天需要接治1000多名患者,排隊(duì)掛號成了一個難題。 以先到先治的原則,重病的患者往往因?yàn)榈却龝r間太長,而耽誤最佳的治療時間。

18、 這是一個尷尬的局面,可醫(yī)院有醫(yī)院的秩序。另一方人工有限不能時時刻刻照顧 每一個病人。 假設(shè),現(xiàn)在有5名患者需要就醫(yī),分別是1號,2號,3號,4號和5號。 其中3號和5號,很嚴(yán)重,有生命危險,需要盡快得到醫(yī)治。但是 1和2都排在 3號前面那該怎么辦呢?當(dāng)然,如果按順序叫救治的話是沒錯,可人命關(guān)天,這 樣就不合理了。所以我們,要考慮讓病重的病人排在前面。如果情況差不多,那 么就按先來先看的順序,排列病人的就醫(yī)時間。 根據(jù)上述情況,使用隊(duì)列的方法,編輯出一個應(yīng)對看病排隊(duì)候診的系統(tǒng)。 1.2設(shè)計(jì)目的 現(xiàn)如今很多的服務(wù)行業(yè),都意識到快速的服務(wù),對于人們很重要。衣食住行 相關(guān)的行業(yè)更是很重要的,所以,人

19、工遠(yuǎn)遠(yuǎn)趕不上時代的需求。在這種情下,機(jī) 械化更勝一籌。由此很多程序應(yīng)運(yùn)而生。 看病排隊(duì),是個很常見的問題。然而,在這種情況下,如果死板的按“先到 先治“的話,可能會耽誤了最佳的治療時間,病重者可能,會因此喪命。所以設(shè) 計(jì)出看病排隊(duì)程序是很有意義的。 通過數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)醫(yī)院站隊(duì)看病問題,并指出以“先重后輕,先到先看”的 原則。為重病患者抓緊了最佳的治療時間,同時也保證醫(yī)院的秩序。 I 沈陽工程學(xué)院課程設(shè)計(jì)第2章設(shè)計(jì)原理及運(yùn)行環(huán)境 第二章設(shè)計(jì)原理及運(yùn)行環(huán)境 2.1設(shè)計(jì)內(nèi)容 根據(jù)看病排隊(duì)內(nèi)容及要求,我們將使用隊(duì)列,模擬上述看病排隊(duì)候診的問題, 建立兩個隊(duì)列分別對應(yīng)兩個不同的優(yōu)先級別,按照從終端讀入的輸

20、入數(shù)據(jù)的方式 進(jìn)行模擬管理。 (1)新的病人掛號然后加入隊(duì)列候診,護(hù)士根據(jù)病情指定其優(yōu)先級。 (2)醫(yī)生根據(jù)優(yōu)先級別為病人進(jìn)行診治。 (3)病人出隊(duì)。 2.2設(shè)計(jì)原理 本次設(shè)計(jì)采用C語言作為設(shè)計(jì)語言,C語言是一種面向過程的計(jì)算機(jī)程序設(shè) 計(jì)語言。最初為unix而生。它既有高級語言的特點(diǎn),又具有匯編語言的特點(diǎn)。 它可以作為系統(tǒng)設(shè)計(jì)語言,編寫工作系統(tǒng)應(yīng)用程序,也可以作為應(yīng)用程序設(shè)計(jì)語 言,編寫不依賴計(jì)算機(jī)硬件的應(yīng)用程序。因此,它的應(yīng)用范圍廣泛。 數(shù)據(jù)結(jié)構(gòu)是計(jì)算機(jī)專業(yè)的核心課程, 是一門實(shí)踐性很強(qiáng)的課程。課程設(shè)計(jì)是 加強(qiáng)學(xué)生實(shí)踐能力的一個強(qiáng)有力手段, 要求學(xué)生掌握數(shù)據(jù)結(jié)構(gòu)的應(yīng)用、算法的編 寫、類C語言

21、的算法轉(zhuǎn)換成C(C+)程序并上機(jī)調(diào)試的基本方法,還要求學(xué)生在 完成程序設(shè)計(jì)的同時能夠?qū)懗霰容^規(guī)范的設(shè)計(jì)報告。嚴(yán)格實(shí)施課程設(shè)計(jì)這一環(huán) 節(jié),對于學(xué)生基本程序設(shè)計(jì)素養(yǎng)的培養(yǎng)和軟件工作者工作作風(fēng)的訓(xùn)練,將起到顯 著的促進(jìn)作用。 一般認(rèn)為,一個數(shù)據(jù)結(jié)構(gòu)是由數(shù)據(jù)元素依據(jù)某種邏輯聯(lián)系組織起來的。對數(shù) 據(jù)元素間邏輯關(guān)系的描述稱為數(shù)據(jù)的邏輯結(jié)構(gòu);數(shù)據(jù)必須在計(jì)算機(jī)內(nèi)存儲,數(shù)據(jù) 的存儲結(jié)構(gòu)是數(shù)據(jù)結(jié)構(gòu)的實(shí)現(xiàn)形式, 是其在計(jì)算機(jī)內(nèi)的表示;此外討論一個數(shù)據(jù) 結(jié)構(gòu)必須同時討論在該類數(shù)據(jù)上執(zhí)行的運(yùn)算才有意義。在許多類型的程序的設(shè)計(jì) 中,數(shù)據(jù)結(jié)構(gòu)的選擇是一個基本的設(shè)計(jì)考慮因素。 許多大型系統(tǒng)的構(gòu)造經(jīng)驗(yàn)表明, 系統(tǒng)實(shí)現(xiàn)的困難程度

22、和系統(tǒng)構(gòu)造的質(zhì)量都嚴(yán)重的依賴于是否選擇了最優(yōu)的數(shù)據(jù) 結(jié)構(gòu)。許多時候,確定了數(shù)據(jù)結(jié)構(gòu)后,算法就容易得到了。有些時候事情也會反 過來,我們根據(jù)特定算法來選擇數(shù)據(jù)結(jié)構(gòu)與之適應(yīng)。不論哪種情況,選擇合適的 數(shù)據(jù)結(jié)構(gòu)都是非常重要的。 2.3運(yùn)行環(huán)境 本次課程設(shè)計(jì)采用VC+6.0集成環(huán)境進(jìn)行設(shè)計(jì)。 VC+是微軟公司開發(fā)的一個集成開發(fā)環(huán)境,換句話說,就是使用C+的個 開發(fā)平臺。有些軟件就是這個編出來的,另外還有 VB, VF。只是使用不同語言。 但是VC+是 Windows平臺上的C+編程環(huán)境,學(xué)習(xí) VC要了解很多 Windows平臺 的特性并且還要掌握 MFC ATL COM等的知識,難度比較大。Windo

23、ws下編程需 要了解 Windows的消息機(jī)制以及回調(diào)(callback )函數(shù)的原理;MFC是Win32API 的包裝類,需要理解文檔視圖類的結(jié)構(gòu),窗口類的結(jié)構(gòu),消息流向等等;COM! 代碼共享的二進(jìn)制標(biāo)準(zhǔn),需要掌握其基本原理等等。 VC作為一個主流的開發(fā)平臺一直深受編程愛好者的喜愛,但是很多人卻對 它的入門感到難于上青天,究其原因主要是大家對他錯誤的認(rèn)識造成的,嚴(yán)格的 來說VC+不是門語言,雖然它和C+之間有密切的關(guān)系,如果形象點(diǎn)比喻的話, 可以把C+看作為一種“工業(yè)標(biāo)準(zhǔn)”,而VC+則是某種操作系統(tǒng)平臺下的“廠商 標(biāo)準(zhǔn)”,而“廠商標(biāo)準(zhǔn)”是在遵循“工業(yè)標(biāo)準(zhǔn)”的前提下擴(kuò)展而來的。 VC+應(yīng)用程

24、序的開發(fā)主要有兩種模式,一種是 WIN API方式,另一種則是 MFC方式,傳統(tǒng)的 WINAPI開發(fā)方式比較繁瑣,而 MFC則是對 WINAPI再次封裝, 所以MFC相對于WIN API開發(fā)更具備效率優(yōu)勢。 要想學(xué)習(xí)好VC必須具備良好的C/C+的基礎(chǔ),必要的英語閱讀能力也是必 不可少的,因?yàn)榇罅康募夹g(shù)文檔多以英文形式發(fā)布。 VC基于C, C+語言,主要是由MFC組成,是與系統(tǒng)聯(lián)系非常緊密的編程工 具,它兼有高級,和低級語言的雙重性,功能強(qiáng)大,靈活,執(zhí)行效率高,幾乎可 說VC在Windows平臺無所不能。最大缺點(diǎn)是開發(fā)效率不高。 VC適用范圍有如下幾個方面 VC主要是針對 Windows系統(tǒng),適

25、合一些系統(tǒng)級的開發(fā),可以方便實(shí)現(xiàn)一 些底層的調(diào)用。在VC里邊嵌入?yún)R編語言很簡單。 VC主要用在驅(qū)動程序開發(fā)。 VC執(zhí)行效率高,當(dāng)對系統(tǒng)性能要求很高的時候,可用VC開發(fā)。 VC主要適用于游戲開發(fā)。 VC多用于單片機(jī),工業(yè)控制等軟件開發(fā),如直接對I/O地址操作,就要 用 C+。 VC適用開發(fā)高效,短小,輕量級的 COMA件,DLL。比如WEBt的控件。 VC可以開發(fā)優(yōu)秀的基于通信的程序。 VC可以開發(fā)高效靈活的文件操作程序。 VC可以開發(fā)靈活高效的數(shù)據(jù)庫操作程序。 VC是編CAD軟件的唯一選擇,包括 AUTOCADUG的二次開發(fā)。 VC在多線程、網(wǎng)絡(luò)通信、分布應(yīng)用方面,VC+有不可比擬的優(yōu)勢。 V

26、C基于C,C+語言,主要是由MFC組成,是與系統(tǒng)聯(lián)系非常緊密的編程 工具,它兼有高級,和低級語言的雙重性,功能強(qiáng)大,靈活,執(zhí)行效率高,幾乎 可說VC在 Windows平臺無所不能。最大缺點(diǎn)是開發(fā)效率不高。 VC適用范圍有如下幾個方面 VC主要是針對 Windows系統(tǒng),適合一些系統(tǒng)級的開發(fā),可以方便實(shí)現(xiàn) 一些底層的調(diào)用。在VC里邊嵌入?yún)R編語言很簡單。 VC主要用在驅(qū)動程序開發(fā)。 VC執(zhí)行效率高,當(dāng)對系統(tǒng)性能要求很高的時候,可用VC開發(fā)。 VC主要適用于游戲開發(fā)。 VC多用于單片機(jī),工業(yè)控制等軟件開發(fā),如直接對 I/O地址操作,就要 用 C+。 VC適用開發(fā)高效,短小,輕量級的 COM組件,DL

27、L。比如 WEB上的 控件。 VC可以開發(fā)優(yōu)秀的基于通信的程序。 VC可以開發(fā)高效靈活的文件操作程序。 VC可以開發(fā)靈活高效的數(shù)據(jù)庫操作程序。 VC是編CAD軟件的唯一選擇,包括 AUTOCAD,UG的二次開發(fā)。 VC在多線程、網(wǎng)絡(luò)通信、分布應(yīng)用方面, VC+有不可比擬的優(yōu)勢。 4 沈陽工程學(xué)院課程設(shè)計(jì)第3章系統(tǒng)分析與設(shè)計(jì) 第三章系統(tǒng)分析與設(shè)計(jì) 3.1問題分析 Q:假設(shè)一個病人想要看病,那么計(jì)算機(jī)會怎樣排列他的位置呢? A:病人應(yīng)該先掛號,即取得編號。之后根據(jù)病人的病情,來劃分病情的等 級。然后,輸入掛號的類型(“T就醫(yī)或“ 2”急診),計(jì)算機(jī)將自動劃分他的就 診編號。如果,等相同則按最開始的

28、編號排序。最后,計(jì)算機(jī)將顯示最終的編號。 隨后,病人便可以依次就醫(yī)了。 思路: (1)首先,求診病人必須得到編號,也就是先掛號。 (2)然后,醫(yī)院將根據(jù)病情劃分等級,分為普通病人和急診病人。 (普通病人掛就醫(yī)號。急診病人,掛急診號。 。) (3)根據(jù)顯示的提示,輸入功能選擇。 (4)如果出現(xiàn)病情等級相同的情況時,程序?qū)淳幪柕南群箜樞蚪o出相應(yīng)結(jié) 果。 (5)工作人員查看結(jié)果后,對病人進(jìn)行合理的救治 3.2功能模塊圖 對本程序的功能進(jìn)行簡單地表示,如圖3-1所示 3.3 程序流程圖 排隊(duì)程序,根據(jù)功能提示,選擇相應(yīng)的功能。依照屏幕的提示,患者可以得 知其排隊(duì)的狀況。然后,根據(jù)編號的先后進(jìn)行最后的

29、就醫(yī)過程。查看屏幕提示。 流程圖,如圖3-2所示。 開始 功能選擇界面 圖3-2程序流程圖 6 沈陽工程學(xué)院課程設(shè)計(jì)第4章系統(tǒng)功能實(shí)現(xiàn) 3.4排序過程 假設(shè)現(xiàn)在有五名病人需要掛號,那么按照他們來的順序。可以將他們用 A,C,D,E和F來表示。則據(jù)此可列表3-1: 病人 A B C D E 功能選擇 1 2 2 1 2 表3-1 排序過程圖,如圖3-3所示 第四章系統(tǒng)功能實(shí)現(xiàn) 且在每次輸入時給出相關(guān)的對錯 核對正確無誤后,執(zhí)行相應(yīng)的功 4.1菜單功能實(shí)現(xiàn) 按要求程序運(yùn)行時必須有一定的容錯功能, 情況的信息比如:輸入數(shù)字是否符合功能選項(xiàng) 能。程序源代碼如下: while prin tf(nn +

30、printf( +n); | 歡迎來到本醫(yī)院排隊(duì)就診 |n); printf( + +nn); printf( + 請選擇您要的功 能:- +n); printf( + printf( +n); | 1、 就醫(yī)掛號 |n); printf( | 2、 急診掛號 |n); printf( | 3、 醫(yī)職人員 |n); printf( | 0、 退出系統(tǒng) |n); printf( + +nn); choice=getchar(); getchar(); Lin kQueue *q; q=(L in kQueue *)malloc(sizeof(L in kQueue); q-fron t=(Que

31、ueP *)malloc(sizeof(QueueP); q-rear=q-fro nt; Lin kQueue *y; y=(L in kQueue *)malloc(sizeof(Li nkQueue); y-fron t=(QueueP *)malloc(sizeof(QueueP); y-rear=y-front; switch(choice) case O: exit(1); case 1: z=Patie nt(q);/調(diào)用普通病人掛號函數(shù)他那 break; case 2: z=Treat(y); /調(diào)用急診病人掛號函數(shù) break; case 3: Doctor(z); /調(diào)用醫(yī)

32、生登陸函數(shù) break; default:pri ntf(”+ 輸入錯 誤!+nn); getch();/暫停 system(cls); break; system(cls); 運(yùn)行界面圖如圖4-1 : 環(huán)C:KDebug2.eKeH 歡迎來到本醫(yī)尉I職就診 請選擇您要的功能; 醫(yī)診職出 就急 X- X- %- 12 3 8 14 圖4-1程序界面圖 4.2掛號功能 幫助功能主要介紹游戲的玩法,讓第一次玩游戲的人能順利了解游戲規(guī)則。 幫助 功能代碼如下: #in elude #inelude /包含宏定義函數(shù) #in elude #inelude /包含數(shù)據(jù)輸入輸出函數(shù),密碼以不回顯 方式輸入

33、函數(shù)(getch();)的頭文件 #inelude /從系統(tǒng)獲取時間 #define TRUE 1 #define FALSE 0 #define NULL 0 #define Num 2000/ statie int lists=1;/ statie int treat=1;/ 排隊(duì)號碼將以2000后開始 普通掛號的人員 急診掛號的人員 static int aa=1;/ 錄掛號者的號碼 static int bb=1; static int success;/ typedef struct Node/ int data; struct Node *n ext; QueueP; typede

34、f struct QueueP *front; QueueP *rear; Lin kQueue; int Patie nt(Li nkQueue *q) 沒有去用指針,而是采用aa,bb來紀(jì) 賬戶密碼是否成功登陸 鏈隊(duì)的定義 /病人掛號排隊(duì)程序 QueueP *p; p=(QueueP *)malloc(sizeof(QueueP); p-data=lists+; /普通掛號人員的個數(shù)賦給鏈表節(jié)點(diǎn)data,每 多一個病人排隊(duì),lists加1 p- next=NULL; 排隊(duì) q-rear- n ext=p; P,所以P入隊(duì) q-rear=p; /next指針最開始指向?yàn)榭?,因?yàn)樽铋_始沒人 /

35、將原來的最后一個結(jié)點(diǎn)的指針域里指針指向 printf( -+nn + 掛號成功,您的排隊(duì)號碼為: %dnn,Num+p-data); /鏈隊(duì)的尾指針指向剛剛?cè)腙?duì)的尾結(jié)點(diǎn)p printf( + 您當(dāng)前的位置 為:2d+n,lists+treat-2); struct tm *ptime;/頭文件為 time.h tm 是一 個已聲明的函數(shù),里面有 tm_sec, tm_min, tm_hour,tm_mday time_t t; t=time(NULL); ptime=localtime( printf(+ 現(xiàn)在時間 是:%d : %d+n,ptime-tm_hour,ptime-tm_min)

36、; printf(+ 友情提示:當(dāng)有急診病人掛號時候 -+n); printf(+ 此系統(tǒng)將以急診病人的掛號優(yōu)先 +n); printf(+ 您排隊(duì)的位置可能會有改變 +nn); printf( 位:+n); getch(); system(cls); return (lists+treat-2); 數(shù) /清除屏幕 / + 返回的是整個隊(duì)列的人 int Treat(L in kQueue *y) QueueP *x; x=(QueueP *)malloc(sizeof(QueueP); x-data=treat+; x-n ext=NULL; y-rear- n ext=x; y-rear=x

37、; printf( + -掛號成功,您的排隊(duì)號碼為: +nn %dnn,Num+x-data+10 00); printf( + 您當(dāng)前的位置 為:%2d +n,treat-1); struct tm *ptime; time_t t; t=time(NULL); ptime=localtime( printf(+ 現(xiàn)在時間 + 是:%d : %d+n,ptime-tm_hour,ptime-tm_min); printf( 位:+n); getch(); system(cls); return (lists+treat-2); 沈陽工程學(xué)院課程設(shè)計(jì)第4章系統(tǒng)功能實(shí)現(xiàn) 門診(普通病人)掛號圖,

38、如圖4-2 : 圖4-2門診掛號圖 急診掛號圖,如圖4-3 : 請選擇您曼的功能匕 歡迎來到本醫(yī)院排隊(duì)就診 uC:KDebuo2-eHe 掛號成功您的申職號碼為:一一一十 390丄 您當(dāng)前的為 s 1 + +現(xiàn)在時可帰:2 - 28+ 口苫苫塞 系 醫(yī)診職出 就急醫(yī)連 12 3 3 圖4-3急診掛號圖 15 沈陽工程學(xué)院課程設(shè)計(jì)第4章系統(tǒng)功能實(shí)現(xiàn) 19 4.3查詢功能 功能主要是實(shí)現(xiàn)將用戶輸入的數(shù)字與系統(tǒng)產(chǎn)生的數(shù)字進(jìn)行比較以給出提示。 游戲功能代碼如下: void password。 char user=doctor,a7; / char password=123456,b7; 戶名密碼初始為

39、doctor,123456 int i,num=0; while( num3)/ 碼驗(yàn)證程序 printf(請輸入你的工作通行證:n); printf(你總共有3次機(jī)會n); printf(你現(xiàn)在還有d次機(jī)會n,3-num); printf(用戶名:n); for(i=0;i6;i+) ai=getchar(); getchar(); a6=0; printf(密碼:n); for(i=0;i6;i+) bi=getch(); putchar(*);/用*來回顯密碼 b6=0; getchar(); 驗(yàn)證 if(strcmp(user,a)=0) success=1; break; else

40、prin tf(n用戶名或密碼錯誤! nn); system(cls);/ 清屏 success=0; nu m+; if(num=3)/錯誤輸入三次,將不允許再輸入 prin tf(對不起,你輸入的次數(shù)已達(dá)上限n); printf(請按任意鍵退出!nn); exit(0); void Doctor(i nt z) static char memory二1; / if(memory!=y memory=getchar(); getchar(); prin tf(nn); if(success=1) while(1) if(z=0) printf( printf( 現(xiàn)在暫時沒有病人排隊(duì)就醫(yī)!n); 請等待或按11退出就診系統(tǒng)。n); char be5=11; sca nf(%s, getchar(); if(strcmp(be,11)!=O) con ti nue; else break; else printf(現(xiàn)在排隊(duì)就診的有d個人n,z); if(aa=(treat-1) pr

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論