《數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計》課程設(shè)計指導(dǎo)書_第1頁
《數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計》課程設(shè)計指導(dǎo)書_第2頁
《數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計》課程設(shè)計指導(dǎo)書_第3頁
《數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計》課程設(shè)計指導(dǎo)書_第4頁
《數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計》課程設(shè)計指導(dǎo)書_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

《數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計》課程設(shè)計指導(dǎo)書PAGE11《數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計》課程設(shè)計指導(dǎo)書《數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計》課程設(shè)計指導(dǎo)書本課程設(shè)計是學(xué)習(xí)掌握數(shù)據(jù)結(jié)構(gòu)相關(guān)知識的重要實踐環(huán)節(jié),是在課程及實驗基礎(chǔ)上進(jìn)行的綜合性實踐教學(xué)活動。一、課程設(shè)計目的《數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計》課程設(shè)計作為獨立的教學(xué)環(huán)節(jié),是集中實踐性環(huán)節(jié)系列之一,是學(xué)習(xí)完《數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計》課程后進(jìn)行的一次全面的綜合練習(xí)。其目的在于加深對數(shù)據(jù)結(jié)構(gòu)理論和基本知識的理解,掌握使用C語言結(jié)合數(shù)據(jù)結(jié)構(gòu)知識來設(shè)計一個實際中小型系統(tǒng)的方法,綜合訓(xùn)練學(xué)生的分析問題、設(shè)計的基本內(nèi)容和方法,提高解決實際管理問題的能力,以培養(yǎng)學(xué)生的專項技能和職業(yè)能力。課程設(shè)計圍繞課程的整體教學(xué)目標(biāo)進(jìn)行,課程設(shè)計的題目具有一定的綜合性和應(yīng)用性,只靠個別單元的知識一般不能實現(xiàn)課程設(shè)計的目標(biāo),需要對課程知識進(jìn)行綜合運用。要完成好課程設(shè)計,就要對課程知識進(jìn)行系統(tǒng)學(xué)習(xí)、復(fù)習(xí)、總結(jié)、應(yīng)用,達(dá)到在實踐中學(xué)習(xí)知識、掌握知識、應(yīng)用知識和培養(yǎng)能力的目的。①通過課程設(shè)計,進(jìn)一步熟悉掌握以下知識:線性表(順序表、單鏈表、單循環(huán)鏈表、雙鏈表)、棧、隊列(鏈隊列、循環(huán)隊列)、樹、二叉樹、網(wǎng)、哈夫曼樹、二叉排序樹、平衡二叉樹、圖、查找(順序查找、折半查找)、排序(直接插入排序、希爾排序、冒泡排序、快速排序、簡單選擇排序、堆排序、基數(shù)排序、歸并排序)等。②通過課程設(shè)計,達(dá)到系統(tǒng)理解、綜合運用課程知識的學(xué)習(xí)目標(biāo)。③通過課程設(shè)計,學(xué)會用C語言結(jié)合數(shù)據(jù)結(jié)構(gòu)知識解決實際問題的方法。④通過課程設(shè)計,掌握程序的局部測試、調(diào)試方法,建立程序系統(tǒng)調(diào)試、測試的基本概念和思想,學(xué)會較大程序的系統(tǒng)測試和調(diào)試方法。本次課程設(shè)計主要是利用VisualC++6.0來進(jìn)行編程和調(diào)試。二、課程設(shè)計基本過程數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計課程設(shè)計一般包括6個步驟,即程序的功能設(shè)計、程序的數(shù)據(jù)結(jié)構(gòu)設(shè)計、程序的模塊(函數(shù))設(shè)計、函數(shù)編碼及調(diào)試、程序整體調(diào)試和課程設(shè)計總結(jié)等,各個步驟都有其特定的任務(wù)。1.程序的功能設(shè)計功能設(shè)計是課程設(shè)計的第一個環(huán)節(jié),其任務(wù)是根據(jù)課程設(shè)計題目的描述和要求,確定程序要實現(xiàn)的功能,并把這些功能劃分為不同的層次,確定各層功能的上下級關(guān)系,然后繪制出分級描述的程序功能框圖,必要時對所列功能進(jìn)行說明。2.程序的數(shù)據(jù)結(jié)構(gòu)設(shè)計程序的數(shù)據(jù)設(shè)計主要包括對以下各類數(shù)據(jù)進(jìn)行設(shè)計:①針對程序的功能,對程序中用到的主要數(shù)據(jù)確定數(shù)據(jù)類型,并設(shè)計出各種數(shù)據(jù)的抽象數(shù)據(jù)類型ADT。②對程序中用到的結(jié)構(gòu)體數(shù)據(jù)定義其結(jié)構(gòu)體類型。③定義程序中使用的全局變量、外部變量等。④定義程序中通用的符號常量。⑤確定文件的數(shù)據(jù)類型,如二進(jìn)制文件、文本文件等。3.程序的模塊(函數(shù))設(shè)計一個綜合性的程序,按其功能,需要劃分出若干個模塊,每個模塊都要設(shè)計若干個函數(shù)來實現(xiàn)。各個函數(shù)功能各異,使用的層次也不盡相同。為了使總體設(shè)計協(xié)調(diào)有序地進(jìn)行,需要在程序編碼之前,對主要的函數(shù)做出預(yù)先設(shè)計,即所謂的函數(shù)設(shè)計。程序的函數(shù)設(shè)計包括函數(shù)的功能設(shè)計和函數(shù)調(diào)用設(shè)計兩個方面。①函數(shù)的功能設(shè)計。對應(yīng)程序功能框圖,確定各項功能要使用的主要函數(shù),并進(jìn)行明確描述,包括:函數(shù)名稱、函數(shù)功能、函數(shù)參數(shù)、函數(shù)返回值類型等。②函數(shù)調(diào)用設(shè)計。對函數(shù)的調(diào)用關(guān)系進(jìn)行描述,明確說明在實現(xiàn)程序功能時,函數(shù)之間將發(fā)生的調(diào)用和被調(diào)用關(guān)系。4.函數(shù)編程及調(diào)試函數(shù)編程及調(diào)試是實現(xiàn)程序功能的核心階段,需要注意以下問題:①課程設(shè)計具有一定的綜合性,其程序通常由多個函數(shù)構(gòu)成,每個函數(shù)都有獨立的功能,實現(xiàn)特定的操作。但程序中的所有函數(shù)是一個有機(jī)的整體,都圍繞實現(xiàn)程序的功能進(jìn)行設(shè)計。②有些函數(shù)之間有調(diào)用和被調(diào)用關(guān)系,在進(jìn)行函數(shù)設(shè)計時需要注意順序問題,有的函數(shù)先設(shè)計,有的函數(shù)后設(shè)計,而沒有調(diào)用關(guān)系的函數(shù)可以并列設(shè)計。當(dāng)多人合作進(jìn)行一個課程設(shè)計時,可以并列設(shè)計的函數(shù)即可由不同的設(shè)計人員承擔(dān)。③程序設(shè)計是一個循序漸進(jìn)的過程。有的函數(shù)在程序設(shè)計前的函數(shù)設(shè)計階段就被考慮到了,而有的函數(shù)是在程序設(shè)計過程中因需要才產(chǎn)生的。但無論哪一個函數(shù),都會經(jīng)歷由簡單,到功能完善定型的過程。④函數(shù)設(shè)計一般以功能實現(xiàn)為主線,圍繞程序的一個功能進(jìn)行函數(shù)設(shè)計。每一個函數(shù)完成之后,都要立即進(jìn)行函數(shù)功能測試,直到確認(rèn)函數(shù)能實現(xiàn)其功能為止。⑤有時在測試一個主調(diào)函數(shù)時,其被調(diào)用的函數(shù)還沒有完成設(shè)計,這時最簡便的方法,就是把被調(diào)用函數(shù)先設(shè)計為只有一個空的“return;”語句的函數(shù),然后進(jìn)行主調(diào)函數(shù)的基本測試。當(dāng)被調(diào)用函數(shù)設(shè)計完成之后,再進(jìn)行詳細(xì)的測試。⑥不同功能的函數(shù),對磁盤文件可能有不同的使用要求,因此在進(jìn)行文件操作時,打開文件的方式就可能不同。5.整體調(diào)試整體調(diào)試是程序設(shè)計的必要階段,是在前期程序設(shè)計調(diào)試基礎(chǔ)上進(jìn)行的基本過程。需要設(shè)計準(zhǔn)備一個較大規(guī)模的數(shù)據(jù)集,按照課程設(shè)計題目的功能要求,對組裝完成的程序逐項進(jìn)行功能測試和調(diào)試,直至確認(rèn)程序達(dá)到了設(shè)計目標(biāo)為止。6.設(shè)計總結(jié)設(shè)計總結(jié)是課程設(shè)計的最終階段,通過對課程設(shè)計的各個過程進(jìn)行系統(tǒng)全面地總結(jié),按照指導(dǎo)教師的具體要求,形成課程設(shè)計報告。三、課程設(shè)計時間數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計課程設(shè)計時間為兩周(從周一至周日,共14日),具體安排如下:數(shù)據(jù)庫課程設(shè)計項目時長(天)地點資料的收集與整理1待定程序的功能設(shè)計1待定程序的數(shù)據(jù)設(shè)計2待定程序的(模塊)函數(shù)設(shè)計2待定函數(shù)編程與調(diào)試3待定整體調(diào)試2待定撰寫設(shè)計文檔2待定答辯1待定具體課表安排如下:周次星期課節(jié)地點第20周星期一3、4?機(jī)房星期二3、4星期三3、4星期四3、4星期五3、4第21周星期一3、4星期二3、4星期三3、4星期四3、4星期五3、4四、課程設(shè)計的考查由指導(dǎo)教師根據(jù)學(xué)生完成課程設(shè)計任務(wù)的情況(課程設(shè)計報告的質(zhì)量70%和課程設(shè)計過程中的工作態(tài)度20%,系統(tǒng)開發(fā)情況10%)綜合打分。成績評定實行優(yōu)秀、良好、中等、及格和不及格五個等級。優(yōu)秀者人數(shù)一般不超過總?cè)藬?shù)的20%。注意:課程設(shè)計最后將隨機(jī)抽取不少于占總數(shù)1/3的學(xué)生進(jìn)行答辯。五個等級分別如下:優(yōu)(90-100分):按要求完成設(shè)計題目,有完整的符合標(biāo)準(zhǔn)的文檔,文檔有條理、文筆通順,格式正確,其中有總體設(shè)計思想的論述,有正確的流程圖,程序完全實現(xiàn)設(shè)計方案,設(shè)計方案先進(jìn),軟件可靠性好;良(80-89分):完成設(shè)計題目,有完整的符合標(biāo)準(zhǔn)的文檔,文檔有條理、文筆通順,格式正確;有完全實現(xiàn)設(shè)計方案的軟件,設(shè)計方案較先進(jìn);中(70-79分):完成設(shè)計題目,有完整的符合標(biāo)準(zhǔn)的文檔,有基本實現(xiàn)設(shè)計方案的軟件,設(shè)計方案正確;及格(60-69分):完成設(shè)計題目,有完整的符合標(biāo)準(zhǔn)的文檔,有基本實現(xiàn)設(shè)計方案的軟件,設(shè)計方案基本正確;不及格(0-59分):沒有完成設(shè)計題目,沒有完整的符合標(biāo)準(zhǔn)的文檔,軟件沒有基本實現(xiàn)設(shè)計方案,設(shè)計方案不正確。五、課程設(shè)計報告撰寫要求課程設(shè)計報告撰寫的基本要求是報告原則上不少于4000字,需在封面注明設(shè)計選題、班級、課題組成員姓名、學(xué)號及項目分工,其正文建議包括如下幾個方面的內(nèi)容:1.課題(或系統(tǒng))概述(現(xiàn)狀分析,系統(tǒng)目標(biāo)等)2.系統(tǒng)分析設(shè)計部分(必需,重點) (1)系統(tǒng)的功能 (2)可行性分析 (3)需求分析 (4)概要設(shè)計,要求(重點)=1\*GB3①系統(tǒng)的數(shù)據(jù)設(shè)計,設(shè)計出每種數(shù)據(jù)類型的ADT寫出數(shù)據(jù)詞典=2\*GB3②畫出系統(tǒng)邏輯結(jié)構(gòu)=3\*GB3③給出系統(tǒng)模塊劃分=4\*GB3④各功能模塊的算法處理流程圖及相關(guān)說明(5)詳細(xì)設(shè)計,列出核心代碼,代碼如果比較長,可以附錄在后面(6)數(shù)據(jù)庫設(shè)計部分(非必需,如果使用了數(shù)據(jù)庫,則必須給出,如果沒有使用數(shù)據(jù)庫,則此部分可以不要)3.系統(tǒng)測試部分(必需) 根據(jù)已知的輸入,預(yù)測應(yīng)該輸出的結(jié)果,并實際運行,對比分析,找出錯誤所在,并改正。4.系統(tǒng)操作演示部分(必需)(1)數(shù)據(jù)的輸入操作(2)數(shù)據(jù)的輸出操作(3)數(shù)據(jù)的分析5.系統(tǒng)小結(jié)(必需)(1)程序設(shè)計過程中遇到的問題及解決過程(2)課程設(shè)計心得及體會6.附源程序六、課程設(shè)計參考題目參考30個題目:1.學(xué)生成績管理系統(tǒng)2.學(xué)生通訊錄管理系統(tǒng)3.學(xué)生檔案管理系統(tǒng)4.選舉投票系統(tǒng)5.計算器6.走迷宮7.排序大全。。。。。。。。。特別聲明:以上題目僅供參考,學(xué)生可以另選題目(這句話刪除?)要求:1.設(shè)計上述題目的數(shù)據(jù)結(jié)構(gòu);2.用C語言或其他語言實現(xiàn)系統(tǒng);3.系統(tǒng)具有增加,查詢,修改,刪除,排序等基本功能;4.進(jìn)行簡單界面設(shè)計,能夠?qū)崿F(xiàn)友好的交互;5.具有清晰的程序流程圖和數(shù)據(jù)結(jié)構(gòu)的詳細(xì)定義;6.系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn);7.完成設(shè)計任務(wù)并書寫課程設(shè)計報告七、上交材料學(xué)生需要上交的材料主要包括:1.軟件軟件需提供源程序,并能正常運行。注:(1)對于程序中未能實現(xiàn)的部分需要加以說明。(2)對于程序中所參考的部分代碼需要加以聲明,并說明出處。2.文檔(設(shè)計報告)(1)課程設(shè)計題目(2)設(shè)計要求(3)數(shù)據(jù)結(jié)構(gòu)設(shè)計描述(4)各變量的定義和作用(5)系統(tǒng)各模塊(函數(shù))的組成,功能,參數(shù)說明,相互調(diào)用關(guān)系(6)各功能模塊的算法處理流程圖及相關(guān)說明(7)程序設(shè)計過程中遇到的問題及解決過程(8)課程設(shè)計心得及體會(9)附源程序(10)參考文獻(xiàn)學(xué)生應(yīng)按規(guī)范撰寫課程設(shè)計總結(jié)報告,并在第二周周四前交給教師,教師閱后,給報告打分,并對合格的學(xué)生,隨機(jī)抽取不少于占總數(shù)1/3的學(xué)生進(jìn)行答辯。課程設(shè)計實踐教學(xué)環(huán)節(jié)結(jié)束后,教師將總結(jié)報告按要求裝訂后送交系存檔。八、成績評定由指導(dǎo)教師根據(jù)學(xué)生完成課程設(shè)計任務(wù)的情況(課程設(shè)計報告的質(zhì)量70%和課程設(shè)計過程中的工作態(tài)度20%,系統(tǒng)開發(fā)情況10%)綜合打分。其中,不及格者必需重修該課程設(shè)計。九、課程設(shè)計學(xué)生守則及管理規(guī)定1、學(xué)生在課程設(shè)計期間應(yīng)遵守學(xué)校作息制度;請假需經(jīng)指導(dǎo)教師同意,并按學(xué)校規(guī)定辦理請假手續(xù),否則以曠課論處,每天以6課時計算。2、學(xué)生必須隨時接受指導(dǎo)教師的檢查,指導(dǎo)及安排的工作。3、課程設(shè)計所使用的機(jī)器,須經(jīng)指導(dǎo)教師同意后,方可使用。課程設(shè)計結(jié)束后,制作成果必須交學(xué)院資料室。4、學(xué)生使用的計算機(jī)、電子儀器或其它設(shè)備,若因責(zé)任事故造成丟失或損壞,應(yīng)酌情賠償。若設(shè)備發(fā)生故障,應(yīng)及時報告,學(xué)生不得擅自修理。5、嚴(yán)格禁止學(xué)生在計算機(jī)房或?qū)嶒炇彝嬗螒颍堪l(fā)現(xiàn)一次,則課程設(shè)計成績降低5分。學(xué)生未經(jīng)指導(dǎo)教師同意將私人盤片、器材帶入計算機(jī)房或?qū)嶒炇?,將予以沒收。學(xué)生也不得將計算機(jī)房和實驗室中的任何設(shè)備、器材和工具帶回宿舍使用,否則視為盜竊。6、學(xué)生在實驗室內(nèi)必須嚴(yán)肅認(rèn)真,不得大聲喧嘩,嚴(yán)禁吃任何食物,嚴(yán)禁吸煙,每日負(fù)責(zé)衛(wèi)生打掃,并在離開時切斷電源,關(guān)好水龍頭,關(guān)緊門窗。7、學(xué)生借閱院資料室參考書籍和資料時,必須由指導(dǎo)老師帶領(lǐng),并由指導(dǎo)老師簽名借閱。8、課程設(shè)計學(xué)生在停課期間必須每天到所在的實驗室簽到。江西理工大學(xué)江西理工大學(xué)課程設(shè)計報告書《數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計》課程設(shè)計報告書課程名稱數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計課程設(shè)計設(shè)計題目學(xué)生成績管理系統(tǒng)專業(yè)班級計算機(jī)161班學(xué)號08090115101學(xué)生姓名指導(dǎo)教師起止日期2017年月日至月日信息工程學(xué)院系課程設(shè)計任務(wù)書設(shè)計內(nèi)容1.課題(或系統(tǒng))概述(現(xiàn)狀分析,系統(tǒng)目標(biāo)等)2.系統(tǒng)分析設(shè)計部分(必需,重點) (1)系統(tǒng)的功能 (2)可行性分析 (3)需求分析 (4)概要設(shè)計,要求(重點)=1\*GB3①系統(tǒng)的數(shù)據(jù)設(shè)計,設(shè)計出每種數(shù)據(jù)類型的ADT寫出數(shù)據(jù)詞典=2\*GB3②畫出系統(tǒng)邏輯結(jié)構(gòu)=3\*GB3③給出系統(tǒng)模塊劃分=4\*GB3④各功能模塊的算法處理流程圖及相關(guān)說明(5)詳細(xì)設(shè)計,列出核心代碼,代碼如果比較長,可以附錄在后面(6)數(shù)據(jù)庫設(shè)計部分(非必需,如果使用了數(shù)據(jù)庫,則必須給出,如果沒有使用數(shù)據(jù)庫,則此部分可以不要)3.系統(tǒng)測試部分(必需) 根據(jù)已知的輸入,預(yù)測應(yīng)該輸出的結(jié)果,并實際運行,對比分析,找出錯誤所在,并改正。4.系統(tǒng)操作演示部分(必需)(1)數(shù)據(jù)的輸入操作(2)數(shù)據(jù)的輸出操作(3)數(shù)據(jù)的分析5.系統(tǒng)小結(jié)(必需)(1)程序設(shè)計過程中遇到的問題及解決過程(2)課程設(shè)計心得及體會6.附源程序設(shè)計的基本要求1、結(jié)合該課程中所學(xué)的理論知識,按要求獨立設(shè)計方案,培養(yǎng)學(xué)生獨立分析與解決問題的能力;2、學(xué)會查閱相關(guān)手冊和資料,通過查閱手冊和資料,進(jìn)一步熟悉常用方法的用途和技巧,并掌握這些方法的具體含義和如何使用這些方法解決實際問題;3、掌握C語言程序設(shè)計的規(guī)則和技巧(視具體設(shè)計題目)。4、掌握綜合性軟件開發(fā)設(shè)計的基本過程(視具體設(shè)計題目)。5、認(rèn)真撰寫總結(jié)報告,培養(yǎng)嚴(yán)謹(jǐn)?shù)淖黠L(fēng)和科學(xué)的態(tài)

溫馨提示

  • 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

提交評論