![校園導(dǎo)航系統(tǒng)_第1頁](http://file4.renrendoc.com/view11/M00/25/1A/wKhkGWWpwsqAKewSAAGeJvlrD9w021.jpg)
![校園導(dǎo)航系統(tǒng)_第2頁](http://file4.renrendoc.com/view11/M00/25/1A/wKhkGWWpwsqAKewSAAGeJvlrD9w0212.jpg)
![校園導(dǎo)航系統(tǒng)_第3頁](http://file4.renrendoc.com/view11/M00/25/1A/wKhkGWWpwsqAKewSAAGeJvlrD9w0213.jpg)
![校園導(dǎo)航系統(tǒng)_第4頁](http://file4.renrendoc.com/view11/M00/25/1A/wKhkGWWpwsqAKewSAAGeJvlrD9w0214.jpg)
![校園導(dǎo)航系統(tǒng)_第5頁](http://file4.renrendoc.com/view11/M00/25/1A/wKhkGWWpwsqAKewSAAGeJvlrD9w0215.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
PAGEPAGE4題號:第七題題目:校園導(dǎo)航問題1,需求分析:設(shè)計你的學(xué)校的平面圖,至少包括10個以上的景點(場所),每兩個景點間可以有不同的路,且路長也可能不同,找出從任意景點到達另一景點的最佳路徑(最短路徑)。要求:(1)以圖中頂點表示校園內(nèi)各景點,存放景點名稱、代號、簡介等信息;以邊表示路徑,存放路徑長度等有關(guān)信息。(2)為來訪客人提供圖中任意景點相關(guān)信息的查詢。(3)為來訪客人提供任意景點的問路查詢,即查詢?nèi)我鈨蓚€景點之間的一條最短路徑。(4)修改景點信息。實現(xiàn)提示:一般情況下,校園的道路是雙向通行的,可設(shè)計校園平面圖是一個無向網(wǎng)。頂點和邊均含有相關(guān)信息。選做內(nèi)容:(1)提供圖的編輯功能:增、刪景點;增、刪道路;修改已有信息等。(2)校園導(dǎo)游圖的仿真界面。2,設(shè)計:2.1設(shè)計思想:<1>,數(shù)據(jù)結(jié)構(gòu)設(shè)計:(1)圖。采用鄰接矩陣存儲,其中圖所用到的結(jié)構(gòu)體為:typedefstruct{SeqListvertices;//表示圖中的頂點intEdge[MaxVertices][MaxVertices];//表示圖中的邊intnumOfEdge;//表示圖中邊的數(shù)目}AdjMGraph;(2)景點。用順序表存儲。所用到的結(jié)構(gòu)體為:typedefstruct{ charname[20];//頂點名稱 intcode;//頂點代號 charintroduction[50];//頂點信息簡介 }DataType;(3)景點之間的連接描述,所用到的結(jié)構(gòu)體為:typedefstruct{ introw; intcol; intweight;}RowColWeight;用圖來存放所提供的所有景點,然后用線性表來存放每一個景點的信息,其中包括景點的名稱,代號,信息簡介,以及其它的一些信息。這樣就將對景點的操作,變成對圖中各頂點的操作。<2>,算法設(shè)計:關(guān)于本課題的算法,很大部分來源于這學(xué)期數(shù)據(jù)結(jié)構(gòu)課程的學(xué)習,其中包括:圖的創(chuàng)建,線性表的一些操作。對于具體的問題實現(xiàn),都有不同的算法,在下面的分析中,我將詳細說明2.2設(shè)計表示:<1>,函數(shù)調(diào)用關(guān)系及函數(shù)說明:首先,main()函數(shù)調(diào)用Creat()函數(shù),用來創(chuàng)建圖,然后調(diào)用menu()函數(shù)來選擇用戶所要進行的操作。其中menu()函數(shù)就是一個菜單供使用者來選擇他所要進行的相關(guān)操作,比如信息的查詢,最短路徑查詢之類。main()main()menu()Creat()menu()Creat()對于要求1:以圖中頂點表示校園內(nèi)各景點,存放景點名稱、代號、簡介等信息;以邊表示路徑,存放路徑長度等有關(guān)信息。圖的創(chuàng)建設(shè)計流程圖為:Creat()main()Creat()main() Creat()函數(shù)原型為:voidCreat(AdjMGraph*G,DataTypev[],RowColWeightE[],intn,inte)其中,G為所創(chuàng)建的圖結(jié)構(gòu)體對象,v[]為所有頂點的集合,它是DataType型,這個類型前面已經(jīng)介紹過;E[]存放著各頂點之間的連接關(guān)系,它是RowColWeight型,前面也介紹過;n表示頂點的個數(shù);e表示邊數(shù)。Creat()函數(shù)的功能就是實現(xiàn)圖的創(chuàng)建,將已知的景點的一些信息,轉(zhuǎn)換成圖的信息,并進行存儲。menu()對于要求2:為來訪客人提供圖中任意景點相關(guān)信息的查詢。流程圖為:menu()Information()Information1()Information()Information1() menu()函數(shù)的原型為:2,找到它們的相對位置;3,if(刪除道路),將連接它們的邊置為MaxWeight;if(增加道路),將輸入的邊值賦給相應(yīng)的鄰接矩陣表;3,調(diào)試分析:<1>,調(diào)試過程中遇到的問題與解決方案:1,關(guān)于最短路徑的輸出問題。在進行最短路徑輸出時,我剛開始時只能正序輸出,具體的描述為:比如,我要查尋從東區(qū)到東湖的最短路徑,那么它能正確輸出結(jié)果,他的形式為:東區(qū)——>主樓——>西體育館——>隧道——>北大門——>東湖。但是,當我逆向輸出時,得到的結(jié)果卻有點問題,經(jīng)過分析調(diào)試后,找到了錯誤的所在。在找最短路徑的時候我用的是Floyd算法,在這個算法中有三重循環(huán),形式均為:for(k=0;k<n;k++),它們都是從零開始的,所以在順序輸出時沒問題,但是逆序的時候就需要進行一個判斷,正序與逆序循環(huán)輸出是相反的。2,關(guān)于新增加景點后再找最短路徑問題。比如我再新增一個景點,如北區(qū)食堂,并輸入相關(guān)信息,然后插入到線性表尾,當我再找從東區(qū)到東湖的最短距離時,輸出的最短路徑將變?yōu)椋簴|區(qū)——>食堂——>東湖。經(jīng)過分析調(diào)試后,其原因也是出在Floyd算法那,在Floyd算法中,有這么一個判斷 if(weight[i][j]>weight[i][k]+weight[k][j]),由于我在輸入新景點信息時并沒有建立它與其它景點之間的連接信息,所以在圖中,該新景點與其它景點之間的邊得連接信息是空的,也就是說在鄰接矩陣中,它的邊得信息是空的,那么在進行if(weight[i][j]>weight[i][k]+weight[k][j])判斷時weight[新增景點序號][其它景點序號]的值將是一個很大的負數(shù),所以最短路徑將會出錯。解決這個問題的方法就是在增加新景點時就將它與其它景點之間的邊(距離)設(shè)置為MaxWeight,這時如果再用Floyd函數(shù)進行最短路徑的求解時就不會再出現(xiàn)問題了。另外,在做這個題時也還出現(xiàn)過一些其他的小問題,不過都比較容易解決,這里我就不再列出了……<2>,算法的時空復(fù)雜度分析對應(yīng)題目的要求,我總共提供了八個選項操作對于每一個操作的分析如下:1,相關(guān)信息的查詢。在這個操作中允許使用者輸入一個景點名稱,然后再根據(jù)景點名稱來或取其相關(guān)的信息,這個操作要掃描線性表,其時間復(fù)雜度為o(n),空間復(fù)雜度為o(n);2,最短路徑查詢。實現(xiàn)這個功能用到了Floyd算法,他用到了一個三重的for()循環(huán),故其時間復(fù)雜度為o(n^3),空間復(fù)雜度為o(1);3,修改景點信息。要修改信息,必須首先找到景點所在的存儲位置,那么就需要掃描線性表,其時間復(fù)雜度為o(n),空間復(fù)雜度為o(1);4,增加景點。增加景點信息時,直接將此景點結(jié)構(gòu)體信息插入到線性表表尾,而不需要進行遍歷,其時間復(fù)雜度與空間復(fù)雜度均為o(1);5,刪除景點。刪除景點時必須找到所要刪除景點所在的位置,這樣就必須遍歷線性表,除此之外,刪除后線性表還要進行移動操作,其時間復(fù)雜度為o(n),空間復(fù)雜度為o(n1);6,增加道路。增加道路也要掃描線性表,找到要增加路的兩景點的存儲位置,然后再根據(jù)找到的存儲位置去改變鄰接矩陣的邊的值,改變鄰接矩陣的時間復(fù)雜度為o(1),其總時間消耗在線性表的掃描上,故最終其時間復(fù)雜度為o(n),空間復(fù)雜度為o(1);7,刪除道路。刪除道路和增加道路類似,都是先找到存儲位置,然后再改變鄰接矩陣,它的時空復(fù)雜度分別為o(n),o(1); 8,瀏覽所有景點。瀏覽所有景點的實質(zhì)就是從頭到尾遍歷線性表,然后輸出遍歷到的節(jié)點的信息,其時間復(fù)雜度為o(n),空間復(fù)雜度為o(1)。 4,用戶手冊:使用說明:當用戶將程序經(jīng)過編譯,連接后,點擊運行,在DOS環(huán)境里面將看到一個選項菜單,菜單里面提供了8種操作,同時輸出了一行提示信息:請選擇您想進行的操作。然后用戶可以輸入一個1——8之間的數(shù)字進行選擇性的操作,例如,您想進行信息的查詢操作,您可以從鍵盤輸入數(shù)字‘1’;當然,一般而言先應(yīng)該進行“瀏覽所有景點名稱”操作。如果您選擇了瀏覽所有景點名稱操作,在屏幕上將會顯示出10個景點的名稱,這些景點是事先加進去的,用戶可以對這些景點進行任何程序所提供的操作。下面,我將詳細介紹本程序的使用方法:在瀏覽景點后,菜單將會繼續(xù)顯示出來,為您提供操作選擇。如果您想進行“相關(guān)信息的查詢”操作,輸入數(shù)字‘1’,然后程序?qū)嵝涯斎氩樵兙包c的名稱,在您輸入景點名稱后回車即可。如果您想進行“最短路徑查詢”操作,首先輸入數(shù)字‘2’,然后程序?qū)嵝涯斎氩樵兊木包c的名稱,您輸入按要求輸入所提供的兩個景點名稱即可,要注意的是景點名稱間以空格隔開,最后程序就會告訴您最短的路徑,以及最短路的長度。如果您想修改景點的信息,同樣先輸入數(shù)字‘3’,然后程序就會提醒您輸入所要修改景點的名稱,您可以根據(jù)要求輸入一個景點的名稱,然后回車,之后屏幕上就會顯示您所輸入的景點的所有信息,同時會有三個修改選項供用戶選擇,然后您可以輸入1——3之間的一個數(shù)字進行選擇性的修改。比如,您可以輸入‘1’對景點名稱進行修改,修改完后又會返回到菜單項繼續(xù)選擇。如果您想進行“增加景點”操作,可以輸入數(shù)字‘4’,然后程序就會提示您輸入新增加的景點的名稱,代號,信息簡介,各種輸入之間以空格隔開。當輸入完畢后回車,景點也就成功加入了,然后用戶可以再次選擇第八項操作瀏覽所有景點名稱,檢測新輸入的景點是否已經(jīng)成功添加。如果您想進行“刪除景點”操作,可以輸入數(shù)字‘5’,回車后系統(tǒng)將會提示您輸入要刪除的景點的名稱,您可以輸入您想要刪除的景點的名稱,然后回車,這樣刪除景點的操作就已經(jīng)完成,您同樣可以選擇第八項操作,檢測是否成功刪除了景點。如果您想進行“增加道路”操作,您可以輸入數(shù)字‘6’,然后回車,系統(tǒng)將會提示您輸入增加道路所連接的兩個景點的名稱,輸入兩景點名稱后回車,然后系統(tǒng)又會提示輸入增加道路的長度,輸入后回車,這時增加道路操作也就完了。用戶如果想要檢查道路是否增加成功可以進行“最短路徑查詢”操作。如果您想進行“刪除道路”操作,您可以輸入數(shù)字‘7’,然后系統(tǒng)就會提示您輸入刪除道路所連接的兩景點的名稱,輸入名稱后回車即可,當然,如果您想檢測刪除是否成功您可以選擇“最短路徑查詢”操作。備注:經(jīng)過測試,本程序的所有操作都能正常執(zhí)行,您可以選擇性的對他進行操作,同時也可以混合著操作,混合操作是檢測錯誤的最好的一個方法。5,測試數(shù)據(jù)及測試結(jié)果:菜單顯示為:****************菜單**********************1,相關(guān)信息查詢2,最短路徑查詢3,修改景點信息4,增加景點5,刪除景點6,增加道路7,刪除道路8,瀏覽所有景點名稱*******************************************請選擇您想進行的操作:8東區(qū)博物館主樓圖書館西體育館隧道北綜北體育館北大門東湖請選擇您想進行的操作:1請輸入您所想要查詢的景點的名稱:博物館您輸入的景點的名稱是:博物館您輸入的景點的代碼為:11您輸入的景點的相關(guān)信息有:有各種化石請選擇您想進行的操作:2請輸入你要查詢的兩景點的名稱:東區(qū)東湖最短路徑為:108從東區(qū)點到東湖景點的最短路徑為:東區(qū)——>主樓——>西體育館——>隧道——>北大門——>東湖請選擇您想進行的操作:3您想修改的景點的名稱為:隧道您輸入的景點的名稱是:隧道您輸入的景點的代碼為:15您輸入的景點的相關(guān)信息有:自主修建您想修改什么信息?1,名稱;2,代號;3,信息簡介:1請輸入要修改的的景點的新名稱:地大隧道請選擇您想進行的操作:8東區(qū)博物館主樓圖書館西體育館地大隧道北綜北體育館北大門東湖請選擇您想進行的操作:4請輸入增加節(jié)點的名稱,代號,信息簡介:北一樓34教師辦公室請選擇您想進行的操作:1請輸入您所想要查詢的景點的名稱:北一樓您輸入的景點的名稱是:北一樓您輸入的景點的代碼為:34您輸入的景點的相關(guān)信息有:教師辦公室 請選擇您想進行的操作:5請輸入您要刪除景點的名稱:北一樓請選擇您想進行的操作:8東區(qū)博物館主樓圖書館西體育館地大隧道北綜北體育館北大門東湖請選擇您想進行的操作:6輸入您要增加的道路鏈接的兩個景點名稱:東區(qū)北綜輸入您要增加的道路的長度:50請選擇您想進行的操作:2請輸入你要查詢的兩景點的名稱:東區(qū)北綜最短路徑為:50從東區(qū)點到北綜景點的最短路徑為:東區(qū)——>北綜請選擇您想進行的操作:7輸入您要刪除的道路鏈接的兩個景點名稱:東區(qū)北綜請選擇您想進行的操作:2請輸入你要查詢的兩景點的名稱:東區(qū)北綜最短路徑為:103從東區(qū)點到北綜景點的最短路徑為:東區(qū)——>主樓——>西體育館——>地大隧道——>北大門——>北綜 6,源程序清單:school.cpp//程序源文件AdjMGraph.h//圖的相關(guān)操作頭文件AdjMGraphCreat.h//創(chuàng)建圖的頭文件SeqList.h//線性表操作頭文件Floyd.h//Floyd算法頭文件Operation.h//自己所定義的一些操作的頭文件Inquiry.h//查詢信息包含的頭文件//詳細school.cpp程序源文件#include<stdio.h>#include<string.h>#include<malloc.h>#defineMaxSize20//線性表的最大數(shù)組空間#defineMaxVertices20//景點個數(shù)所允許的最大值#defineMaxWeight1000//無窮邊權(quán)值#include"Floyd.h"#include"AdjMGraphCreat.h"#include"Inquiry.h"AdjMGraphG;#include"Operation.h"voidmain(){//初始景點信息 DataTypea[]={{"東區(qū)",10,"研究生院"},{"博物館",11,"有各種化石"},{"主樓",12,"學(xué)校的標志建筑"},{"圖書館",13,"藏書50萬冊"},{"西體育館",14,"主要供西區(qū)學(xué)生使用"},{"隧道",15,"自主修建"},{"北綜",16,"北區(qū)標志樓"},{"北體育館",17,"主要供北區(qū)學(xué)生使用"},{"北大門",18,"外出通道"},{"東湖",19,"武漢最美的湖"}};//鄰接矩陣的表示 RowColWeightrcw[]={{0,1,20},{0,2,30},{0,3,35},{1,0,20},{1,3,20},{2,0,30},{2,3,15},{2,4,30},{3,0,35},{3,1,20},{3,2,15},{3,4,30},{4,2,30},{4,3,30},{4,5,10},{5,4,10},{5,6,35},{5,8,8},{6,5,35},{6,7,20},{6,8,25},{6,9,5},{7,6,20},{7,8,10},{8,5,8},{8,6,25},{8,7,10},{9,6,5}; intn=10,e=28;//景點數(shù)與邊數(shù)Creat(&G,a,rcw,n,e);//構(gòu)造圖menu();} //詳細Floyd.h頭文件voidFloyd(intcost[][MaxVertices],intn,intweight[][MaxVertices],intpath[][MaxVertices]){ //初始化 inti,j,k; for(i=0;i<n;i++) { for(j=0;j<n;j++) { weight[i][j]=cost[i][j]; path[i][j]=-1; } } //n次遞推 for(k=0;k<n;k++) { for(i=0;i<n;i++) { for(j=0;j<n;j++) { if(weight[i][j]>weight[i][k]+weight[k][j]) { weight[i][j]=weight[i][k]+weight[k][j]; path[i][j]=k; } } } }}//詳細Inquiry.h頭文件voidInformation(AdjMGraphG,charscenery[]){ inti; for(i=0;i<G.vertices.size;i++) { if(strcmp(G.vertices.list[i].name,scenery)==0) { printf("您輸入的景點的名稱是:%s\n",G.vertices.list[i].name); printf("您輸入的景點的代碼為:%d\n",G.vertices.list[i].code); printf("您輸入的景點的相關(guān)信息有:%s\n\n",G.vertices.list[i].introduction); break; } } if(i==G.vertices.size) { printf("您所查詢的景點不在我們所提供的范圍內(nèi)!\n\n"); }}voidPath(AdjMGraphG,charsceneryname[],charsceneryname1[]){ inti,j,k,n,m,count=0; n=G.vertices.size; intweight[MaxVertices][MaxVertices],path[MaxVertices][MaxVertices]; intvalue[MaxVertices]; for(i=0;i<G.vertices.size;i++) { if(strcmp(G.vertices.list[i].name,sceneryname)==0) { j=i; } if(strcmp(G.vertices.list[i].name,sceneryname1)==0) { k=i; } } Floyd(G.Edge,n,weight,path); m=path[j][k]; printf("最短路徑為:%d\n",weight[j][k]); if(m==-1) { printf("從%s點到%s景點的最短路徑為:\n",sceneryname,sceneryname1); printf("%s——>%s\n",sceneryname,sceneryname1); } else { while(m!=-1) { value[count]=m; if(j<k) k=m; elsej=m; m=path[j][k]; count++; } printf("從%s點到%s景點的最短路徑為:\n",sceneryname,sceneryname1); printf("%s——>",sceneryname); if(j<k) { for(i=count-1;i>=0;i--) { printf("%s——>",G.vertices.list[value[i]].name); } printf("%s\n",sceneryname1); } else { for(i=0;i<count;i++) { printf("%s——>",G.vertices.list[value[i]].name); } printf("%s\n",sceneryname1); } } }//詳細Operation.h頭文件voidmenu();//查詢景點信息的函數(shù)voidInformation1(){ charsceneryname[20]; printf("請輸入您所想要查詢的景點的名稱:"); scanf("%s",sceneryname); Information(G,sceneryname); menu();}//查詢最短路徑的函數(shù)voidPath1(){ charsceneryname[20],sceneryname1[20]; printf("請輸入你要查詢的兩景點的名稱:"); scanf("%s%s",sceneryname,sceneryname1);Path(G,sceneryname,sceneryname1); menu(); printf("\n");}//修改景點信息的函數(shù)voidModify(){ charsceneryname[20]; inti,x; printf("您想修改的景點的名稱為:"); scanf("%s",sceneryname); Information(G,sceneryname); for(i=0;i<G.vertices.size;i++) { if(strcmp(G.vertices.list[i].name,sceneryname)==0) { printf("您想修改什么信息?1,名稱;2,代號;3,信息簡介:"); scanf("%d",&x); if(x==1) { printf("請輸入要修改的的景點的新名稱:"); scanf("%s",G.vertices.list[i].name); break; } if(x==2) { printf("請輸入要修改的的景點的新代號:"); scanf("%d",&(G.vertices.list[i].code)); break; } if(x==3) { printf("請輸入要修改的的景點的新信息簡介:"); scanf("%s",G.vertices.list[i].introduction); break; } } } menu();}//增加景點的函數(shù)voidAddVertic(){ inti,k; DataTypever;printf("請輸入增加節(jié)點的名稱,代號,信息簡介:\n"); scanf("%s%d%s",,&(ver.code),roduction); ListInsert(&(G.vertices),G.vertices.size,ver); k=G.vertices.size-1; for(i=0;i<G.vertices.size;i++) { if(k!=i) { G.Edge[k][i]=MaxWeight; G.Edge[i][k]=MaxWeight; } elseG.Edge[k][i]=0; } menu();}voidDeleteVertic(){ DataTypex; charname[20]; inti,k; printf("請輸入您要刪除景點的名稱:");scanf("%s",name);for(i=0;i<G.vertices.size;i++) { if(strcmp(G.vertices.list[i].name,name)==0) { k=i; } } ListDelete(&(G.vertices),k,&x); for(i=0;i<G.vertices.size;i++) { if(k!=i) { G.Edge[k][i]=MaxWeight; G.Edge[i][k]=MaxWeight; } elseG.Edge[k][i]=0; } menu();}//刪除景點的函數(shù)voidAddRoad(){ charname[20],name1[20]; intlength,i,j,k;printf("輸入您要增加的道路鏈接的兩個景點名稱:");scanf("%s%s",name,name1); printf("輸入您要增加的道路的長度:"); scanf("%d",&length); for(i=0;i<G.vertices.size;i++) { if(strcmp(G.vertices.list[i].name,name)==0) { j=i; } if(strcmp(G.vertices.list[i].name,name1)==0) { k=i; } }InsertEdge(&G,j,k,length);InsertEdge(&G,k,j,length); menu();}voidDeleteRoad(){ charname[20],name1[20]; inti,j,k;printf("輸入您要刪除的道路鏈接的兩個景點名稱:");scanf("%s%s",name,name1); for(i=0;i<G.vertices.size;i++) { if(
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030全球核電用鋼管行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國鋼制垂直推拉門行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025-2030全球微孔織物行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球半導(dǎo)體電鍍前處理劑行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球熱水箱行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國手機支付安全行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國超高壓HPP滅菌設(shè)備行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 液氨運輸合同模板
- 2025員工入股合同(美容美發(fā))
- 外墻保溫勞務(wù)分包合同
- Unit6AtthesnackbarStorytimeDiningwithdragons(課件)譯林版英語四年級上冊
- 2023年四川省公務(wù)員錄用考試《行測》真題卷及答案解析
- 機電一體化系統(tǒng)設(shè)計-第5章-特性分析
- 2025年高考物理復(fù)習壓軸題:電磁感應(yīng)綜合問題(原卷版)
- 雨棚鋼結(jié)構(gòu)施工組織設(shè)計正式版
- 醫(yī)院重點監(jiān)控藥品管理制度
- 2024尼爾森IQ中國本土快消企業(yè)調(diào)研報告
- 2024年印度辣椒行業(yè)狀況及未來發(fā)展趨勢報告
- 骨科醫(yī)院感染控制操作流程
- 鑄鋁焊接工藝
- 《社區(qū)康復(fù)》課件-第六章 骨關(guān)節(jié)疾病、損傷患者的社區(qū)康復(fù)實踐
評論
0/150
提交評論