




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、#include #include #include #define SJD 6 /*宏定義定義SJD Z NULL D(r)*/#define Z 20 #define D(s) (s-8)/2 /*將輸入的時(shí)間劃分時(shí)間段;分別為0,1,2,3,4,5時(shí)間段*/ #define NULL 0 struct xinxiint jihao; char xuehao20;struct xinxi *next; ; /*結(jié)構(gòu)函數(shù)包含學(xué)生信息:機(jī)位,學(xué)號(hào),還有下名學(xué)生信息*/struct cellint RS; /*RS表示總?cè)藬?shù)*/struct xinxi *first; /*第一個(gè)預(yù)訂者記錄*/s
2、truct xinxi *middle; /*等待隊(duì)列列表*/struct xinxi *last; /*最后預(yù)訂者記錄*/ DUILEISJD; /*學(xué)生時(shí)間(SJD)段順序:人數(shù),第一名學(xué)生,排隊(duì)的學(xué)生,最后一名學(xué)生*/*預(yù)定模塊*/void yuding() int n; char m20; /*學(xué)號(hào)*/struct xinxi *R; struct xinxi *p; printf(輸入想要預(yù)定的時(shí)間n); scanf(%d,&n); if(n=8&n20) n=D(n); /*將輸入的時(shí)間劃分時(shí)間段*/ if(DUILEIn.RSjihao=1; strcpy(R-xuehao,m)
3、; /*將輸入的學(xué)號(hào)復(fù)制到R-xuehao */ R-next=NULL; DUILEIn.first=R; DUILEIn.last=R; DUILEIn.RS+; printf(成功預(yù)定n); else R=(struct xinxi *)malloc(sizeof(struct xinxi); strcpy(R-xuehao,m); /*將輸入的學(xué)號(hào)復(fù)制到R-xuehao */ R-next=NULL; p= DUILEIn.last; /*將最后預(yù)訂記錄賦值給p*/ R-jihao= DUILEIn.RS+1; printf(%d,R-jihao); /*表示該時(shí)間段第幾位預(yù)訂*/ D
4、UILEIn.last=R; /*將當(dāng)前的記錄做為最后記錄以便形成鏈表形式指向下一個(gè)*/ p-next=R; DUILEIn.RS+; /*記錄人數(shù)*/ printf(預(yù)定成功n); else printf(沒(méi)有空余機(jī)位!n); else printf(錯(cuò)誤.請(qǐng)輸入819,再次輸入.n); /*查詢(xún)空位模塊*/void chaxunkongwei() int n; printf(輸入想要查詢(xún)的時(shí)間(819點(diǎn),包括8點(diǎn))n); scanf(%d,&n); if(n=8&n20) n=D(n); if(DUILEIn.RS=8&nnext!=NULL;R=R-next) /*從第一名學(xué)生開(kāi)始查詢(xún)直
5、到找到符合的學(xué)號(hào),以便確認(rèn)是否預(yù)訂*/if(strcmp(R-xuehao,m)=0)break;if(R-jihao!=0) /*已預(yù)訂,輸出相應(yīng)的信息*/printf(你的機(jī)位是%dn,R-jihao); else printf(對(duì)不起.你依舊在等待列表中或者沒(méi)有預(yù)定); else printf(錯(cuò)誤,請(qǐng)?jiān)俅屋斎?n); /*排隊(duì)系統(tǒng)模塊*/void paiduixitong() int n; char m20; struct xinxi *R; struct xinxi *p; printf(請(qǐng)輸入想要排隊(duì)的時(shí)間n); scanf(%d,&n); if(n=8&n=Z) /*該時(shí)間段沒(méi)有
6、空位機(jī),需要預(yù)訂等待*/ printf(請(qǐng)輸入你的學(xué)號(hào)n); scanf(%s,m); if(DUILEIn.RS)=Z) R=(struct xinxi *)malloc(sizeof(struct xinxi); strcpy(R-xuehao,m); R-next=NULL; R-jihao=0; p= DUILEIn.last; DUILEIn.last=R; p-next=R; DUILEIn.middle=R; /*等待預(yù)訂列表*/DUILEIn.RS+; printf(成功排隊(duì)n); /*將剛輸入學(xué)生信息拍到最后一名后,成最后一名*/else R=(struct xinxi *)
7、malloc(sizeof(struct xinxi); strcpy(R-xuehao,m); R-next=NULL; R-jihao=0; p= DUILEIn.last; DUILEIn.last=R; p-next=R; DUILEIn.RS+; printf(成功排隊(duì)n); else printf(有空余機(jī)位,無(wú)須等待n); else printf(錯(cuò)誤.再次輸入.n); /*取消預(yù)訂模塊*/void cancel() int n; int i; char m20; struct xinxi *R; struct xinxi *q; struct xinxi *p; printf(
8、請(qǐng)輸入預(yù)定的時(shí)間n); scanf(%d,&n); if(n=8&nnext,i+) /*查找符合信息*/if(strcmp(R-xuehao,m)=0)break; if(iZ) /*iz表示在等待列表中*/ if(R-next=NULL) q-next=NULL; DUILEIn.last=q; free(R); DUILEIn.RS-; printf(取消成功!n); /*如果是排在20名后,且是最后一名*/ else q-next=R-next; free(R); DUILEIn.RS-; printf(取消成功!n); /*如果排在20名后,但不是最后*/ else /*正在上機(jī)者取
9、消預(yù)訂*/ if(DUILEIn.RSZ) DUILEIn.middle-jihao=R-jihao; DUILEIn.middle= DUILEIn.middle-next; /*如果排在20名內(nèi),但總?cè)藬?shù)(包括等待列表人數(shù))大于20 */if(i=1) DUILEIn.first=R-next; else q-next=R-next; free(R); DUILEIn.RS-; printf(成功取消預(yù)定!n); else printf(錯(cuò)誤,請(qǐng)?jiān)俅屋斎?n); /*待機(jī)者列表模塊*/void daijizheliebiao() int n; struct xinxi *q; printf
10、(查詢(xún)其他等待者的預(yù)定時(shí)間n); scanf(%d,&n); if(n=8&nZ) /*表示有等待上機(jī)者*/ printf(等待列表:n); q=DUILEIn.middle; for(;q-next!=NULL;q=q-next) printf(%sn,q-xuehao); /*逐個(gè)輸出等待列表者信息*/printf(%sn, DUILEIn.last-xuehao); else printf(這個(gè)時(shí)間段沒(méi)有預(yù)定者n); else printf(錯(cuò)誤。請(qǐng)?jiān)俅屋斎?n); int main() int i; for(i=0;iSJD;i+) DUILEIi.RS=0; DUILEIi.firs
11、t=NULL; DUILEIi.middle=NULL; DUILEIi.last=NULL; while(1) printf( *n);printf( * 機(jī)房機(jī)位預(yù)定系統(tǒng) *n);printf( * *n);printf( * 1 查詢(xún)空機(jī)位 2 預(yù)定系統(tǒng) *n);printf( * 3 取消預(yù)定 4 查詢(xún)所預(yù)定機(jī)位 *n);printf( * 5 排隊(duì)系統(tǒng) 6 等機(jī)者列表 *n);printf( * 0 退出系統(tǒng) *n);printf( * *n);printf( * 請(qǐng)輸入序號(hào)(0-6): *n);printf( *n); printf(請(qǐng)輸入序號(hào)!:n); scanf(%d,&i); switch(i) case 1:chaxunkongwei();break; case
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療手術(shù)合同范本
- 合開(kāi)店合同范本
- 衛(wèi)生間裝修工人合同范本
- 進(jìn)廠入職合同范本
- 合伙投資合同范本范本
- 個(gè)人之間擔(dān)保合同范本
- 合法會(huì)員合同范例
- 運(yùn)行總工績(jī)效合同范本
- 2025年常溫遠(yuǎn)紅外陶瓷及制品項(xiàng)目建議書(shū)
- 廚房人員用工合同范本
- 交通法律與交通事故處理培訓(xùn)課程與法律解析
- 廣西版四年級(jí)下冊(cè)美術(shù)教案
- 《換熱器及換熱原理》課件
- 兒童權(quán)利公約演示文稿課件
- UPVC排水管技術(shù)標(biāo)準(zhǔn)
- MSA-測(cè)量系統(tǒng)分析模板
- 血透室公休座談水腫的護(hù)理
- 急診預(yù)檢分診專(zhuān)家共識(shí)課件
- 廣州市海珠區(qū)事業(yè)單位考試歷年真題
- 2023年山西省太原市迎澤區(qū)校園招考聘用教師筆試題庫(kù)含答案詳解
- 2023中職27 嬰幼兒保育 賽題 模塊三 嬰幼兒早期學(xué)習(xí)支持(賽項(xiàng)賽題)
評(píng)論
0/150
提交評(píng)論