版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
《數(shù)據(jù)結(jié)構(gòu)》課程設(shè)計(jì)題目及要求一、數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)要求1.學(xué)生必須仔細(xì)閱讀《數(shù)據(jù)結(jié)構(gòu)》課程設(shè)計(jì)方案,認(rèn)真主動(dòng)完成課設(shè)的要求。有問題及時(shí)主動(dòng)通過各種方式與教師聯(lián)系溝通。2.學(xué)生要發(fā)揮自主學(xué)習(xí)的能力,充分利用時(shí)間,安排好課設(shè)的時(shí)間計(jì)劃,并在課設(shè)過程中不斷檢測自己的計(jì)劃完成情況,及時(shí)向教師匯報(bào)。3.課程設(shè)計(jì)按照教學(xué)要求需要兩周時(shí)間完成,兩周中每天至少要上2小時(shí)的上機(jī)來調(diào)試C或C++語言設(shè)計(jì)的程序。學(xué)院安排上機(jī)時(shí)間學(xué)生不得缺席。二、上交相關(guān)內(nèi)容要求上交的成果的內(nèi)容必須由以下四個(gè)部分組成,缺一不可1.上交源程序:學(xué)生按照課程設(shè)計(jì)的具體要求所開發(fā)的所有源程序(應(yīng)該放到一個(gè)文件夾中);2.上交程序的說明文件:(保存在.txt中)在說明文檔中應(yīng)該寫明上交程序所在的目錄,上交程序的主程序文件名,如果需要安裝,要有程序的安裝使用說明;3.課程設(shè)計(jì)報(bào)告:(保存在word文檔中,文件名要求按照"姓名-學(xué)號-課程設(shè)計(jì)報(bào)告題目"起名,如文件名為"張三-001-二叉樹動(dòng)態(tài)演示".doc)按照課程設(shè)計(jì)的具體要求建立的功能模塊,每個(gè)模塊要求按照如下幾個(gè)內(nèi)容認(rèn)真完成;其中包括:a)需求分析:在該部分中敘述,每個(gè)模塊的功能要求。b)概要設(shè)計(jì)在此說明每個(gè)部分的算法設(shè)計(jì)說明(可以是描述每一個(gè)算法的流程圖),每個(gè)程序中使用的存儲結(jié)構(gòu)設(shè)計(jì)說明(如果指定存儲結(jié)構(gòu)請寫出該存儲結(jié)構(gòu)的定義。c)詳細(xì)設(shè)計(jì)各個(gè)算法實(shí)現(xiàn)的源程序,對每個(gè)題目要有相應(yīng)的源程序(可以是一組源程序,每個(gè)功能模塊采用不同的函數(shù)實(shí)現(xiàn))源程序要按照寫程序的規(guī)則來編寫。要結(jié)構(gòu)清晰,重點(diǎn)函數(shù)的重點(diǎn)變量,重點(diǎn)功能部分要加上清晰的程序注釋。d)調(diào)試分析測試數(shù)據(jù),測試輸出的結(jié)果,時(shí)間復(fù)雜度分析,和每個(gè)模塊設(shè)計(jì)和調(diào)試時(shí)存在問題的思考(問題是哪些?問題如何解決?),算法的改進(jìn)設(shè)想。e)總結(jié):總結(jié)可以包括:課程設(shè)計(jì)過程的收獲、遇到問題、遇到問題解決問題過程的思考、程序調(diào)試能力的思考、對數(shù)據(jù)結(jié)構(gòu)這門課程的思考、在課程設(shè)計(jì)過程中對《數(shù)據(jù)結(jié)構(gòu)》課程的認(rèn)識等內(nèi)容。三、數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)題目1.運(yùn)動(dòng)會分?jǐn)?shù)統(tǒng)計(jì)任務(wù):參加運(yùn)動(dòng)會有w個(gè)女子項(xiàng)目。項(xiàng)目編號為男子1……m,女子m+1……m+w。不同的名積分;取前五名的積分分別為:7、5、3、2、1,前三名的積分分別為:5、3、2;哪些取前五名或前三名由學(xué)生自己設(shè)定。(m<=20,n<=20)n個(gè)學(xué)校,學(xué)校編號為1……n。比賽分成m個(gè)男子項(xiàng)目,和項(xiàng)目取前五名或前三功能要求:1)可以輸入各個(gè)項(xiàng)目的前三名或前五名的成績;2)能統(tǒng)計(jì)各學(xué)校總分,3)可以按學(xué)校編號或名稱、學(xué)校總分、男女團(tuán)體總分4)可以按學(xué)校編號查詢學(xué)校某個(gè)項(xiàng)目的情況;可以按排序輸出;項(xiàng)目編號查詢?nèi)〉们叭蚯拔迕膶W(xué)校。5)數(shù)據(jù)存入文件并能隨時(shí)查詢6)規(guī)定:輸入數(shù)據(jù)形式和范圍:可以輸入學(xué)校的名稱,運(yùn)動(dòng)項(xiàng)目的名稱輸出形式:有中文提示,各學(xué)校分?jǐn)?shù)為整形界面要求:有合理的提示,每個(gè)功能可以設(shè)立菜單,根據(jù)提示,可以完成相關(guān)的功能要求。存儲結(jié)構(gòu):學(xué)生自己根據(jù)系統(tǒng)功能要求自己設(shè)計(jì),但是要求運(yùn)動(dòng)會的相關(guān)數(shù)據(jù)要存儲在數(shù)據(jù)文件中。(數(shù)據(jù)文件的數(shù)據(jù)讀寫方法等相關(guān)內(nèi)容在c語言程序設(shè)計(jì)的書上,請自學(xué)解決)請?jiān)谧詈蟮纳辖毁Y料中指明你用到的存儲結(jié)構(gòu);測試數(shù)據(jù):要求使用1、全部合法數(shù)據(jù);2、整體非法數(shù)據(jù);3、局部非法數(shù)據(jù)。進(jìn)行程序測試,以保證程序的穩(wěn)定。測試數(shù)據(jù)及測試結(jié)果請?jiān)谏辖坏馁Y料中寫明;2.飛機(jī)訂票系統(tǒng)任務(wù):通過此系統(tǒng)可以實(shí)現(xiàn)如下功能:錄入:可以錄入航班情況(數(shù)據(jù)可以存儲在一個(gè)數(shù)據(jù)文件中,數(shù)據(jù)結(jié)構(gòu)、具體數(shù)據(jù)自定)查詢:可以查詢某個(gè)航線的情況(如,輸入航班號,查詢起降時(shí)間,起飛抵達(dá)城市,航班票價(jià),票價(jià)折扣,確定航班是否滿倉);可以輸入起飛抵達(dá)城市,查詢飛機(jī)航班情況;訂票:(訂票情況可以存在一個(gè)數(shù)據(jù)文件中,結(jié)構(gòu)自己設(shè)定)可以訂票,如果該航班已經(jīng)無票,可以提供相關(guān)可選擇航班;退票:可退票,退票后修改相關(guān)數(shù)據(jù)文件;客戶資料有姓名,證件號,訂票數(shù)量及航班情況,訂單要有編號。修改航班信息:當(dāng)航班信息改變可以修改航班數(shù)據(jù)文件要求:根據(jù)以上功能說明,設(shè)計(jì)航班信息,訂票信息的存儲結(jié)構(gòu),設(shè)計(jì)程序完成功能;3.文章編輯功能:輸入一頁文字,程序可以統(tǒng)計(jì)出文字、數(shù)字、空格的個(gè)數(shù)。靜態(tài)存儲一頁文章,每行最多不超過80個(gè)字符,共N行;要求(1)分別統(tǒng)計(jì)出其中英文字母數(shù)和空格數(shù)及整篇文章總字?jǐn)?shù);(2)統(tǒng)計(jì)某一字符串在文章中出現(xiàn)的次數(shù),并輸出該次數(shù);(3)刪除某一子串,并將后面的字符前移。存儲結(jié)構(gòu)使用線性表,分別用幾個(gè)子函數(shù)實(shí)現(xiàn)相應(yīng)的功能;輸入數(shù)據(jù)的形式和范圍:可以輸入大寫、小寫的英文字母、任何數(shù)字及標(biāo)點(diǎn)符號。輸出形式:(1)分行輸出用戶輸入的各行字符;(2)分4行輸出"全部字母數(shù)"、"數(shù)字個(gè)數(shù)"、"空格個(gè)數(shù)"、"文章總字?jǐn)?shù)"(3)輸出刪除某一字符串后的文章;4.紙牌游戲任務(wù):編號為1-52張牌,一次,直到最后一張牌;然后,從第3張開始,以然后…從第4張開始,以4為基數(shù),是4的倍數(shù)的牌翻一次,直到最后一再依次5的倍數(shù)的牌翻一次,6的,7的直到以52為基數(shù)的翻過,輸出:這時(shí)正面向上的牌有哪些?正面向上,從第2張開始,以2為基數(shù),是2的倍數(shù)的牌翻3為基數(shù),是3的倍數(shù)的牌翻一次,直到最后一張牌;張牌;...5.宿舍管理查詢軟件1)任務(wù):為宿舍管理人員編寫一個(gè)宿舍管理查詢軟件,程序設(shè)計(jì)要求:A.采用交互工作方式B.建立數(shù)據(jù)文件,數(shù)據(jù)文件按關(guān)鍵字(姓名、學(xué)號、房號)進(jìn)行排序(冒泡、選擇、插入排序等任選一種)2)查詢菜單:(用二分查找實(shí)現(xiàn)以下操作)A.按姓名查詢B.按學(xué)號查詢C.按房號查詢3)打印任一查詢結(jié)果(可以連續(xù)操作)6.地圖著色問題設(shè)計(jì)要求:已知中國地圖,對各省進(jìn)行著色,要求相鄰省所使用的顏色不同,并保證使用的顏色總數(shù)最少。7.校園導(dǎo)航問題設(shè)計(jì)要求:設(shè)計(jì)你的學(xué)校的平面圖,至少包括10個(gè)以上的場所,每兩個(gè)場所間可以有不同的路,且路長也可能不同,找出從任意場所到達(dá)另一場所的最佳路徑(最短路徑)。1、基本要求:1)設(shè)計(jì)校園平面圖,在校園景點(diǎn)選10個(gè)左右景點(diǎn)。以圖中頂點(diǎn)表示校園內(nèi)各景點(diǎn),存放景點(diǎn)名稱、代號、簡介等信息;以邊表示路徑,存放路徑長度等有關(guān)信息。2)為來訪客人提供圖中任意景點(diǎn)相關(guān)信息的查詢。3)為來訪客人提供任意景點(diǎn)的問路查詢,即查詢?nèi)我鈨蓚€(gè)景點(diǎn)之間的一條最短路徑。2、實(shí)現(xiàn)提示:一般情況下,校園的道路是雙向通行的,可設(shè)計(jì)校園平面圖是一個(gè)無關(guān)信息。向網(wǎng)。頂點(diǎn)和邊均含有相8.學(xué)校超市選址問題(帶權(quán)有向圖的中心點(diǎn))設(shè)計(jì)要求:對于某一學(xué)校超市,其他各單位到其的距離不同,同時(shí)各單位人員去超市的頻度也不同。請為超市選址,要求實(shí)現(xiàn)總體最優(yōu)。9.教學(xué)計(jì)劃編制問題[問題描述]大學(xué)的每個(gè)專業(yè)都要制定教學(xué)計(jì)劃。假設(shè)任何專業(yè)都有固定的學(xué)習(xí)年限,每學(xué)年含兩學(xué)期,每學(xué)期的時(shí)間長度和學(xué)分上限值均相等,每個(gè)專業(yè)開設(shè)的課程都是確定的,而且課程在開設(shè)時(shí)間的安排必須滿足先修關(guān)系。每門課程有哪些先修課程是確定的,可以有任意多門,也可以沒有。每門課恰好占一個(gè)學(xué)期。試在這樣的前提下設(shè)計(jì)一個(gè)教學(xué)計(jì)劃編制程序。[基本要求(1)輸入?yún)?shù)包括:學(xué)期總數(shù),一學(xué)期的學(xué)分上限,每門課的課程號)、學(xué)分和(2)允許用戶指定下列兩種編排策略之一:一是使學(xué)生在各學(xué)期中的學(xué)習(xí)負(fù)擔(dān)盡量均](固定占3位的字母數(shù)字串直接先修課的課程號。勻;二是使課程盡可能地集中在前幾個(gè)學(xué)期中。(3)若根據(jù)給定的條件問題無解,則報(bào)告適當(dāng)?shù)男畔ⅲ环駝t將教學(xué)計(jì)劃輸出到用戶指定的文件中。計(jì)劃的表格格式自行設(shè)計(jì)。[測試數(shù)據(jù)]6;學(xué)分上限:10;該專業(yè)共開設(shè)12門課,課程號從C01到C12,學(xué)分順序?yàn)?,3,4,3,2,3,4,4,7,5,2,3。先修關(guān)系如下:學(xué)期總數(shù):課程編號課程名稱先決條件C1C2C3C4程序設(shè)計(jì)基礎(chǔ)無離散數(shù)學(xué)數(shù)據(jù)結(jié)構(gòu)C1C1,C2匯編語言C1C5語言的設(shè)計(jì)和分析計(jì)算機(jī)原理編譯原理操作系統(tǒng)高等數(shù)學(xué)線性代數(shù)普通物理數(shù)值分析C3,C4C11C6C7C5,C3C3,C6無C9C8C9C10C11C12C9C9,C10,C1[實(shí)現(xiàn)提示]可設(shè)學(xué)期總數(shù)不超過12,課程總數(shù)不超過100。如果輸入的先修課程號不在該專業(yè)開設(shè)的課程序列中,則作為錯(cuò)誤處理。應(yīng)建立內(nèi)部課程序號與課程號之間的對應(yīng)關(guān)系。10.散列法的實(shí)驗(yàn)研究散列法中,散列函數(shù)構(gòu)造方法多種多樣,同時(shí)對于同一散列函數(shù)解決沖突的方法也可以不同。兩者是影響查詢算法性能的關(guān)鍵因素。對于幾種典型的散列函數(shù)構(gòu)造方法,做實(shí)驗(yàn)觀察,不同的解決沖突方法對查詢性能的影響。11.圖書借閱管理系統(tǒng)主要分為兩大功能:1)圖書管理(增加圖書、查詢圖書、刪除圖書、圖書借閱、還書);2)會員管理(增加會員、查詢會員、刪除會員、借書信息);12.學(xué)生成績管理實(shí)現(xiàn)功能:輸入、輸出、插入、刪除、查找、追加、讀入、顯示、保存、拷貝、排序、索引、分類合計(jì)、退出。13.活期儲蓄帳目管理活期儲蓄處理中,儲戶開戶、銷戶、存入、支出活動(dòng)頻繁,系統(tǒng)設(shè)計(jì)要求:1)能比較迅速地找到儲戶的帳戶,以實(shí)現(xiàn)存款、取款記賬;2)能比較簡單,迅速地實(shí)現(xiàn)插入和刪除,以實(shí)現(xiàn)開戶和銷戶的需要。14.二叉排序樹的實(shí)現(xiàn)用順序和二叉鏈表作存儲結(jié)構(gòu)1)以回車('\n')為輸入結(jié)束標(biāo)志,輸入數(shù)列L,生成一棵二叉排序樹T;2)對二叉排序樹T作中序遍歷,輸出結(jié)果;3)輸入元素x,查找二叉排序樹T,若存在含x的結(jié)點(diǎn),則刪除該結(jié)點(diǎn),并作中序遍歷(執(zhí)行操作2);否則輸出信息“無x”;15.最小生成樹問題設(shè)計(jì)要求:在n個(gè)城市之間建設(shè)網(wǎng)絡(luò),只需保證連通即可,求最經(jīng)濟(jì)的架設(shè)方法。存儲結(jié)構(gòu)采用多種。求解算法多種。16.通訊錄的制作模塊要求:第一個(gè)模塊——主函數(shù)main()的功能是:根據(jù)選單的選項(xiàng)調(diào)用各函數(shù),并完成相應(yīng)的功能。第二個(gè)模塊——Menu()的功能是:顯示英文提示選單。第三個(gè)模塊——Quit()的功能是:退出選單。第四個(gè)模塊——Create()的功能是:創(chuàng)建新的通訊錄。第五個(gè)模塊——Add()的功能是:在通訊錄的末尾,寫入新的信息,并返回選單。第六個(gè)模塊——Find()的功能是:查詢某人的信息,如果找到了,則顯示該人的信息,如果未找到,則提示通訊錄中沒有此人的信息,并返回選單。第七個(gè)模塊——Alter()的功能是:修改某人的信息,如果未找到要修改的人,則提示通訊錄中沒有此人的信息,并返回選單。第八個(gè)模塊——Delete()的功能是:刪除某人的信息,如果未找到要?jiǎng)h除的人,則提示通訊錄中沒有此人的信息,并返回選單。第九個(gè)模塊——List()的功能是:顯示通訊錄中的所有記錄。;設(shè)計(jì)要求:1)每條信息至包含:姓名(NAME)、性別(GENDER)、電話(TEL)、城市(CITY)郵編(EIP)幾項(xiàng)。2)作為一個(gè)完整的系統(tǒng),應(yīng)具有友好的界面和較強(qiáng)的容錯(cuò)能力17.哈夫曼編碼/譯碼器[問題描述]利用哈夫曼編碼進(jìn)行信息通信可以大大提高信道利用率,縮短信息傳輸時(shí)間,降低傳輸成本。但是,這要求在發(fā)送端通過一個(gè)編碼系統(tǒng)對待傳數(shù)據(jù)預(yù)先編碼,在接收端將傳來的數(shù)據(jù)進(jìn)行譯碼(復(fù)原)。對于雙工信道(編/譯碼系統(tǒng)。試為這樣的信息收發(fā)站寫一個(gè)哈夫曼編/譯碼系統(tǒng)。[基本要求即可以雙向傳輸信息的信道),每端都需要一個(gè)完整的]一個(gè)完整的系統(tǒng)應(yīng)具有以下功能:(1)I:初始化(Initialization)。從終端讀入字符集大小n,以及n個(gè)字符和n個(gè)權(quán)值,建立哈夫曼樹,并將它存于文件hfmTree中。(2)E:編碼(Encoding)。利用已建好的哈夫曼樹(如中讀入),對文件ToBeTran中的正文進(jìn)行編碼,然后將結(jié)果存入文件CodeFile中。(3)D:譯碼(Decoding)。利用已建好的哈夫曼樹將文件CodeFile中的不在內(nèi)存,則從文件htmTree代碼進(jìn)行譯碼,結(jié)果存入文件TextFile中。(4)P:印代碼文件(Print)。將文件CodeFile以緊湊格式顯示在終端上,每行50個(gè)代碼。同時(shí)將此字符形式的編碼寫入文件CodePrint中。(5)T:印哈夫曼樹(TreePrinting)。將已在內(nèi)存中的哈夫曼樹以直觀的方式(樹或凹入表形式)顯示在終端上,同時(shí)將此字符形式的哈夫曼樹寫入文件TreePrint中。[測試數(shù)據(jù)](1)數(shù)據(jù)一:已知某系統(tǒng)在通信聯(lián)絡(luò)中只可能出現(xiàn)8種字符,其概率分別為0.05,0.29,0.07,0.08,0.14,0.23,0.03,0.11,以此設(shè)計(jì)哈夫曼編碼。利用此數(shù)據(jù)對程序進(jìn)行調(diào)試。(2)用下表給出的字符集和頻度的實(shí)際統(tǒng)計(jì)數(shù)據(jù)建立哈夫曼樹,并實(shí)現(xiàn)以下報(bào)文的編碼和譯碼:“THISPROGRAMISMYFAVORITE”。字頻字頻AB1P1CDE1S5F2T8GHIJK5Y1L3Z1M2符度符度1N5623145W11X186432203157720OQRUV61428735810386[實(shí)現(xiàn)提示](1)文件CodeFile的基類型可以設(shè)為子界型bit=0..1。(2)用戶界面可以設(shè)計(jì)為“菜單”方式:顯示上述功能符號,再加上“Q”,表示運(yùn)行Quit。請用戶鍵入一個(gè)先把功能符,些功能執(zhí)行完畢后再經(jīng)菜單,直至某次用戶先把了“E”為止。(3)在程序的一次執(zhí)行過程中,第一次執(zhí)行I、D或C命令之后,哈夫曼樹已經(jīng)在內(nèi)存了,不必再讀入。每次執(zhí)行中不一定執(zhí)行I命令,因?yàn)槲募fmTree可能早已建好。18.圖書管理系統(tǒng)【問題描述】設(shè)計(jì)一個(gè)計(jì)算機(jī)管理系統(tǒng)完成圖書管理基本業(yè)務(wù)?!净疽蟆?)每種書的登記內(nèi)容包括書號、書名、著作者、現(xiàn)存量和庫存量;2)對書號建3)系統(tǒng)*采編入庫存量增加;立索引表(線性表)以提高查找效率;主要功能如下:庫:新購一種書,確定書號后,登記到圖書帳目表中,如果表中已有,則只將*借閱:如果一種書的現(xiàn)存量大于0,則借出一本,登記借閱者的書證號和歸還期限,改變現(xiàn)存量;*歸還:注銷對借閱者的登記,改變該書的現(xiàn)存量?!具M(jìn)一步完成內(nèi)容】1)系統(tǒng)功能的進(jìn)一步完善;2)索引表采用樹表。3)設(shè)計(jì)內(nèi)容4)程序流程圖5)源程序6)軟件測試報(bào)告(包括所用到的數(shù)據(jù)及結(jié)果)19.散列表的設(shè)計(jì)與實(shí)現(xiàn)【問題描述】設(shè)計(jì)散列表實(shí)現(xiàn)電話號碼查找系統(tǒng)?!净疽蟆?)設(shè)每個(gè)記錄有下列數(shù)據(jù)項(xiàng):電話號碼2)從鍵盤輸入各記錄3)采用一定的方法解決沖突;4)查找、用戶名、地址;,分別以電話號碼和用戶名為關(guān)鍵字建立散列表;并顯示給定電話號碼的記錄;5)查找并顯示給定用戶名的記錄?!具M(jìn)一步完成內(nèi)容】1)系統(tǒng)功能的完善;2)設(shè)計(jì)不同的散列函數(shù),比較沖突率;3)在散列函數(shù)確定的前提下,嘗試各種不同類型處理沖突的方法,考察平均查找長度的變化。20.走迷宮游戲程序開始運(yùn)行時(shí)顯示一個(gè)迷宮地圖,迷宮中央有一只老鼠,迷宮的右下方有一個(gè)糧倉。游戲的任務(wù)是使用鍵盤上的方向鍵操縱老鼠在規(guī)定的時(shí)間內(nèi)走到糧倉處。要求:1)老鼠形象可辨認(rèn),可用鍵盤操縱老鼠上下左右移動(dòng);2)迷宮的墻足夠結(jié)實(shí),老鼠不能穿墻而過;3)正確檢測結(jié)果,若老鼠在規(guī)定時(shí)間內(nèi)走到糧倉處,提示成功,否則提示失??;4)添加編輯迷宮功能,可修改當(dāng)前迷宮,修改內(nèi)容:墻變路、路變墻;5)找出走出迷宮的所有路徑,以及最短路徑。利用序列化功能實(shí)現(xiàn)迷宮地圖文件的存盤和讀出等功能21.順序結(jié)構(gòu)、動(dòng)態(tài)鏈表結(jié)構(gòu)下的一元多項(xiàng)式的加法、減法、乘法的實(shí)現(xiàn)。(限1人完成)設(shè)有一元多項(xiàng)式Am(x)和Bn(x).Am(x)=A0+A1x1+A2x2+A3x3+…+AmxmBn(x)=B0+B1x1+B2x2+B3x3+…+Bnxn請實(shí)現(xiàn)求M(x)=Am(x)+Bn(x)、M(x)=Am(x)-Bn(x)和M(x)=Am(x)×Bn(x)。要求:1)首先判定多項(xiàng)式是否稀疏2)分別采用順序和動(dòng)態(tài)存儲結(jié)構(gòu)實(shí)現(xiàn);3)結(jié)果M(x)中無重復(fù)階項(xiàng)和無零系數(shù)項(xiàng);4)要求輸出結(jié)22.利用棧求表達(dá)式的值果的升冪和降冪兩種排列情況編寫程序?qū)崿F(xiàn)表達(dá)式求值,即驗(yàn)證某算術(shù)表達(dá)式的正確性,若正確,則計(jì)算該算術(shù)表達(dá)式的值。主要功能描述如下:1、從鍵盤上輸入表達(dá)式。2、分析該表達(dá)式是否合法:(1)是數(shù)字,則判斷該數(shù)字的合法性。若合法,則壓入數(shù)據(jù)到堆棧中。(2)是規(guī)定的運(yùn)算符,則根據(jù)規(guī)則進(jìn)行處理。在處理過程中,將計(jì)算該表達(dá)式的值。(3)若是其它字符,則返回錯(cuò)誤信息。3、若上述處理過程中沒有發(fā)現(xiàn)錯(cuò)誤,則認(rèn)為該表達(dá)式合法,并打印處理結(jié)果。程序中應(yīng)主要包含下面幾個(gè)功能函數(shù):voidinitstack():初始化堆棧intMake_str():語法檢查并計(jì)算intpush_operate(intoperate):將操作碼壓入堆棧intpush_num(doublenum):將操作數(shù)壓入堆棧intprocede(intoperate):處理操作碼intchange_opnd(intoperate):將字符型操作碼轉(zhuǎn)換成優(yōu)先級intpush_opnd(intoperate):將操作碼壓入堆棧intpop_opnd():將操作碼彈出堆棧intcaculate(intcur_opnd):簡單計(jì)算+,-,*,/doublepop_num():彈出操作數(shù)23.簡易文本編輯器要求:1)具有圖形菜單界面;2)查找,替換(等長,不等長),插入(插串,文本塊的插入)、塊移動(dòng)(行塊,列塊移動(dòng)),刪除3)可正確存盤、取盤;4)正確顯示總行數(shù)。24.二叉樹的中序、前序、后序的遞歸、非遞歸遍歷算法,層次序的非遞歸遍歷算法的實(shí)現(xiàn),應(yīng)包含建樹的實(shí)現(xiàn)。要求:遍歷的內(nèi)容應(yīng)是千姿百態(tài)的。五、樹與二叉樹的轉(zhuǎn)換的實(shí)現(xiàn)。以及樹的前序、后序的遞歸、非遞歸遍歷算法,層次序的非遞歸遍歷算法的實(shí)現(xiàn),應(yīng)包含建樹的實(shí)現(xiàn)。要求:遍歷的內(nèi)容應(yīng)是千姿百態(tài)的。25.學(xué)生搭配問題一班有m個(gè)女生,有n個(gè)男生(m不等于n),現(xiàn)要的兩邊的椅子上.每曲開始時(shí),依次從男生和女生中各出一人配對跳舞,本曲沒成功配對者坐著等待下一曲找舞伴.開一個(gè)舞會.男女生分別編號坐在舞池請?jiān)O(shè)計(jì)一系統(tǒng)模擬動(dòng)態(tài)地顯示出上述過程,要求如下:1)輸出每曲配對情況2)計(jì)算出任何一個(gè)男生(編號為X)和任意女生(編號為Y),在第K曲配對跳舞的情況.至少求出K的兩個(gè)值.3)盡量設(shè)計(jì)出多種算法及程序,可視情況適當(dāng)加分提示:用隊(duì)列來解決比較方便.26.敢死隊(duì)問題(有M個(gè)敢死隊(duì)員要炸掉敵人的一碉堡,誰都不想去,排長決定用輪回?cái)?shù)數(shù)的辦法來決定哪個(gè)戰(zhàn)士去執(zhí)行任務(wù)。如果前一個(gè)戰(zhàn)士沒完成任務(wù),則要再派一個(gè)戰(zhàn)士上去?,F(xiàn)給每個(gè)戰(zhàn)士編一個(gè)號,大家圍坐成一圈,隨便從某一個(gè)戰(zhàn)士開始計(jì)數(shù),當(dāng)數(shù)到5時(shí),對應(yīng)的戰(zhàn)士就去執(zhí)行任務(wù),且此戰(zhàn)士不再參加下一輪計(jì)數(shù)。如果此戰(zhàn)士沒完成任務(wù),再從下一個(gè)戰(zhàn)士開始數(shù)數(shù),被數(shù)到第5時(shí),此戰(zhàn)士接著去執(zhí)行任務(wù)。以此類推,直到任務(wù)完成為止。排長是不愿意去的,假設(shè)排長為1號,請你設(shè)計(jì)一程序,求出從第幾號戰(zhàn)士開始計(jì)數(shù)才能讓排長最后一個(gè)留下來而不去執(zhí)行任務(wù)。要求:至少采用兩種不同的數(shù)據(jù)結(jié)構(gòu)的方法實(shí)現(xiàn)。如果采用三種以上的方法者,可加分。27.猴子吃桃子問題有一群猴子摘了一堆桃子,他們每天都吃當(dāng)前桃子的一半且再多吃一個(gè),到了第10天就只余下一個(gè)桃子。用多種方法實(shí)現(xiàn)求出原來這群猴子共摘了多少個(gè)桃子。要求:1)采用數(shù)組數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)上述求解2)采用鏈數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)上述求解3)采用遞歸實(shí)現(xiàn)上述求解4)如果采用4種方法者,適當(dāng)加分28.數(shù)制轉(zhuǎn)換問題任意給定一個(gè)M進(jìn)制的數(shù)1)求出此數(shù)x的10進(jìn)制值(用MD表示)2)實(shí)現(xiàn)對x向任意的一個(gè)非M進(jìn)制的數(shù)的轉(zhuǎn)換。x,請實(shí)現(xiàn)如下要求3)至少用兩種或兩種以上的方法實(shí)現(xiàn)上述要求(用棧解決,用數(shù)組解決,其它方法解決)。29.排序綜合利用隨機(jī)函數(shù)產(chǎn)生N個(gè)隨機(jī)整數(shù)(20000以上),對這些數(shù)進(jìn)行多種方法進(jìn)行排序。要求:1)至少采用三種方法實(shí)現(xiàn)上述問題求解(提示,可采用的方法有插入排序、希爾排序、起泡排序、快速排序、選擇排序、堆排序、歸并排序)。并把排序后的結(jié)果保存在不同的文件中。2)統(tǒng)計(jì)每一種排序方法的性能(以上機(jī)運(yùn)行程序所花費(fèi)的時(shí)間為準(zhǔn)進(jìn)行對比),找出其中兩種較快的方法。3)如果采用4種或4種以上的方法者,可適當(dāng)加分。30.學(xué)生成績管理系統(tǒng)學(xué)生成績信息文件1(1.txt),內(nèi)容如下現(xiàn)有姓名學(xué)號語文數(shù)學(xué)英語張明明01677882李成友02789188張輝燦03688256王露04564577陳東明05673847….......…學(xué)生成績信息文件姓名學(xué)號語文數(shù)學(xué)英語陳果315768822(2.txt),內(nèi)容如下:李華明32889068張明東33484256李明國34504587陳道亮35475877….......…試編寫一管理系統(tǒng),要求如下:1)實(shí)現(xiàn)對兩個(gè)文件數(shù)據(jù)進(jìn)行合并,生成新文件3.txt2)抽取出三科成績3)對合并后的文件3.txt中的數(shù)4)輸入一個(gè)學(xué)生姓名后,能查找到此學(xué)生中有補(bǔ)考的學(xué)生并保存在一個(gè)新文件4.txt據(jù)按總分降序排序(至少采用兩種排序方法實(shí)現(xiàn))(至少采用兩種查找方法實(shí)的信息并輸出結(jié)果現(xiàn))5)要求使用結(jié)構(gòu)體,鏈或數(shù)組等實(shí)現(xiàn)上述要求.6)采用多種方法且算法正確者,可適當(dāng)加分.31.圖的遍歷和生成樹求解實(shí)現(xiàn)要求:1)先任意創(chuàng)建一個(gè)圖;2)圖的DFS,BFS的遞歸和非遞歸算
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【中考考點(diǎn)基礎(chǔ)練】第15章 從指南針到磁浮列車 電能從哪里來 2025年物理中考總復(fù)習(xí)(福建)(含答案)
- 基于MCGS的鍋爐汽包水位計(jì)算機(jī)控制系統(tǒng)設(shè)計(jì)終稿
- 財(cái)經(jīng)法規(guī)與會計(jì)職業(yè)道德模擬試卷第一套有答案1
- 2024至2030年中國六火眼烤箱灶數(shù)據(jù)監(jiān)測研究報(bào)告
- 2024年中國高導(dǎo)磁芯繞線市場調(diào)查研究報(bào)告
- 2024年中國虎杖甙市場調(diào)查研究報(bào)告
- 2024年中國百葉窗式管道風(fēng)機(jī)市場調(diào)查研究報(bào)告
- 2024年中國機(jī)房漏水監(jiān)測系統(tǒng)市場調(diào)查研究報(bào)告
- 2024年中國顯微激光拉曼光譜儀市場調(diào)查研究報(bào)告
- 2024年中國區(qū)界牌市場調(diào)查研究報(bào)告
- 濾波器出廠試驗(yàn)報(bào)告
- 2023-2024學(xué)年北京市通州區(qū)九年級(上)期中物理試卷
- 高考熱點(diǎn)作文素材:《黑神話:悟空》
- 工業(yè)大學(xué)安全施工組織設(shè)計(jì)
- 城市軌道交通列車自動(dòng)控制系統(tǒng)維護(hù) 課件 1.1 列車自動(dòng)控制系統(tǒng)初識
- 湘美版 八年級上冊 美術(shù) 第3課 寄情山水 教案
- 期中模擬試卷-浙2024-2025學(xué)年統(tǒng)編版語文四年級上冊
- 洗車場加盟協(xié)議
- 2024-2030年沉香木項(xiàng)目融資商業(yè)計(jì)劃書
- 2024年新華師大版七年級上冊數(shù)學(xué)教學(xué)課件 第1章 有理數(shù) 1.13 近似數(shù)
- 2024-2030年中國天然乳膠床墊行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報(bào)告
評論
0/150
提交評論