九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來到裝配圖網! | 幫助中心 裝配圖網zhuangpeitu.com!
裝配圖網
ImageVerifierCode 換一換
首頁 裝配圖網 > 資源分類 > DOC文檔下載  

C數據結構 大作業(yè)課程設計

  • 資源ID:113981538       資源大?。?span id="24d9guoke414" class="font-tahoma">879KB        全文頁數:131頁
  • 資源格式: DOC        下載積分:40積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要40積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預覽文檔經過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標題沒有明確說明有答案則都視為沒有答案,請知曉。

C數據結構 大作業(yè)課程設計

C+/數據結構 大作業(yè)/課程設計【校園導游咨詢】【停車場管理】娃娃們可以收著以后用 絕對純手工打造 內含類模塊/一維指針數組(謹以此程序供大家參考。運行結果后面有貼圖)目錄【1】校園導游咨詢 程序設計源代碼 及 截圖【2】停車場管理方案一 程序設計源代碼 及 截圖【3】停車場管理方案二 程序設計源代碼 及 截圖#【1】【校園導游咨詢】#(ps:該校園導游咨詢系統(tǒng)沒有輸入值,所有信息是都在class MGraph的構造函數中傳輸的,且校園景點信息皆為【上海電力學院】景點信息。請大家注意,直接從文章copy到visual stutio中會出現中文字符,注意刪除,推薦大家在一行語句的分號后面,點出光標,按一下delete鍵,然后按一下enter鍵,完成visual stutio的自動對齊,這樣程序看起來一目了然,更易于操作和更改)【問題描述】設計一個校園導游程序,為來訪的客人提供各種信息查詢服務?!净疽蟆?1)設計你所在學校的校園平面圖,所含景點不少于10個。以圖中頂點表示校內各景點,存放景點名稱、代號、簡介等信息;以邊表示路徑,存放路徑長度等相關信息。(2)為來訪客人提供圖中任意景點相關信息的查詢。(3)為來訪客人提供圖中任意景點的問路查詢,即查詢任意兩個景點之間的一個最短的簡單路徑?!具x作內容】(6)擴充每個景點的鄰接景點的方向等信息,使得路徑查詢結果能提供詳盡的導向信息。*【以下為類的定義】*#include<iostream>#include<iomanip>using namespace std;const int MaxSize=18;const int INFINITY=65535;/最大值無窮class direction;template <class T> class MGraph;template <class T>class VertexNode/定義頭結點friend class MGraph<T> public:int vex;/頂點名稱T vexname;/頂點名稱T vexinf;/頂點信息direction dir;/存放頂點方位信息的direction類的dir。;class directionpublic:int ln;/存放在方向圖中的橫坐標,表示東西int col;/存放在方向圖中的縱坐標,表示南北;template <class T>class MGraph/定義無向圖的鄰接矩陣public:MGraph(); /構造函數,初始化具有n個頂點的圖void printvexname();/顯示所有景點及景點代號void printvexinf(int i);/顯示代號為i景點的名稱及信息void printroad(int i,int j);/顯示景點ij的最短路徑方案信息void printdir(int i,int j);/顯示景點i到j的方向信息,如“向東100m,向南200m”VertexNode<T> adjlistMaxSize; /存放景點全部信息的 景點類數組int vertexNum,arcNum; /圖的頂點數和邊數void Root(int p,int q);/遞歸尋找pq間的最短路徑int PathMaxSizeMaxSize,DistMaxSizeMaxSize;/創(chuàng)建Path和Dist分別存放兩點間最短路徑的前驅節(jié)點,兩點間最短路徑長度int LineMaxSize;/Line存放路徑int kkk;/Line數組的標記private:T vertexMaxSize; /存放圖中頂點的數組int arcMaxSizeMaxSize;/存放圖中邊的數組;*【以下為類的實現 即類函數的定義】*template <class T>MGraph<T>:MGraph()/a為景點代號,b為景點名稱,c為景點信息,d為景點方位信息的橫坐標,e為景點方位信息的縱坐標/s為存放景點鄰接矩陣信息的一維數組,根據其對稱性可以用公式賦值給二維數組arcint s=0,1,0,0,2,0,0,0,2,0,0,0,2,3,0,0,0,0,4,2,0,0,0,0,0,2,3,0,0,0,0,0,2,3,1,0,0,0,2,0,2,0,0,2,0,4,0,2,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,0,0,2,0;int a=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17;char* b="南門","實驗樓","南圖","大活","睿思樓","大禮堂","南4教","知行樓","國交樓","南3教","南2教","南1教","北圖","北3教","北4教","北2教","北1教","北門"char* c="南校區(qū)正門","物理實驗樓","南校區(qū)圖書館","大學生活動中心","教師辦公樓、醫(yī)務室及留學生公寓","大禮堂,用于舉辦各種文藝演出","南校區(qū)第4教學樓","實習基地,計算機房等","國際交流中心,教職工餐廳","南校區(qū)第3教學樓","南校區(qū)第2教學樓","南校區(qū)第1教學樓","北校區(qū)圖書館","北校區(qū)第3教學樓","北校區(qū)第4教學樓","北校區(qū)第2教學樓","北校區(qū)第1教學樓","北校區(qū)正門"int d=8,6,4,4,1,0,0,1,3,4,6,8,4,3,2,3,5,8;int e=8,8,8,10,8,10,7,6,6,6,6,6,3,1,0,0,0,2;int i,j;vertexNum=18;arcNum=30; for(i=0;i<vertexNum;i+)adjlisti.vex=ai;adjlisti.vexname=bi;adjlisti.vexinf=ci;adjlisti.dir.ln=di;adjlisti.dir.col=ei;for (i=0; i<vertexNum; i+)/初始化鄰接矩陣for (j=0; j<vertexNum; j+)arcij=arcji=s(i*(i+1)/2+j; /根據s的對稱性,將一維數組中的數據賦給二維數組arc template<class T>void MGraph<T>:printvexname()int i;for(i=0;i<vertexNum;i+)cout<<adjlisti.vex<<" "<<adjlisti.vexname<<endl;template<class T>void MGraph<T>:printvexinf(int i)cout<<i<<" "<<adjlisti.vexname<<":"<<adjlisti.vexinf<<endl;template<class T>void MGraph<T>:printdir(int i,int j)int dx,nb;/臨時存放i與j之間的南北東西關系 j在i的哪邊?dx=adjlistj.dir.col-adjlisti.dir.col;nb=adjlistj.dir.ln-adjlisti.dir.ln;if(dx>0)/即j在i的東邊cout<<"向東"<<dx*100<<"m,"elsecout<<"向西"<<dx*(0-100)<<"m,"if(nb>0)/即j在i的南邊cout<<"向南"<<nb*100<<"m"elsecout<<"向北"<<nb*(0-100)<<"m"template<class T>void MGraph<T>:Root(int p,int q) if (Pathpq>0) Root(p,Pathpq); Root(Pathpq,q); else Linekkk=q; kkk+; template<class T>void MGraph<T>:printroad(int i,int j)int p,q,m,k,item1,item2;for(p=0;p<vertexNum;p+)for(q=0;q<vertexNum;q+)Distpq=arcpq;/鄰接矩陣賦值for(k=0;k<vertexNum;k+) for(p=0;p<vertexNum;p+)if (Distpk>0) for(q=0;q<vertexNum;q+) if (Distkq>0) if (Distpq>Distpk+Distkq)|(Distpq=0)&&(p!=q) Distpq=Distpk+Distkq; Pathpq=k; cout<<"n=n"cout<<"從"<<adjlisti.vexname<<"到"<<adjlistj.vexname<<"的最短路徑為:"<<endl;cout<<adjlisti.vexname;kkk=2;Root(i,j);item2=Line2;cout<<"->"printdir(i,item2);cout<<"->"<<adjlistitem2.vexname;for(m=3;m<=kkk-1;m+)item1=Linem;cout<<"->"printdir(item1-1,item1);cout<<"->"<<adjlistitem1.vexname;cout<<endl;cout<<"n=n"*【以下為主函數】*int funcchoice()/系統(tǒng)功能選擇頁面int choice;cout<<"="<<endl;cout<<" 歡迎進入校園導游咨詢平臺"<<endl;cout<<" 1-顯示校園所有景點信息"<<endl;cout<<" 2-查詢校園景點信息"<<endl;cout<<" 3-問路查詢系統(tǒng)"<<endl;cout<<" 4-退出導游資訊平臺"<<endl;cout<<"="<<endl;cout<<"請輸入要選擇的功能號:"cin>>choice;return choice;void main()MGraph<char*> mg;int funcchoice();int fc;while(1)fc=funcchoice();if(fc=1)int i;for(i=0;i<mg.vertexNum;i+)mg.printvexinf(i);else if(fc=2)int i;mg.printvexname();cout<<endl<<"請輸入所要查詢景點代號:"cin>>i;mg.printvexinf(i);else if(fc=3)int i,j;mg.printvexname();cout<<"請輸入兩景點代號(我們將把最短路線反饋予您):"cin>>i>>j;mg.printroad(i,j);else if(fc=4)break;elsecout<<"輸入有誤,請重新輸入!"<<endl;運行測試圖#【2】【停車場管理系統(tǒng)【方案一 程序】#(ps:該程序有漏洞,若將要離開的車輛是停于便道上的,則對該車進行駛離操作時程序內部有錯誤數據,雖然做了函數完成這一功能,但因時間有限,沒能及時查找更正,現在懶得改了。大家將就看吧。不過運行是可以的)【問題描述】設停車場是一個可停放n輛汽車的 長通道,且只有一個大門可供汽車進出。汽車在停車場內按車輛到達時間的先后順序,依次由北向南排列(大門在最南端,最先到達的第一輛車信放在車場的最北端),若車場內已停滿n輛汽車,則后來的汽車只能在門外的便道上等候,一旦有車開走,則排在便道上的第一輛車即可開入;當停車場內某輛車要離開時,在它之后進入的車輛必須先退出車場為它讓路,待該輛車開出大門外,其他車輛再按原次序進入車場院,每輛停放在車場的車在它離開停車場時必須按它停留的時間長短交納費用。試為停車場編制按上述要求進行管理的模擬程序?!净疽蟆恳詶DM停車場,以隊列模擬車場外的便道,按照從終端讀入的輸入數據序列進行模擬管理。每一組輸入數據包括三個數據項:汽車“到達”或“離去”信息、汽車牌照號碼以及到達或離去的時刻。對每一組輸入數據進行操作后的輸出信息為:若是車輛到達,則輸出汽車在停車場內或便道上的停車位置;若是車輛離去,則輸出汽車在停車場內停留的時間和應交納的費用(在便道上停留的時間不收費)。棧以順序結構實現,隊列以鏈表結構實現?!緶y試數據】設n=2,輸入數據為:(A,1,5),(A,2,15),(A,3,20),(A,4,25),(A,5,30),(D,2,35),(D,4,40),(E,0,0)。其中:A表示到達(Arrival);D表示離去(Departure);E表示輸入結束(End)。*【以下為類的定義】*#include<iostream>using namespace std;const int Max=2;/車庫最大容量const double price=30;/每小時的費用/思想:(報告第四頁)/我的系統(tǒng)界面,輸入信息為:(到達/離開/退出);車牌號;時刻/因此,我的停車場類分成車輛到達和車輛離開兩個主要的函數實現。/車輛到達,有入棧和入隊。車輛離開有出棧,出隊和入棧操作。/因此我又編寫入棧的類,隊的類。與parkingmanagement進行友元。/*類定義*class car/車的信息類public:double time;/計費時間int number;/車牌號car *next;/存放car類型元素的數組初始地址;class carstack/棧(停車場)的類friend class parkingmanagement;/parkingmanagement能訪問carstack類中所有成員public:carstack();/構造函數,棧的初始化int empty();/判斷棧是否為空int full();/判斷棧是否為滿car *s;/存放car類型棧元素的數組初始地址int top;/棧頂指針;class carqueue/隊列(便道)的類friend class parkingmanagement;/parkingmanagement能訪問carstack類中所有成員public:carqueue();/構造函數,隊列的初始化int full();/判斷隊列是否為滿car *front,*rear;/存放car類型隊列元素的數組初始地址;class parkingmanagementpublic:int pushstack(carstack &cs,int cnum,double ctime);/入棧,cs棧內進行調整,返回棧內位置void popstack(carstack &cs,int cnum);/出棧,cs棧內進行調整,/根據車牌號把車彈出棧,將出棧car的number賦值給int popstacknumber()/將出棧car的time賦值給double popstacktime(),無返回值!int pushqueue(carqueue &cq,int cnum,double ctime);/入隊,隊內進行調整,返回隊內位置int popqueue(carqueue &cq);/出隊,隊內進行調整,返回汽車車牌號void arrival(carstack &cs,carqueue &cq,int cnum,double ctime);/車輛到達,/根據輸入的車牌號、到達時間,變更函數參數;并cout車位信息void leave(carstack &cs,carqueue &cq,int cnum,double ctime);/車輛離開,/根據輸入的車牌號找到汽車,并進行出棧操作、出隊操作和入棧操作;/并cout停留時間和收費情況void deletequeue(carqueue &cq,int i);/刪除cq過道中第i輛車int popstacknumber;/專門存放出棧的時候返回的車牌號double popstacktime;/專門存放出棧的時候返回的時刻;*【以下為類的實現】*carstack:carstack()/構造函數,棧的初始化top=-1;s=new carMax;/創(chuàng)建car類型棧元素的數組if(s=NULL)cout<<"棧空間分配不成功!"<<endl;exit(1);int carstack:full()/判斷棧是否為滿return top=Max-1;carqueue:carqueue()/構造函數,隊列的初始化rear=front=NULL;int parkingmanagement:pushstack(carstack &cs,int cnum,double ctime)/入棧,cs棧內進行調整,返回棧內位置if(cs.top=Max-1)/Max從1開始,top從0開始cout<<"停車場已滿!"<<endl;return Max;else cs.top+;(cs.scs.top).number=cnum;/將cnum賦給棧頂位置的車的車牌號,s是car類型棧元素的數組(cs.scs.top).time=ctime;/將ctime賦給棧頂位置的車的入棧時間,s是car類型棧元素的數組return (cs.top+1);/返回棧內位置加1,即停車場內車位從1號開始void parkingmanagement:popstack(carstack &cs,int cnum)/出棧,cs棧內進行調整,/根據車牌號把車彈出棧,將出棧car的number賦值給int popstacknumber/將出棧car的time賦值給double popstacktime,無返回值!int i;car p;carstack stemp;/定義一個carstack類型的臨時存放出棧元素的棧for(i=0; i<=cs.top; i+)if(cs.si).number=cnum) break;/當要出棧的車的車牌號=棧內的車牌號元素時,跳出循環(huán)p=cs.si;/將要出棧的元素賦給car類型的p存放while(cs.top>i)stemp.s+(stemp.top)=cs.s(cs.top)-;/出棧的元素數組逐個賦給臨時棧popstacknumber=p.number;/將這個車牌號信息傳給int popstacknumber()popstacktime=p.time;/將該車的時間信息傳給double popstacktime()cs.top-;/棧頂指針回到原來位置while(stemp.top>=0)cs.s+(cs.top)=stemp.s(stemp.top)-;/臨時棧出棧的元素逐個賦給原棧,完成先退再進的工作int parkingmanagement:pushqueue(carqueue &cq,int cnum,double ctime)/入隊,隊內進行調整,返回隊內位置car *p,*countp;int count(1);/count用于記錄車在過道上的位置信息,因隊列為鏈式的,所以進行循環(huán)累加p=new car;/創(chuàng)建一個car類型的指針p->number=cnum;p->time=ctime;p->next=NULL;/首先將指向存放car類型元素的數組初始地址置空if (cq.front=NULL)/第一次入隊要判斷頭結點是否為空cq.front=cq.rear=p;else /尾插法插入元素p->next=(cq.rear)->next;(cq.rear)->next=p;cq.rear=(cq.rear)->next;countp=(cq.front)->next;while(countp!=NULL)count+;countp=countp->next;/count即車在過道上的位置,【從1開始計!】return count;int parkingmanagement:popqueue(carqueue &cq)/出隊,隊內進行調整,返回汽車車牌號car p;p.number=(cq.front)->next)->number;/cq隊里,從cq.front開始指向下一個元素的車牌號賦給car類型的車信息p.time=(cq.front)->next)->time;/cq隊里,從cq.front開始指向下一個元素的時刻/賦給car類型的車信息p.next=(cq.front)->next)->next;/cq隊里,從cq.front開始指向下一個元素的指針/賦給car類型的車信息的下一個元素的指針return p.number;cq.front=(cq.front)->next;void parkingmanagement:arrival(carstack &cs,carqueue &cq,int cnum,double ctime)/車輛到達,根據輸入的車牌號、到達時間,變更函數參數;并cout車位信息int pos;if(!(cs.full()/如果棧未滿,車輛停入停車場int fl(0),i;/定義一個從0開始的標記flfor(i=0;i<=cs.top;i+)if(cs.si.number=cnum)/如果到達的車的車牌號=棧內已有車輛的車牌號fl=1;/fl記1break;if(fl=1)/如果到達的車的車牌號!=棧內已有車輛的車牌號cout<<"輸入錯誤!請重新輸入!"<<endl;elsepos=pushstack(cs,cnum,ctime);/入棧,返回車位信息cout<<"該停車場還有空位,請到"<<pos<<"號車位進行泊車"<<endl;cout<<endl;else/如果棧滿,車輛暫停便道pos=pushqueue(cq,cnum,ctime);/入隊,返回車位信息cout<<"該停車場已滿,請將車停到便道"<<pos<<"號車位上"<<endl;cout<<endl;void parkingmanagement:leave(carstack &cs,carqueue &cq,int cnum,double ctime)/車輛離開,根據輸入的車牌號找到汽車,并進行出棧操作、出隊操作和入棧操作;并cout停留時間和收費情況int i,flag(0),pstack,count(1),outcarnum;double hour;car *p;for(i=0;i<=cs.top;i+)if(cs.si).number=cnum)flag=1;break;if(flag)/如果輸入的車牌號與棧內已有車輛的車牌號一致popstack(cs,cnum);/出棧操作hour=ctime-popstacktime;/時間計算outcarnum=popqueue(cq);/將便道上的第一輛車出隊,入棧。并將其車牌號賦給outcarnumpstack=pushstack(cs,outcarnum,ctime);/將便道上的第一輛車,入棧cout<<"該車在本停車場內停留時間為"<<hour<<"分鐘,應付金額"<<hour*(price/60)<<"元!"<<endl;else/如果輸入的車牌號與隊列里已有車輛的車牌號一致p=cq.front;while(p!=NULL)count+;/如果在過道中找到該車,則該車的位置為過道中的第count位置(count從1開始)p=p->next;if(p->number=cnum)/在過道中找到要出去的車,則在隊列中刪除該car。/后面的車輛依然順序排列,補足空位deletequeue(cq,count);if(count>Max)cout<<"您的車在便道上的位置為"<<count<<"號車位,請自行駛離,無需付費!"<<endl;break;if(p=NULL)cout<<"您的車不在本停車場內,或輸入有誤,請重新輸入!"<<endl;void parkingmanagement:deletequeue(carqueue &cq,int i) car *p,*q;int j(0);p=cq.front;while(p && j<i-1)p=p->next;j+;/找到第i個節(jié)點(i從1開始)if(!p | !p->next)cout<<"i不合法"elseq=p->next;p->next=q->next;delete q;*【以下是主程序】*void print()cout<<"= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ="<<endl;cout<<"= 歡迎光臨! ="<<endl;cout<<"= ="<<endl;cout<<"= 本停車場收費標準為:30元/小時;車庫容量為:2 ="<<endl;cout<<"= ="<<endl;cout<<"= 請輸入您的泊車信息:格式為:(到達/離去/退出);車牌號;現在時刻 ="<<endl;cout<<"= 其中,A:到達;D:離去;E:退出系統(tǒng) ="<<endl;cout<<"= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ="<<endl;/*調試程序*設n=2,輸入數據為:(A,1,5),(A,2,15),*/*(A,3,20),(A,4,25),(A,5,30),*/*(D,2,35),(D,4,40),(E,0,0)。*/*其中:A表示到達(Arrival);D表示離去(Departure);E表示輸入結束(End)。*void main()char acc;int carnum;double cartime;parkingmanagement park;carstack cars;carqueue carq;while(1)print();cin>>acc>>carnum>>cartime;if(acc='A')park.arrival(cars,carq,carnum,cartime);else if(acc='D')park.leave(cars,carq,carnum,cartime);else if(acc='E')break;elsecout<<"您的輸入有誤,請重新輸入!"<<endl;#【3】【停車場管理系統(tǒng)【方案二 程序】#(ps:本方案與方案一有同樣的問題,就是在對 便道上的車 進行駛離操作時,數據錯誤,同樣的理由,沒有改正。如果有細心娃娃幫忙指點改正,在此感激啦)*【以下為類定義】*#include <iostream>using namespace std;const int MaxSize=2;/停車場內最多能停2輛車template<class T> class carStack;/template <class T> /定義模板類struct Node/過道停車的隊列所需鏈式結點T carnum;/定義車牌號類型Node<T> *next; /此處<T>也可以省略;template<class T>class carinfo friend class carStack; public:T carnum; /車號 int cartime;/停車時間;template <class T>class carQueuefriend class carStack;public:carQueue(); /構造函數,初始化一個空的鏈隊列int EnQueue(T cnum); /將元素x入隊,并返回其在隊內的位置(從1開始)T DeQueue(); /將隊頭鏈式結點出隊,并返回汽車車牌號void deletequeue(int i);/將隊內低i個元素刪除,即便道上i位置的汽車駛離bool Empty(); /判斷鏈隊列是否為空Node<T> *front, *rear; ;template<class T>class carStackfriend class carinfo;public:carStack() ; /構造函數,棧的初始化,停車場容量為【size】void Pushcar(T cnum,int ctime); /有車停入停車場int Popcar(T outcnum,int outctime); /將第cnum輛車出棧,并返回其停車時間(hour)bool full();/判斷棧是否為滿?滿則返回1carinfo<T> *S;/?int top; ;*【以下為類的實現】*template <class T>/初始化隊列carQueue<T>:carQueue()front=rear=NULL;template <class T>int carQueue<T>:EnQueue(T cnum)/車子進入便道int i(0);Node<T> *s,*p;/?s=new Node<T>s->carnum=cnum;s->next=NULL;if(front=NULL)/空隊列,【新結點既是隊頭,又是隊尾】關鍵是!front指向第一個結點 front=rear=s;else rear->next=s;/將結點s插入到隊尾rear=s;p=front;while(p!=NULL)i+;p=p->next;/i即車在過道上的位置,【從1開始計!】return i;template<class T>T carQueue<T>:DeQueue()Node <T> *p;if (front=NULL) cout<<"便道上沒車"elsep=front; front=front->next;/將隊頭元素所在結點摘鏈return p->carnum;delete p;/將出隊進棧的車從隊列里刪除template<class T>bool carQueue<T>:Empty()/判斷是否為空,為空則返回1,不為空則返回0return front=NULL;template <class T>carStack<T>:carStack()/構造棧算法:top(-1)/建立一個最大尺寸為size的空棧S=new carinfo<T>MaxSize;/創(chuàng)建存儲棧的數組if(S=NULL) /分配不成功 cerr<<"動態(tài)存儲失??!"<<endl;exit(1); /stdlib.htemplate<class T>void carStack<T>:Pushcar(T cnum,int ctime)if (top=MaxSize-1)cout<<"車場內已停滿汽車"elseS+top.carnum=cnum;Stop.cartime=ctime;template<class T>int carStack<T>:Popcar(T outcnum,int outctime)int i,hour;carStack Stemp;/建一個臨時模擬停車場int Stop=-1;for(i=0;i<=top;i+)if(outcnum=Si.carnum)break;while(top>i)Stemp.S+Stop=Stop-;hour=outctime-Stop.cartime;return hour;top-;while(Stop>=0)S+top=Stemp.SStop-;template<class T>bool carStack<T>:full()return top=MaxSize-1;template <class T>void carQueue<T>:deletequeue(int i)Node<T> *p,*q;int j(1);p=front;while(p && j<i-1)p=p->next;j+;/找到第i-1個結點(結點位置從1開始)if(!p|!p->next)cout<<"i不合法!"<<endl;elseq=p->next;p->next=q->next;delete q;*【以下為主函數】*void outputpark()/系統(tǒng)功能選擇頁面,輸入泊車信息cout<<"="<<endl;cout<<" 歡迎來到秦小寶停車場!"<<endl;cout<<" (本停車場收費標準為5元/小時,60分鐘以內記為1小時)"<<endl;cout<<"="<<endl;cout<<"請輸入您的車輛信息:"<<endl;cout<<"(泊車輸入A/駛離輸入D/退出系統(tǒng)輸入E;請輸入您的車牌號;請輸入現在時刻)"<<endl;void main()int carnum,cartime;char arrive;carStack<int> cs;carQueue<int> cq;while(1)outputpark();cin>>arrive>>carnum>>cartime;if(arrive='A')if(cs.top!=MaxSize-1)/停車場內有空位可以駛入cs.Pushcar(carnum,cartime);cout<<"請駛入停車場的"<<cs.top+1<<"號車位"<<endl;elsecout<<"請駛入便道的"<<cq.EnQueue(carnum)<<"號車位"<<endl;/將車輛進行入隊操作,即停入便道else if(arrive='D')int flag(0),i;for(i=0;i<=cs.top;i+)if(cs.Si.carnum=carnum)flag=1;break;if(flag)int hour;hour=cs.Popcar(carnum,cartime);cout<<"您的"<<carnum<<"車在秦小寶停車場內停留時間為:"<<hour<<endl;cout<<"需要繳納的費用為:"<<hour*5<<"元!"<<endl;cs.Pushcar(cq.DeQueue(),cartime);/出隊一輛車,并將該車進行入棧處理elseint flagde(0),pos(0);/若該車在便道內,pos用來記錄該車便道內的位置Node<int> *p;p=cq.front;while(p!=NULL)if(p->carnum=carnum)flagde=1;break;pos+;p=p->next;if(flagde)cout<<"您的車停在便道上"<<pos<<"號車位,無需繳納費用,請自行駛離!"<<endl;cq.deletequeue(pos);elsecout<<"輸入有誤,或您的車不在秦小寶停車場內!請重新輸入"<<endl;else if(arrive='E')break; elsecout<<"您的輸入有誤,請重新輸入!"<<endl; (ps:本方案截圖與方案一截圖差不多,所以就不做了)(英文版 ) easily blame, to prevent the broken window effect. Supervise the leading cadres to play an exemplary role, take the lead in the strict implementation of the < code > and < rule >, lead to safeguard the solemnity and authority of the party discipline, ensure that the party discipline and the laws and regulations for implementation in place. Throughout the discipline in the daily supervision and management, strengthen supervision and inspection, from the thorough investigation of violations of discipline behavior. Strengthen to key areas, key departments and key projects as well as the masses reflect the concentration of the units and departments for supervision. - strengthening supervision, discipline inspection and supervision of cadres to set an example for compliance with the < code > and < rule > is a man must be hexyl, blacksmith needs its own hardware. Discipline inspection organs as the executor of the party discipline, and supervisor of the defenders, for its supervision must be more strictly, discipline inspection and supervision of cadres to firmly establish the awareness of Party Constitution, sense of discipline and rules consciousness, politics loyalty, sense obey. Action speak Ji Ordinance to set an example of the regulations of the rule of law, strengthen supervision and accept the supervision of the firmness and consciousness, do comply with < > and < >. To firmly establish the discipline must first be disciplined, the supervisor will be subject to the supervision of "concept, and consciously safeguard and implement party compasses party, take the lead in practicing" three strict real strict, so loyal, clean, play. To be good at learning, the Constitution and the < code > as morality, politics and brought to fruition; to implement < >, do not want to, dare not, not with disciplinary ruler to supervision; to discipline a ruler, often the control inspection, an

注意事項

本文(C數據結構 大作業(yè)課程設計)為本站會員(ca****in)主動上傳,裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。 若此文所含內容侵犯了您的版權或隱私,請立即通知裝配圖網(點擊聯系客服),我們立即給予刪除!

溫馨提示:如果因為網速或其他原因下載失敗請重新下載,重復下載不扣分。




關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網版權所有   聯系電話:18123376007

備案號:ICP2024067431-1 川公網安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。若文檔所含內容侵犯了您的版權或隱私,請立即通知裝配圖網,我們立即給予刪除!