c語言車輛管理系統(tǒng)課程設(shè)計(jì)_第1頁
c語言車輛管理系統(tǒng)課程設(shè)計(jì)_第2頁
c語言車輛管理系統(tǒng)課程設(shè)計(jì)_第3頁
c語言車輛管理系統(tǒng)課程設(shè)計(jì)_第4頁
c語言車輛管理系統(tǒng)課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、#include<>#include<>#include<>#define MAX 3 /*車庫容量 */#define price /* 每車每分鐘費(fèi)用 */ typedef struct timeint hour;int min;Time; /* 時(shí)間結(jié)點(diǎn) */typedef struct nodechar num10;Time reach;Time leave;CarNode;/* 車輛信息結(jié)點(diǎn) */ typedef struct NODECarNode *stackMAX + 1;int top;Moni_Cheku;typedef struct c

2、arCarNode *data;struct car *next;QueueNode;typedef struct NodeQueueNode *head;QueueNode *rear;Moni_Biandao;void InitStack(Moni_Cheku *); /* 初始化車庫 */int InitQueue(Moni_Biandao *);/* 初始化便道 */int Arrival(Moni_Cheku *, Moni_Biandao *); /* 車輛到達(dá) */void Leave(Moni_Cheku *, Moni_Cheku *, Moni_Biandao *); /*

3、 車輛離開 */void List(Moni_Cheku, Moni_Biandao); /* 顯示車庫和便道的存車信息 */ int main()Moni_Cheku Enter, Temp;Moni_Biandao Wait;int ch;InitStack(&Enter); /* 初始化車站 */InitStack(&Temp); /* 初始化讓路的臨時(shí)鏈表 */InitQueue(&Wait); /* 初始化便道 */printf("n");printf(” A_A歡迎進(jìn)入停車場管理系統(tǒng)1!A_An");printf("n

4、");printf(" 提示!( 1 ).該車庫的最大容量為 :%d;n",MAX);printf("(2). 該車庫的收費(fèi) 標(biāo)準(zhǔn)為:元/ (輛*分鐘).n",price);while (1)system("CLS");printf(*n"); printf("1. 車輛到達(dá) "); printf(" 2. 車輛離開 "); printf(" 3. 列表顯示 ");printf(" 4. 退出系統(tǒng) n"); 主菜單n");pr

5、intf(printf(" 請選擇(1 -4): bb");while (1)scanf("%d",&ch);if (ch >= 1 && ch <= 4)break;else printf("錯(cuò)誤!請重選(1-4): bb");3 / 12swifch (ch)宀case rAITiva-(QOEn(DQowaif)八 break 八 /*<彗里評 */case 2Leave(QOEn(DQOTempQowaif)八 break 八 /*<彗*斗 */case99Lisf(En(Dwa

6、if)八 break- /YTS旦*aw*/case 4exif(0)八 /* 陸圧卅諭砸 defau_rrbreak-efum 0八void -nifsarck(Monilcheku *s) /* 襠毬矣<>*/宀in二sxop H o 八fo(i H 0二 ah MAX+)svss-ck-sxopj H nufinf -nifQueue(MonilBiandao *Q) /* 襠毬矣油血 */宀Qvhead H (QueueNode *)ma=oc(sizeof(QueueNode)=f(QvheadHNULL)Q->head->next = NULL;Q->

7、rear = Q->head;return(1);else return(-1);void PRINT(CarNode *p, int room) /*輸出出庫車的信息 */ int A1, A2, B1, B2;printf(" 請輸入離開的時(shí)間 :/*:*/"); scanf("%d:%d", &(p->, &(p->);printf(" 離開車輛的車牌號為 :"); puts(p->num);printf(" 其到達(dá)時(shí)間為 : %d:%dn", p->, p-&g

8、t;printf(" 離開時(shí)間為 : %d:%dn", p->, p->A1 = p->A2 = p->B1 = p->B2 = p->printf(" 應(yīng)交費(fèi)用為 :%元 ",(B1-A1)*60+(B2-A2)*price);12 / 12free(p);int Arrival(Moni_Cheku *Enter, Moni_Biandao *W) /* 車輛到達(dá) */ CarNode *p;QueueNode *t;p = (CarNode *)malloc(sizeof(CarNode);fflush(stdi

9、n);printf(" 請輸入車牌號 (例如:中 CUG888):"); scanf("%s",&(p->num);if (Enter->top < MAX) /* 車庫未滿,車進(jìn)車庫 */Enter->top+;printf(" 該車在車庫位置 %d.n", Enter->top);printf(" 請輸入到達(dá)時(shí)間 (*:*):"); scanf("%d:%d", &(p->, &(p->);Enter->stackEnt

10、er->top = p;return(1);else /* 車庫已滿,車進(jìn)便道 */printf(" 該車須在便道等待 !n");t = (QueueNode *)malloc(sizeof(QueueNode);t->data = p;t->next = NULL;W->rear->next = t;W->rear = t;return(1);void Leave(Moni_Cheku *Enter, Moni_Cheku *Temp, Moni_Biandao *W) /* 車 輛離開 */int i, room;CarNode *p

11、, *t;QueueNode *q;/* 判斷車庫內(nèi)是否有車 */if (Enter->top > 0) /* 有車*/printf(" 請輸入車在車庫的位置 (1-%d):",Enter->top);/* 輸入車輛離開的信息 */while (1)scanf("%d", &room);if (room >= 1 && room <= Enter->top) break;else printf(”錯(cuò)誤!請重選:”);while (Enter->top > room) /* 車輛離開

12、*/Temp->top+;Temp->stackTemp->top = Enter->stackEnter->top;Enter->stackEnter->top =NULL;Enter->top-;p = Enter->stackEnter->top;Enter->stackEnter->top = NULL;Enter->top-;while (Temp->top >= 1)Enter->top+;Enter->stackEnter->top = Temp->stackTemp

13、->top;Temp->stackTemp->top =NULL;Temp->top-;PRINT(p, room); /*判斷通道上是否有車及車庫是否已滿 */if (W->head != W->rear) && Enter->top < MAX) /*便道的車輛進(jìn)入車庫 */q = W->head->next;t = q->data;Enter->top+;printf("n便道的s號車進(jìn)入車場第d位置.",t->num,Enter->top);printf("

14、n 請輸入現(xiàn)在的時(shí)間 (*:*):");scanf("%d:%d", &(t->, &(t->);W->head->next = q->next;if (q = W->rear) W->rear = W->head;Enter->stackEnter->top = t;free(q);else printf("n 便道里沒有車 .n");else printf("車庫里沒有車!n"); /*沒車*/void List1(Moni_Cheku *S)

15、/*列表顯示車庫信息 */int i;if (S->top > 0) /*判斷車庫內(nèi)是否有車 */printf(" 車庫號到達(dá)時(shí)間 t 車牌號 n");for (i = 1; i <= S->top; i+)printf(" %d ", i);printf("t%d:%d",S->stacki->,S->stacki->printf("tt%sn",S->stacki->num);else printf(" 車庫里沒有車 n");voi

16、d List2(Moni_Biandao *W) /* 列表顯示便道信息 */QueueNode *p;p = W->head->next;if (W->head != W->rear) /* 判斷便道上是否有車 */printf(" 在便道里等待的車輛的號碼為 :n");while (p != NULL)puts(p->data->num);p = p->next;else printf(" 便道里沒有車 .n");void List(Moni_Cheku S, Moni_Biandao W)int flag, tag;flag = 1;while (flag)printf(H*查看*n");printf("1. 車庫 2.便道 3.返回 n");printf(H*n");printf(" 請選擇(1-3): bb");

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論