資源描述:
《校園導(dǎo)游系統(tǒng)實(shí)訓(xùn)報(bào)告.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、導(dǎo)游咨詢系統(tǒng)1需求分析編制一個(gè)為來訪客人進(jìn)行最短路徑導(dǎo)游的程序(1)從學(xué)校的平面圖上選取n個(gè)有代表性的景點(diǎn),根據(jù)用戶指定的起點(diǎn)和終點(diǎn)輸出相應(yīng)路徑,或根據(jù)用戶指定的景點(diǎn)輸出景點(diǎn)的信息。(2).為來訪客人提供圖中任意景點(diǎn)相關(guān)信息的查詢。(3).為來訪客人提供圖中任意景點(diǎn)的問路查詢,即查詢?nèi)我鈨蓚€(gè)景點(diǎn)之間的一條最短的簡單路徑。2、設(shè)計(jì)思路?校園旅游模型是由景點(diǎn)和景點(diǎn)之間的路徑組成的,所以這完全可以用數(shù)據(jù)結(jié)構(gòu)中的圖來模擬。用圖的結(jié)點(diǎn)代表景點(diǎn),用圖的邊代表景點(diǎn)之間的路徑。所以首先應(yīng)設(shè)計(jì)一個(gè)圖類。(草稿紙)結(jié)點(diǎn)值代表景點(diǎn)信息,邊的權(quán)值代表景點(diǎn)間的距離。結(jié)
2、點(diǎn)值及邊的權(quán)值用順序表存儲(chǔ),所以需要設(shè)計(jì)一個(gè)順序表類。本系統(tǒng)需要查詢景點(diǎn)信息和求一個(gè)景點(diǎn)到另一個(gè)景點(diǎn)的最短路徑長度及路線,為方便操作,所以給每個(gè)景點(diǎn)一個(gè)代碼,用結(jié)構(gòu)體類型實(shí)現(xiàn)。計(jì)算路徑長度和最短路線時(shí)可用弗洛伊德(Floyd)算法實(shí)現(xiàn)。最后用switch選擇語句選擇執(zhí)行瀏覽景點(diǎn)信息或查詢最短路徑。3?算法設(shè)計(jì)一、?概要設(shè)計(jì)?程序中包含的模塊(1)主程序模塊主函數(shù):void?main()??(2)查詢模塊景點(diǎn)信息查詢:voidCreateUDN()(3)打印模塊打印兩個(gè)景點(diǎn)的路徑及最短距離:void?display()?模塊間的調(diào)用關(guān)系主函數(shù)m
3、ain()調(diào)用:voidCreateUDN()?voidShortestPath()/*要查找的兩景點(diǎn)的最短距離*/?voidNextValue()voidHaMiTonian()void?display()?/*?打印兩個(gè)景點(diǎn)的路徑及最短距離*/?3.2?詳細(xì)設(shè)計(jì)界面菜單設(shè)計(jì):charMenu(){charc;intflag;do{flag=1;system("cls");narrate();printf("ttt-------1、查詢景點(diǎn)路徑-------");printf("ttt-------2、查詢景點(diǎn)信息-----
4、--");printf("ttt-------3、推薦參觀路線-------");printf("ttt-------e、退出-----------");printf("tttt請(qǐng)輸入您的選擇:");scanf("%c",&c);if(c=='1'
5、
6、c=='2'
7、
8、c=='3'
9、
10、c=='e')flag=0;}while(flag);returnc;}charSearchMenu(){charc;intflag;do{flag=1;system("cls");narrate();printf("ttt-
11、----1、按照景點(diǎn)編號(hào)查詢-----n");printf("ttt-----2、按照景點(diǎn)名稱查詢-----n");printf("ttt-----e、返回-----------n");printf("tttt請(qǐng)輸入您的選擇:");scanf("%c",&c);if(c=='1'
12、
13、c=='2'
14、
15、c=='e')flag=0;}while(flag);returnc;}voidsearch(){intnum;inti;charc;charname[20];do{system("cls");c=SearchMenu();sw
16、itch(c){case'1':system("cls");narrate();printf("tt請(qǐng)輸入您要查找的景點(diǎn)編號(hào):");scanf("%d",&num);for(i=0;i17、){printf("ttt沒有找到!");printf("ttt按任意鍵返回...");getchar();getchar();}break;case'2':narrate();system("cls");printf("tt請(qǐng)輸入您要查找的景點(diǎn)名稱:");scanf("%s",name);for(i=0;i18、n",G.vex[i].description);printf("ttt按任意鍵返回...");getchar();getchar();break;}}i