版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、旅游信息管理系統(tǒng)數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)(論文)題 目 旅游信息管理系統(tǒng) 作 者 院 系 信息工程學(xué)院 專 業(yè) 信息管理與信息系統(tǒng) 學(xué) 號 指導(dǎo)老師 答辯時間 摘 要隨著生活水平的提高,現(xiàn)代科技也日益發(fā)達(dá)。日常生活中旅游備受人們喜愛。隨著旅游信息在種類和數(shù)量上的增多,以及涉及的方面相對較廣,旅游信息的管理難度也在增大。同時,伴隨計(jì)算機(jī)的普及,人們也愿意并習(xí)慣通過計(jì)算機(jī)來獲取信息資源,人們可以在最短的時間內(nèi)獲信息,然后擬定適合自己的旅游方案,既節(jié)省人力物力又提高工作效率,達(dá)到了事半功倍的效果,因此設(shè)計(jì)一個旅游信息管理系統(tǒng)可解決許多不必要的麻煩。開發(fā)這樣一個程序主要運(yùn)用了C語言,數(shù)據(jù)結(jié)構(gòu)等面知識。報告主要
2、從信息系統(tǒng)的程序段,對輸入輸出數(shù)據(jù)的要求,系統(tǒng)的功能,以及總體的設(shè)計(jì)來介紹此旅游信息系統(tǒng)的實(shí)現(xiàn)過程。本次畢業(yè)設(shè)計(jì)開發(fā)的旅游信息管理系統(tǒng)就提供了一個操作的平臺,可以將信息進(jìn)行分類管理,并以旅游信息所涉及的具體方面作為模塊劃分的依據(jù)。具體內(nèi)容包括:系統(tǒng)管理員模塊、游客信息模塊、退出系統(tǒng)模塊等,并在這些模塊中完成了添加、修改、刪除、查詢等功能。關(guān)鍵詞:C語言,數(shù)據(jù)結(jié)構(gòu),旅游信息管理 。AbstractWith the improvement of living standards, modern technology has also developed increasingly. Tourism
3、is popular in daily life. Along with the increase in tourist information on the type and quantity, and involves a relatively wide, tourism information management difficulty is also increased. At the same time, along with the popularization of computer, people are willing and habit through the comput
4、er to access to information resources, people can in the shortest possible time received information, suitable for their own travel plan is then developed, both economically and improve work efficiency, to achieve the twice the result with half the effort, so to design a tourism information manageme
5、nt system can solve many unnecessary trouble. Development of such a program mainly using C language, data structure and so on knowledge. Report the procedures section, mainly from the information system to the requirements of input and output data, the function of the system, as well as the overall
6、design to introduce the tourism information system implementation process. This graduate design and development of tourism information management system will provide a platform for operation, to classify the information management, and the specific aspects of tourism information involved as the basi
7、s of module partition. The concrete content includes: the system administrator module, tourist information module, exit system module, etc., and in these modules completed to add, modify, delete, query and other functions. Key words: C language, data structure, tourism information management 旅游信息管理系
8、統(tǒng)是對旅游信息資源進(jìn)行管理的系統(tǒng)。隨著旅游信息在種類和數(shù)量上的增多,以及涉及的方面相對較廣,旅游信息的管理難度也在增大。伴隨計(jì)算機(jī)的普及,人們也愿意并習(xí)慣通過計(jì)算機(jī)來獲取信息資源,人們可以在最短的時間內(nèi)獲信息,然后擬定適合自己的旅游方案,既節(jié)省人力物力又提高工作效率,達(dá)到了事半功倍的效果。目錄摘 要1Abstract21緒論11.1 課題背景及研究意義11.1.1 課題背景11.1.2 研究意義11.2 課題研究的主要內(nèi)容11.3小結(jié)12需求分析32.1功能需求32.2數(shù)據(jù)需求32.2.1設(shè)計(jì)思路32.2.2旅游信息管理系統(tǒng)的數(shù)據(jù)42.3 性能需求52.4 系統(tǒng)的可行性分析52.4.1 技術(shù)可
9、行性52.4.2 經(jīng)濟(jì)可行性52.4.3 操作可行性52.4.4 可行性研究結(jié)論52.5小結(jié)63系統(tǒng)設(shè)計(jì)73.1系統(tǒng)設(shè)計(jì)方案73.2系統(tǒng)模塊設(shè)計(jì)83.2.1管理員功能模塊設(shè)計(jì)93.2.2游客功能模塊設(shè)計(jì)113.3小結(jié)134調(diào)試與測試144.1 調(diào)試144.2 測試144.2.1測試的數(shù)據(jù)及結(jié)果144.3 小結(jié)205總 結(jié)215.2 設(shè)計(jì)收獲215.3 改進(jìn)21結(jié)束語22參考文獻(xiàn)23附錄24111緒論1.1 課題背景及研究意義1.1.1 課題背景隨著時代的發(fā)展,計(jì)算機(jī)普遍被用于各個行業(yè)。計(jì)算機(jī)能夠快速、準(zhǔn)確的服務(wù)于人們,不僅提高了工作效率,而且大大的提高了其安全性。尤其對于復(fù)雜的系統(tǒng)功能,計(jì)算機(jī)
10、能夠充分發(fā)揮它的優(yōu)越性。隨著計(jì)算機(jī)科學(xué)的日漸成熟以及互聯(lián)網(wǎng)的普及,計(jì)算機(jī)網(wǎng)絡(luò)對人們的影響日漸明顯。旅游信息管理作為其中之一的功能,尤在年輕人中有著較為廣泛的應(yīng)用。1.1.2 研究意義社會的發(fā)展,以及計(jì)算機(jī)的普及,很多地方已經(jīng)開始大量的使用計(jì)算機(jī)相關(guān)系統(tǒng)為人們服務(wù)。開發(fā)一個旅游信息管理系統(tǒng)是非常有必要的。采用旅游信息管理系統(tǒng)進(jìn)行旅游信息管理,進(jìn)一步提高了旅游服務(wù)業(yè)的效益和現(xiàn)代化水平。為廣大旅游愛好者提供了方便,實(shí)現(xiàn)數(shù)據(jù)處理的準(zhǔn)確化、高效率化。采用旅游管理系統(tǒng),有著手工管理無法比擬的優(yōu)點(diǎn)。例如:準(zhǔn)確率高、時效性強(qiáng)、可靠性高等。1.2 課題研究的主要內(nèi)容旅游信息管理系統(tǒng)基本功能要求:1旅游地點(diǎn)的插入
11、。2游客報名。3當(dāng)某地的旅游人數(shù)少于三個人時,取消次旅游地,建議游客改選其他旅游點(diǎn)。4當(dāng)某旅游地旅游人數(shù)等于六個時,不允許在報名,建議游客改選其它旅游地。1.3小結(jié)本章主要對旅游信息管理系統(tǒng)的背景以及研究意義做以介紹。旅游信息管理系統(tǒng)的研究開發(fā)在學(xué)生的學(xué)習(xí)中使用及普及有廣闊的空間。本章后面,主要對課題的主要工作進(jìn)行規(guī)劃以及對本系統(tǒng)的論文結(jié)構(gòu)進(jìn)行簡單的規(guī)劃描述。2需求分析2.1功能需求本系統(tǒng)的功能模塊,包括旅游公司管理人員模塊、游客模塊、退出模塊,這些功能模塊主要是面向管理員、游客二個實(shí)體對象的需求而設(shè)計(jì)的,并且以游客和管理員為主體。管理員通過密碼進(jìn)入管理員模塊,管理員可以進(jìn)行的操作有:旅游地點(diǎn)
12、的插入即管理員插入可供游客報名的旅游地點(diǎn)、各旅游地游客人數(shù)查詢即查詢各個旅游地報名人數(shù)情況、顯示不足3人旅游地點(diǎn)即旅游地中報名人數(shù)少于3人的旅游地。游客進(jìn)入游客模塊,可以進(jìn)行的操作有:游客報名即游客輸入個人信息后就可報名成功、查詢所有旅游地點(diǎn)即查詢旅游公司提供的所以可供游客出游的旅游地、查詢可報旅游地點(diǎn)即查詢沒有報滿的旅游地、修改旅游地點(diǎn)即修改游客自己的旅游地或個人信息。2.2數(shù)據(jù)需求2.2.1設(shè)計(jì)思路 圖2-1系統(tǒng)結(jié)構(gòu)圖2.2.2旅游信息管理系統(tǒng)的數(shù)據(jù)旅游公司管理人員對旅游人員和旅游地點(diǎn)的操作,用二叉排序樹管理旅游地點(diǎn)。主要有地點(diǎn)的變更,插入、刪除、游客的信息存儲及及時提醒等功能。其中二叉樹
13、每一個結(jié)點(diǎn)包括旅游地點(diǎn)的區(qū)號(area_node)、名稱(area)、該旅游地的游客人數(shù)(count)、以及一個指向游客信息結(jié)構(gòu)的指針(list),還有二叉樹結(jié)點(diǎn)的左孩子和右孩子指針(lchild,rchild)。游客可以登陸旅游公司界面進(jìn)行報名、選擇旅游地點(diǎn)和輸入個人信息。游客結(jié)構(gòu)采用單鏈表,其中包括單鏈表的初始化、插入、刪除、計(jì)數(shù)功能。其中每一個單鏈表結(jié)點(diǎn)包括游客的編號(id)、姓名(name)、性別(sex)、和鏈接鏈表的指針(next)2.3 性能需求系統(tǒng)必須安全可靠、不會出現(xiàn)無故死機(jī)狀態(tài)、速度不宜過慢。2.4 系統(tǒng)的可行性分析可行性分析,即用最小的代價、在盡可能短的時間內(nèi)確定問題是否
14、能夠解決。系統(tǒng)的可行性分析,是針對要設(shè)計(jì)的系統(tǒng),研究其設(shè)計(jì)是否存在內(nèi)外部的必要條件,包括技術(shù)上、資金上、經(jīng)濟(jì)上、人力資源以及組織管理上的必要條件,同時要分析在目前條件下是否有必要設(shè)計(jì)這樣一個系統(tǒng)。2.4.1 技術(shù)可行性此系統(tǒng)對計(jì)算機(jī)硬件和軟件的需求并不高,僅需要一臺裝有VC+6.0 、 Window 2000及以上信息服務(wù)軟件的計(jì)算機(jī)即可。一般當(dāng)前學(xué)?;騻€人電腦完全可滿足要求。對于軟件技術(shù)要求,現(xiàn)在的程序設(shè)計(jì)語言已非常成熟。2.4.2 經(jīng)濟(jì)可行性由于本系統(tǒng)是旅游管理系統(tǒng),裝上該應(yīng)用軟件,即可使用系統(tǒng),系統(tǒng)成本主要集中在系統(tǒng)軟件的開發(fā)上,當(dāng)系統(tǒng)投入運(yùn)行后可以為旅游服務(wù)業(yè)節(jié)約大量的人力,物力,財(cái)力
15、。所帶來的效益遠(yuǎn)遠(yuǎn)大于系統(tǒng)軟件的開發(fā)成本。在經(jīng)濟(jì)上完全可行。2.4.3 操作可行性本系統(tǒng)的界面設(shè)計(jì)時充分考慮管理人員和游客的習(xí)慣,使得操作簡單;數(shù)據(jù)的輸入輸出時自己進(jìn)行定義,計(jì)算結(jié)果準(zhǔn)確。2.4.4 可行性研究結(jié)論依據(jù)以上因素,本系統(tǒng)開發(fā)項(xiàng)目不僅方便快捷、高效,而且在人們的日常生活中可用性強(qiáng),從而使本系統(tǒng)開發(fā)者相信該系統(tǒng)開發(fā)出來之后將取得的成功。綜上所述,此項(xiàng)目在技術(shù)、操作、經(jīng)濟(jì)等上是完全可行的。2.5小結(jié) 本章主要對旅游信息管理系統(tǒng)進(jìn)行了系統(tǒng)的可行性分析、用戶需求分析以及開發(fā)此系統(tǒng)所需要的軟硬件支持,從而得出了以下結(jié)論。3系統(tǒng)設(shè)計(jì)輸出desktop( ) 所謂系統(tǒng)設(shè)計(jì),就是根據(jù)目標(biāo)系統(tǒng)邏輯功
16、能的要求,結(jié)合實(shí)際情況,采用一定的方法,詳細(xì)地確定目標(biāo)系統(tǒng)的結(jié)構(gòu)和具體實(shí)施方案,即建立目標(biāo)系統(tǒng)的物理模型。本章根據(jù)系統(tǒng)需求分析,即“做什么”,詳細(xì)設(shè)計(jì)了上機(jī)實(shí)驗(yàn)輔助系統(tǒng)的功能模塊,解決了“如何做”的問題。3.1系統(tǒng)設(shè)計(jì)方案系統(tǒng)采用菜單設(shè)計(jì),選擇你需要的功能,通過函數(shù)調(diào)用,調(diào)用相關(guān)函數(shù)模塊,實(shí)現(xiàn)相應(yīng)功能 。如圖3-1 圖3-1系統(tǒng)模塊圖 為實(shí)現(xiàn)上述程序功能,用二叉排序樹結(jié)點(diǎn)結(jié)構(gòu)體表示旅游地信息typedef struct Tree_Placeint area_code; /旅游地區(qū)號string area; /旅游地名稱int count; /記錄該旅游地報名游客人數(shù)struct Tree_Pl
17、ace *lchild,*rchild; Trist *list; /指向游客所在單鏈表的指針 Place,*TPlace; 左孩子 區(qū)號 地名 游客數(shù) 右孩子 指向鏈表的指針鏈表結(jié)點(diǎn)結(jié)構(gòu)體表示游客信息typedef struct touriststring name; /姓名int id; /身份證號string sex;struct tourist *next;Trist,*linklist;3.2系統(tǒng)模塊設(shè)計(jì)在前面的需求分析時,我們已經(jīng)分析了本系統(tǒng)的功能,包括旅游公司管理人員模塊、游客模塊、推出模塊,這些功能模塊主要是面向管理員、游客二個實(shí)體對象的需求而設(shè)計(jì)的,并且游客和管理員為主體。圖
18、4.1中給出了系統(tǒng)總體功能圖。下面我們將對各個模塊的功能進(jìn)行設(shè)計(jì)。系統(tǒng)通過主函數(shù)main()開始調(diào)用各個模塊功能;main() /主函數(shù) TPlace T=NULL; /初始化旅游地區(qū)號,名稱、報名人數(shù)、單鏈表 Mainlist(T); /調(diào)用函數(shù)輸出購票歡迎界面 圖4-1 系統(tǒng)總體功能圖3.2.1管理員功能模塊設(shè)計(jì)本模塊主要是由管理員使用的,管理員使用密碼進(jìn)行登陸,登陸后才能夠正常進(jìn)行實(shí)驗(yàn)操作,進(jìn)入管理員系統(tǒng),管理員可以輸入新增旅游地點(diǎn)、查詢已報名游客人數(shù)、顯示不足3人的旅游地點(diǎn)。圖4-2管理員功能圖系統(tǒng)運(yùn)行,主函數(shù)main()調(diào)用界面函數(shù)輸出歡迎界面,void Mainlist(TPlac
19、e &tree) system("cls"); printf(" *nn"); printf(" 歡迎登陸旅游購票系統(tǒng)nn"); printf( " 請選擇登錄身份:n"); printf(" 1、旅游公司管理人員nn"); printf(" 2、游客nn"); printf( " 3、退出程序nn"); printf(" *nn" ); int n,key,i=1; /定義n為選擇代號、key為管理人員密碼、i為限制次數(shù) sc
20、anf("%d",&n); /登錄者輸入要進(jìn)入的代號,系統(tǒng)判斷 switch(n) case 1: do printf("請輸入登陸密碼:"); scanf("%d",&key);i+; while(key!=12345&&i<=3); /密碼在3次之內(nèi)輸入正確跳出循環(huán)結(jié)構(gòu) if(key=12345) Tour_1(tree); /密碼輸入正確,調(diào)用函數(shù)Tour_1 else Mainlist(tree); /3次輸入錯誤再次跳躍Mainlist_函數(shù)輸出歡迎界面 break;旅游公司管理人員輸入
21、正確密碼,調(diào)用管理員函數(shù)模塊,進(jìn)入管理員函數(shù);void Tour_1(TPlace &tree) /管理員函數(shù)system("cls"); printf(" *nn");printf(" 1、輸入旅游地點(diǎn) n");printf(" 2、查詢各旅游地游客人數(shù)n");printf(" 3、顯示不足三人的旅游地n");printf(" 4、退出n");printf(" *nn");int n; /定義n為選擇代號scanf("%d",
22、&n); switch(n) case 1: Fun1(tree);break; /輸入旅游地點(diǎn) case 2: Fun2(tree,1);break; /查詢各旅游地游客人數(shù) case 3: Fun3(tree,1);break; /判斷對應(yīng)的值顯示不足三人的旅游地 case 4: Mainlist(tree);break; /再次調(diào)用Mainlist_函數(shù)退出,輸出歡迎界面 default :printf("輸入錯誤,請重新輸入!n"); system("pause"); Tour_1(tree); /調(diào)用Tour_1函數(shù),輸出界面 管理員模
23、塊通過內(nèi)部代碼,調(diào)用相關(guān)函數(shù),實(shí)現(xiàn)管理員模塊相關(guān)功能3.2.2游客功能模塊設(shè)計(jì)本模塊是游客使用,游客使用游客身份證號進(jìn)行登陸,可以輸入旅游地區(qū)好查找旅游地、查看所有旅游地、查詢可報旅游地點(diǎn)、修改以報旅游地點(diǎn)等。圖4-3給出了本模塊的功能圖。圖4-3游客功能圖系統(tǒng)運(yùn)行進(jìn)入歡迎界面,通過條件判斷,調(diào)用函數(shù)Tour_2(進(jìn)入游客模塊函數(shù)void Tour_2(TPlace &tree) /游客函數(shù)功能模塊 int code; /存放旅游地區(qū)號 system("cls");printf(" *nn");printf(" 1、輸入旅游地區(qū)號n &
24、quot;);printf(" 2、顯示所有旅游地n");printf(" 3、查詢可報名地n");printf(" 4、修改旅游地點(diǎn)n");printf(" 5、退出n") ;printf(" *nn"); int n; /存放數(shù)字代號scanf("%d",&n); switch(n) case 1: printf("請輸入?yún)^(qū)號:n"); scanf("%d",&code); Search_T(tree,code);
25、/輸入旅游地區(qū)號 break; case 2: Fun2(tree,2);break; /顯示所有旅游地 case 3: Fun3(tree,2);break; /查詢可報名地 case 4: Fun4(tree);break; /修改旅游地點(diǎn) case 5: Mainlist(tree);break; /退出 default :printf("輸入錯誤,請重新輸入!n"); system("pause"); Tour_2(tree);游客模塊通過內(nèi)部代碼,通過switchcase條件判斷,調(diào)用相關(guān)函數(shù),實(shí)現(xiàn)游客模塊相關(guān)功能。3.3小結(jié)這一章主要對旅游信
26、息系統(tǒng)的系統(tǒng)設(shè)計(jì)進(jìn)行描述。在系統(tǒng)設(shè)計(jì)里,主要對基本功能模塊做以簡單的概述及總體規(guī)劃。4調(diào)試與測試4.1 調(diào)試調(diào)試過程主要是運(yùn)行編制好的程序,然后遇到錯誤后根據(jù)系統(tǒng)的提示,找到相關(guān)的問題所在,并改正。本系統(tǒng)調(diào)試過程中遇到的主要問題、原因和解決方法如下面介紹。1)系統(tǒng)提示的錯誤error C2143: syntax error : missing '' before ''到程序段里仔細(xì)尋找問題語句,并將其改正。2)、cannot open Debug/Cpp1.exe for writing執(zhí)行窗口沒關(guān)閉就修改程序段關(guān)閉窗口后從新執(zhí)行程序。4.2 測試軟件測試是軟件
27、生存期中的一個重要階段,是軟件質(zhì)量保證的關(guān)鍵步驟從用戶的角度來看,普遍希望通過軟件測試暴露軟件中隱藏的錯誤和缺陷,所以軟件測試應(yīng)該是“為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程”?;蛘哒f,軟件測試應(yīng)該根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計(jì)一批測試用例(即輸入數(shù)據(jù)及其預(yù)期的輸出結(jié)果),并利用這些測試用例去運(yùn)行程序,以發(fā)現(xiàn)程序錯誤或缺陷。過度測試則會浪費(fèi)許多寶貴的資源。到測試后期,即使找到了錯誤,然而付出了過高的代價。4.2.1測試的數(shù)據(jù)及結(jié)果界面設(shè)計(jì),如圖5-1所示:圖5-1 輸入“1”密碼“12345”進(jìn)入旅游公司管理人員界面,如圖5-2,5-3所示:圖5-2輸出“1”,進(jìn)入“輸入旅游地點(diǎn)”
28、模塊,進(jìn)行旅游地點(diǎn)輸入測試。如圖5-3所示:圖5-3輸出“2”,查詢旅游地人數(shù),如圖5-4所示:圖5-4輸入“3”,顯示不足3人的旅游地,如圖5-5所示: 圖5-5輸入“4”,退出返回歡迎菜單。如圖5-6所示:圖5-6輸入“2”,進(jìn)入“游客”模塊。如圖5-7所示: 圖5-7輸入“1”,輸入旅游地區(qū)號,查詢旅游地。如圖5-8 圖5-8輸入相關(guān)信息報名,如圖5-9 圖5-9輸入“2”顯示所有旅游地,如圖5-10 圖5-10輸入“3”,查詢可報旅游地,如圖5-11 圖5-11輸入“4”,修改旅游地點(diǎn)。如圖5-12 圖5-124.3 小結(jié)這一章主要對本系統(tǒng)的部署與測試進(jìn)行大體描述。本章對系統(tǒng)運(yùn)行環(huán)境的
29、搭建、系統(tǒng)測試的主要方法進(jìn)行簡要介紹,并根據(jù)系統(tǒng)測試的方法找出本系統(tǒng)主要錯誤及找出發(fā)生錯誤的原因。5總 結(jié)逐步完成系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)的各個環(huán)節(jié),實(shí)現(xiàn)了功能較為完善的旅游信息管理系統(tǒng)。測試中,真切感受到,旅游信息管理系統(tǒng)可以為人們帶來很大便利,管理員也能夠輕松方便管理游客的信息。5.1 遇到難題系統(tǒng)設(shè)計(jì)期間,遇到了一系列問題,主要是代碼碼問題。實(shí)現(xiàn)編程的過程中,需要耐心檢查,改正。同時向老師和同學(xué)請教排除編碼過程中的問題。5.2 設(shè)計(jì)收獲1,經(jīng)過這次課程設(shè)計(jì),我對數(shù)據(jù)結(jié)構(gòu)這門課程有了進(jìn)一步的理解,對C編程,數(shù)據(jù)結(jié)構(gòu)有了一定的提高。另外也提高了我分析問題、解決問題,從而運(yùn)用所學(xué)知識解決實(shí)際問題的能力。
30、2.通過這次課程設(shè)計(jì),我發(fā)現(xiàn)了自己平時學(xué)數(shù)據(jù)結(jié)構(gòu)這門課還有很多沒有注意到的地方。雖然說這次的課題順利完成了,但我對數(shù)據(jù)結(jié)構(gòu)這門課的學(xué)習(xí)還沒有完成,以后還必須對數(shù)據(jù)結(jié)構(gòu)進(jìn)行復(fù)習(xí)鞏固。3.以前在數(shù)據(jù)結(jié)構(gòu)這門課上,我學(xué)到的僅僅是理論知識,但這次的課程設(shè)計(jì)讓我感受到課上的東西用到實(shí)際問題的難處。在今后對計(jì)算機(jī)方面知識的學(xué)習(xí)中,我要注意理論聯(lián)系實(shí)際,這樣才可以把學(xué)到的東西運(yùn)用出來,真正的做到學(xué)以致用!5.3 改進(jìn)在實(shí)際項(xiàng)目開發(fā)與知識運(yùn)用中,自己的知識儲備有很大的空缺,由于實(shí)際動手開發(fā)操作的經(jīng)驗(yàn)不足,系統(tǒng)開發(fā)中顯得有些吃力。為了彌補(bǔ)不足,自己應(yīng)該在今后的工作、學(xué)習(xí)、生活中,勤勤懇懇的研究問題,在實(shí)踐中學(xué)習(xí)
31、多動手,多思考,多多總結(jié),并且應(yīng)該廣泛涉獵,增加知識儲備。借鑒成功的思考方式,探索科學(xué)的思考方法,爭取把所學(xué)用于實(shí)踐,在實(shí)踐中學(xué)習(xí)提高。.通過這次課程設(shè)計(jì),我感覺到要真正做出一個程序并不很容易,但只要用心去做,總會有收獲,特別是當(dāng)我遇到問題,問老師,問同學(xué),想盡辦法去解決,最后終于找到方法時,心里的那份喜悅之情真是難以形容.編寫程序中遇到問題再所難免,應(yīng)耐心探究其中的原因,從出現(xiàn)問題的地方起,并聯(lián)系前后程序,仔細(xì)推敲,逐個排查.直到最終搞清為止。對于數(shù)據(jù)結(jié)構(gòu)有了更深層次的理解,循環(huán)隊(duì)列中對邊界條件的處理,滿足什么條件為隊(duì)滿,滿足什么條件為隊(duì)空。結(jié)束語經(jīng)過了為期將近一個月的課程設(shè)計(jì),今天終于基本
32、完成了,期間參考了網(wǎng)上相關(guān)資料,這期間最大的感受,就是做好課程設(shè)計(jì),不僅要細(xì)心,更要有耐心,且富有責(zé)任心。細(xì)心能避免自己因錯誤,需要大量時間修改,浪費(fèi)精力和時間。耐心就是得堅(jiān)持做下去,一步一步做下去,雖然還有好多問題不大懂,理解不透但是自己堅(jiān)持下來了,就是最大的勝利而在課程設(shè)計(jì)期間,對于數(shù)據(jù)處理和圖形的繪制,使我對這文本文檔的使用更加熟悉,這也為我們以后畢業(yè)設(shè)計(jì)打下基礎(chǔ)。在設(shè)計(jì)中,對于過程的步驟該如何進(jìn)行的考慮,鍛煉我們處理問題的能力。同時在這次設(shè)計(jì),我也學(xué)到了做事情要一步一個腳印,細(xì)心處理每個數(shù)據(jù),這樣才可以順利地完成設(shè)計(jì)。參考文獻(xiàn)1 嚴(yán)蔚敏 吳偉明. 數(shù)據(jù)結(jié)構(gòu) (C語言版) M. 北京:清
33、華大學(xué)出版社, 2011-7-11:15-122.2 譚浩強(qiáng). C語言程序設(shè)計(jì)M. (第三版). 北京:清華大學(xué)出版社, 2007:17-59.3 張世和. 數(shù)據(jù)結(jié)構(gòu)M. 北京:清華大學(xué)出版社, 2004:23-77.4 高一凡. 數(shù)據(jù)結(jié)構(gòu)M. 西安:清華大學(xué)出版社, 2002:20-35.5 李健學(xué), 余健. 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)案例精編M. 清湖大學(xué)出版社, 2007.致謝在這次課程設(shè)計(jì)過程中,我得到了許多人的幫助。首先我要感謝我的老師在課程設(shè)計(jì)上給予我的指導(dǎo)和提供給我的支持和幫助,這是我能順利完成這次報告的主要原因。更重要的是老師幫我解決了許多技術(shù)上的難題,讓我能把系統(tǒng)做得更加完善。在此期間
34、,我不僅學(xué)到了許多新的知識,而且也開闊了視野,提高了自己的設(shè)計(jì)能力。在學(xué)習(xí)中老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、豐富淵博的知識、敏銳的學(xué)術(shù)思維、精益求精的工作態(tài)度以及侮人不倦的師者風(fēng)范是我終生學(xué)習(xí)的楷模,老師們的高深精湛的造詣與嚴(yán)謹(jǐn)求實(shí)的治學(xué)精神,將永遠(yuǎn)激勵著我。課程設(shè)計(jì)期間,還得到眾多老師的關(guān)心、支持和幫助。在此,謹(jǐn)向老師們致以衷心的感謝和崇高的敬意! 同時,感謝校方給予我這樣一次機(jī)會,能夠獨(dú)立地完成一個課程設(shè)計(jì),并在這個過程當(dāng)中,給予我們各種方便,使我們在這學(xué)期快要結(jié)課的時候,能夠?qū)W(xué)到的知識應(yīng)用到實(shí)踐中,增強(qiáng)了我們實(shí)踐操作和動手應(yīng)用能力,提高了我獨(dú)立思考的能力。感謝老師和同學(xué)給自己的指導(dǎo)和幫助,是他們教
35、會了我專業(yè)知識,教會了我如何學(xué)習(xí)。正是由于他們,我才能夠順利的完成這次數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì),在此向他們表示我由衷的謝意。附錄#include<stdio.h>#include<stdlib.h>#include<string>#define MAX 50#define SIZE 12typedef struct tourist /定義結(jié)構(gòu)體 char nameSIZE; /姓名 int id; char sex5; struct tourist *next; /調(diào)用自身定義指針Trist,*linklist;typedef struct Tree_Place /
36、定義結(jié)構(gòu)體 int code; /旅游地區(qū)號 char areaSIZE; /旅游地名稱 int count; /記錄該旅游地報名游客人數(shù) struct Tree_Place *lchild,*rchild; /調(diào)用自身定義指針 Trist *list; /指向游客所在單鏈表的指針 Place,*TPlace;void Search_T(TPlace &tree,int co);void Mainlist(TPlace &tree);void Tour_1(TPlace &tree);void Tour_2(TPlace &tree);void Destory(
37、TPlace &tree); main() /主函數(shù) TPlace T=NULL; /初始化旅游地區(qū)號,名稱、報名人數(shù)、單鏈表 Mainlist(T); /調(diào)用函數(shù)輸出購票歡迎界面 void Init_L(linklist &head) head=NULL;void Insert_L (TPlace &tree,TPlace &t,linklist &head) linklist tr; char c; int i=1,co,id; while(t->count<6&&i=1) printf("請輸入你的身份證號n&
38、quot;); scanf("%d",&id); tr=(linklist)malloc(sizeof(Trist); tr->id =id; printf("輸入姓名,性別:n"); scanf("%s,%s",&tr->name,&tr->sex) ; tr->next=head; head=tr;t->count+; printf("繼續(xù)報名請按1,按0退出!n"); scanf("%d",&i); if(t->count
39、>=6) printf("此旅游地人數(shù)已滿,按'y'選擇其他旅游地,其他鍵退出!n"); scanf("%d",&c); if(c='y'|c='Y')printf("請重新輸入?yún)^(qū)號n");scanf("%d",&co);Search_T(tree,co); else Tour_2(tree);void Delet_L (linklist &head) linklist p,pro; pro=head; while(pro) p=pro
40、;pro=p->next ;free(p); void Insert_T(TPlace &tree,TPlace p) /在二叉排序樹中插入一個新結(jié)點(diǎn) if (tree=NULL) tree=p; else if(p->code<tree->code) Insert_T(tree->lchild,p); else if(p->code>tree->code) Insert_T(tree->rchild,p);void Search_T(TPlace &tree,int co) char c; /存放Y TPlace p; i
41、nt code; p=tree; /旅游地信息賦給結(jié)構(gòu)體P while(p&&p->code!=co ) if(p->code>co) p=p->lchild ; else p=p->rchild ; if(!p)printf( "此旅游地點(diǎn)還未存在!n");system("pause");Tour_2(tree); /返回游客界面 else if(p->count>=6) /報名人數(shù)多于6人時 printf("此旅游地人數(shù)已滿,按'y'選擇其他旅游地,其他鍵退出!n&q
42、uot;); scanf("%c",&c); if(c='y'|c='Y') printf("請重新輸入?yún)^(qū)號n");scanf("%d",&code);Search_T(tree,code); /繼續(xù)調(diào)用自身else Tour_2(tree); /其他鍵返回游客界面 else printf("可以報名n"); Insert_L(tree,p, p->list); Tour_2(tree); TPlace Delete_T(TPlace &t,int co
43、) TPlace p,parent,s,q; /parent指向要刪除的節(jié)點(diǎn)的雙親,p指向要刪除的節(jié)點(diǎn) p=t; parent=NULL; while(p) if(p->code=co) break; parent=p; if(p->code>co) p=p->lchild; else p=p->rchild; if(p=NULL) /不存在該樹節(jié)點(diǎn) return t; if(p->lchild=NULL) /無左子樹,右子樹可有可無 if(parent=NULL) t=p->rchild; else if(parent->lchild=p) p
44、arent->lchild=p->rchild; else parent->rchild=p->rchild; Delet_L (p->list); free(p); else /有左子樹,右子樹可有可無 q=p; s=q->lchild; / while(s->rchild) q=s; s=s->rchild; if(q=p) /其左孩子沒有右子樹 q->lchild=s->lchild; else q->rchild=s->lchild; p->code=s->code;Delet_L (s->lis
45、t); free(s); return t; void Fun1(TPlace &tree) char c; /存放Y或y int n,i; /n儲存插入地點(diǎn)個數(shù),i是中間變量 TPlace p; /定義結(jié)構(gòu)體變量P printf("請輸入插入地點(diǎn)個數(shù):n");scanf("%d",&n);printf("依次輸入各個旅游地點(diǎn)的區(qū)號和地名:n"); for( i=0;i<n;i+) p=(TPlace)malloc(sizeof(Place); /新建結(jié)店 printf("請輸入第%d個地點(diǎn):n&quo
46、t;,i+1); scanf("%d%s",&p->code,&p->area) ;/輸入?yún)^(qū)號和地名,空格鍵隔開 p->lchild =p->rchild =NULL; /樹的左右孩子為空 p->list=NULL; /指向游客的單鏈表為空 p->count =0; /初始化報名人數(shù)為0 Insert_T(tree,p); printf("輸入完成,輸入y或者Y繼續(xù)操作,其他鍵退出!");scanf("%c",&c);if(c='y'|c='Y'
47、;) Fun1(tree); /繼續(xù)調(diào)用自身輸入旅游地else system("cls");Tour_1(tree); /請屏,調(diào)用函數(shù)Tou_1,返回上一界面void Fun2(TPlace &tree,int x) int top=0; TPlace p,sMAX; p=tree; while(p|top>0) while(p) stop+=p; p=p->lchild; if(top>0) p=s-top; printf("區(qū)號:%d 地名:%s 人數(shù):%d",p->code,p->area,p->cou
48、nt); printf("n"); p=p->rchild; if(tree=NULL)printf("還未錄入旅游地!請稍后查詢!n"); printf("按任意鍵返回上一級菜單!n"); system("pause"); if(x=1)Tour_1(tree); /返回管理員界面 if(x=2) Tour_2(tree); /返回游客界面void Fun3(TPlace &tree,int x) int n1=0,n2=0; char c; int top=0; int elemMAX; TPla
49、ce p,sMAX; p=tree; while(p|top>0) while(p) stop+=p; p=p->lchild; if(top>0) p=s-top; if(p->count<3&&x=1) printf("區(qū)號:%8d地名:%8d人數(shù):%8d",p->code,p->area,p->count); printf("n"); elemn1=p->code ;n1+; if(p->count<6&&x=2) printf("區(qū)號:%8d地名:%8d人數(shù):%8d",p->code,p->area,p->count); printf("n"); ;n2+; p=p->rchild; if(x=1)printf("一共有%d各旅游景點(diǎn)人數(shù)少于三個n&q
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 26846-2024電動自行車用電動機(jī)和控制器的引出線及接插件
- GB/T 21099.4-2024企業(yè)系統(tǒng)中的設(shè)備和集成過程控制用功能塊(FB)和電子設(shè)備描述語言(EDDL)第4部分:EDD互操作
- 臍帶脫垂的健康宣教
- 【大學(xué)課件】計(jì)算機(jī)網(wǎng)絡(luò)的安全
- 【培訓(xùn)課件】貨物貿(mào)易收支管理
- 兒童地包天的健康宣教
- 色素性蕁麻疹的臨床護(hù)理
- 非免疫性胎兒水腫的健康宣教
- 泌尿系腫瘤的臨床護(hù)理
- 皮膚纖維瘤的臨床護(hù)理
- 國開(浙江)2024年秋《中國建筑史(本)》形考作業(yè)1-4答案
- 2024年海南省高考?xì)v史試卷(含答案解析)
- 大學(xué)生思想道德與法治課件
- 專題07:回憶性散文閱讀(考點(diǎn)串講)
- 浙江省數(shù)字化改革總體方案
- 光伏屋頂安全施工方案怎么寫
- 創(chuàng)業(yè)小白實(shí)操手冊 第2版 課件全套 鄧白君 第1-8章 打開創(chuàng)業(yè)思維- 寫計(jì)劃練路演
- 《新能源汽車維護(hù)與保養(yǎng)》課件-任務(wù)2 動力蓄電池系統(tǒng)檢查與維護(hù)
- 北師大版二年級數(shù)學(xué)上冊全單元測試題【附答案】
- 認(rèn)知行為療法在疼痛管理中的作用
- 學(xué)校采購課程合同范本
評論
0/150
提交評論