C語(yǔ)言知識(shí)學(xué)習(xí)教學(xué)規(guī)劃報(bào)告學(xué)生宿舍管理組織系統(tǒng)_第1頁(yè)
C語(yǔ)言知識(shí)學(xué)習(xí)教學(xué)規(guī)劃報(bào)告學(xué)生宿舍管理組織系統(tǒng)_第2頁(yè)
C語(yǔ)言知識(shí)學(xué)習(xí)教學(xué)規(guī)劃報(bào)告學(xué)生宿舍管理組織系統(tǒng)_第3頁(yè)
C語(yǔ)言知識(shí)學(xué)習(xí)教學(xué)規(guī)劃報(bào)告學(xué)生宿舍管理組織系統(tǒng)_第4頁(yè)
C語(yǔ)言知識(shí)學(xué)習(xí)教學(xué)規(guī)劃報(bào)告學(xué)生宿舍管理組織系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、高級(jí)語(yǔ)言程序設(shè)計(jì)課程設(shè)計(jì)說(shuō)明書設(shè)計(jì)題目:學(xué)生宿舍管理系統(tǒng)3一、總體設(shè)計(jì)1.程序的總體設(shè)計(jì)2.函數(shù)原型聲明二、用戶說(shuō)明1、菜單界面2、入住登記界面3、刪除界面4、瀏覽界面5、查詢修改6、排序界面7、退出三、小結(jié)四、參考文獻(xiàn)五、源程序代碼、總體設(shè)計(jì)1 .程序的總體設(shè)計(jì)確定界面,使用戶可選擇操作項(xiàng)目(錄入,刪除,瀏覽,修改,查詢,排序)錄入:使用結(jié)構(gòu)體,要求用戶輸入樓棟、房號(hào)、面積、可住人數(shù)、已住人數(shù)刪除:按房號(hào)刪除以上信息查詢:按房號(hào)查詢以上信息修改:按房號(hào)修改以上信息排序:按已住人數(shù)排序信息2.函數(shù)原型聲明struct room *add(struct room *head);/添加函數(shù)stru

2、ct room *del(struct room *h);/刪除函數(shù)void show(struct room *h);/信息瀏覽函數(shù)void serh(struct room *h);/查詢與修改函數(shù)struct room *sort(struct room *head);/排序函數(shù)void can();/結(jié)束函數(shù)、用戶使用說(shuō)明運(yùn)行程序后即可按提示模仿以上操作進(jìn)行。1、菜單界面國(guó)re:課程設(shè)計(jì)“LMjue嘗生宿舍管S泵昴儀口疋卜疋1理面M序 krfl 記息罷人統(tǒng) 魯矍住聚 住曆心詢?nèi)雽?入刪信査蠶12 3 15 61請(qǐng)選擇服務(wù)項(xiàng)目!2、入住登記界面請(qǐng)輸入要登記的入馬數(shù):3帶鈔S勒駄入住人數(shù)己

3、入住人數(shù) 數(shù)據(jù)須齣!定順序tA,不同數(shù)據(jù)用空格分開。V :iee 12 4 £_3、刪除界面請(qǐng)選擇服務(wù)項(xiàng)目!2請(qǐng)輸入S房房號(hào):20b刪除成功!是否返0菜單界面進(jìn)=其他操作? (1/0)4、瀏覽界面面祝所容納人數(shù)己人住A數(shù)121277是占返回采單界面迸行S他(1/0;5、查詢修改請(qǐng)輸入要查找的房號(hào):202宜詢貉耒如下:樓號(hào)房號(hào)面積所容納人數(shù)己人住人數(shù)72&Z1211如B修改請(qǐng)選彈1,技其他任蕙鍵返回栗單界面W對(duì)入住信息進(jìn)行修改C按順序輸入)y 262 12 S6、排序界面12122I是舌返回菜單界E進(jìn)行其他操作Y (丄旳7、退出請(qǐng)選擇服務(wù)項(xiàng)目!贏迎再次使用學(xué)生宿舍管理系統(tǒng)!再見

4、” Press an叩to continue.三、小結(jié)通過(guò)編寫該程序,熟悉了 C語(yǔ)言的基本語(yǔ)法,選擇,循環(huán)等結(jié)構(gòu),深入練習(xí)了函數(shù)的調(diào)用方法,和文件的讀寫方法,熟悉了結(jié)構(gòu)體的使用,更加深化了面 向過(guò)程語(yǔ)言思想,和一些基本算法。通過(guò)對(duì)程序的后期調(diào)試,熟悉了 C常見錯(cuò)誤,鍛煉了思維的嚴(yán)密性,和完備性。通過(guò)對(duì)程序的注釋和畫流程圖,形成了一套自己編程的風(fēng)格,和清晰地思路,使思維更加條理化,清晰化。四、參考文獻(xiàn)1譚浩強(qiáng).C程序設(shè)計(jì)(第二版).北京:清華大學(xué)出版社,19992鄧文新.張宏烈哈爾濱工業(yè)大學(xué)出版社3百度.五、附件源程序代碼#in clude<stdio.h>#in clude<

5、malloc.h>#in cludevstri ng.h>#in elude <stdlib.h>struct roomint Lnum;int Fnum;int squa;int max num;int innum;struct room *n ext;struct room *add(struct room *head);/添加函數(shù)struct room *del(struct room *h);/刪除函數(shù)void show(struct room *h);/信息瀏覽函數(shù)void serh(struct room *h);/查詢與修改函數(shù)struct room *s

6、ort(struct room *head);/排序函數(shù)/修改點(diǎn)void can();/結(jié)束函數(shù)void main()struct room *head;int x,y;head=(struct room *)malloc(sizeof(struct room);head-> next=NULL;printf("歡迎使用學(xué)生宿舍管理系統(tǒng)!n”);printf(”按回車鍵進(jìn)入菜單界面n");getchar();while(1)n");A:prin tf("printf("|n");prin tf("|1.入住登記|n&q

7、uot;);prin tf("|2.刪除信息|n");prin tf("|3.信息瀏覽|n");prin tf("|4.查詢修改|n");prin tf("|5.按入住人數(shù)排序l|n");prin tf("|6.退出系統(tǒng)|n");|n");prin tf("|n");printf(”請(qǐng)選擇服務(wù)項(xiàng)目!n");flushall();scan f("%d",& x);/菜單選擇if(head-> next=NULL&&a

8、mp;x!=1&& x!=6)n");printf("系統(tǒng)中無(wú)入住信息,請(qǐng)先進(jìn)行入房登記!goto A;switch(x) case 1:head=add(head);system("cls");printf(” 登記完畢! n”);con ti nue;case 2:head=del(head);T:scan f("%d", &y);while(y!=1 &&y!=0)printf(”輸入錯(cuò)誤!請(qǐng)重新輸入!n");goto T;con ti nu e;if(y=i)system(&q

9、uot;cls");elseelsecan ();goto N;case 3:show(head);printf("是否返回菜單界面進(jìn)行其他操作?(1/0 ) n");J:scan f("%d", &y);while(y!=1 &&y!=0)printf(”輸入錯(cuò)誤!請(qǐng)重新輸入!n");goto J;if(y=1)system("cls");con ti nu e;can ();goto N;case 4:serh(head);system("cls");con ti n

10、ue;case 5:head=sort(head);/ 修改點(diǎn)printf("是否返回菜單界面進(jìn)行其他操作?(1/0 ) n");scan f("%d", &y);while(y!=1 &&y!=0)printf(”輸入錯(cuò)誤!請(qǐng)重新輸入!n");goto J;if(y=1)system("cls");con ti nu e;can ();goto N;con ti nue;case 6:can();goto Q;default:printf(”輸入錯(cuò)誤!請(qǐng)重新輸入! n");N:if(y=O

11、)break;Q:if(x=6)break;struct room *add(struct room *head)/入住登記struct room *h,* p;int i=0, n;h=head;printf("請(qǐng)輸入要登記的入房數(shù):n");scan f("%d", &n);printf("請(qǐng)輸入入住信息:n樓號(hào)房號(hào)面積最大入住人數(shù)已入住人數(shù)n");n");printf("數(shù)據(jù)須按規(guī)定順序輸入,不同數(shù)據(jù)用空格分開。for(i=0;i <n ;i+)p=(struct room*)malloc(siz

12、eof(struct room);flushallO;scan f("%d%d%d%d%d",&p->L num,&p->F num,&p->squa,&p->max num,&p- >innu m);p->n ext=h->n ext;h->n ext =p;return h;struct room *del(struct room *h)/退房登記int x;struct room *p ,*q;p=h->n ext;q=h;printf(”請(qǐng)輸入退房房號(hào):n”);scan f

13、("%d", &x);if(p=NULL)printf("不存在此入房登記!n是否返回菜單界面進(jìn)行其他操作? (1/0 )");elsewhile( p)if(p->Fnum=x)q->n ext =p->n ext;free( p);printf("刪除成功!是否返回菜單界面進(jìn)行其他操作? (1/0 ) n");goto K;elseq=p;p=p->n ext;if(p=NULL)printf("不存在此入房登記!n是否返回菜單界面進(jìn)行其他操作? (1/0 )struct room *p;

14、n");K:return h;return h;void show(struct room *h)p=h->n ext;if(p=NULL)printf(”無(wú)信息可顯示!n");elseprintf("n 樓號(hào) 房號(hào) 面積 所容納人數(shù)已入住人數(shù)nn");while( p)prin tf("%-7d%-7d%-8d%-13d%-8dn", p->L num, p->F num, p->squa, p->max num,p->innu m);p=p->n ext;void serh(struct

15、room *h)/入住信息查詢與修改int x,y, z;struct room *p;p=h->n ext;H: printf("請(qǐng)輸入要查找的房號(hào):n");scan f("%d", &z);while( p->F nu m!=z)p=p->n ext;if(p=NULL)break;if(p=NULL)1/0 ) n");printf(”您所查詢的房間號(hào)無(wú)人入??!是否繼續(xù)查找?(Z:scan f("%d", &x);while(x!=1 &&x!=0)printf(”輸入

16、錯(cuò)誤!請(qǐng)重新輸入! n");goto 乙if(x=1)goto H;elseprintf(”查詢結(jié)果如下:n”);printf("n 樓號(hào) 房號(hào) 面積 所容納人數(shù)已入住人數(shù)nn");prin tf("%-7d%-7d%-8d%-13d%-8dn", p->L num, p->F num, p->squa, p->max nu m,p->innu m);printf("如需修改請(qǐng)選擇1,按其他任意鍵返回菜單界面n");scan f("%d", &y);if(y=1)pr

17、intf("請(qǐng)對(duì)入住信息進(jìn)行修改(按順序輸入)n");scan f("%d%d%d%d%d",&p->L num,&p->F num,&p->squa,&p->max num,&p->innu m);printf("修改成功!修改結(jié)果如下:n");printf("n 樓號(hào) 房號(hào) 面積所容納人數(shù)已入住人數(shù)nn");prin tf("%-7d%-7d%-8d%-13d%-8dn", p->L num,p->F num,

18、 p->squa, p->max nu m,p->i nnu m);struct room *sort(struct room *h)/修改點(diǎn)struct room *p 1,* p2,*t,*te mp ,*q; /*定義臨時(shí)指針*/tem p=h->n ext; /*將原表的頭指針?biāo)傅南乱粋€(gè)結(jié)點(diǎn)作頭指針*/h-> next=NULL; /*第一個(gè)結(jié)點(diǎn)為新表的頭結(jié)點(diǎn)*/while(te mp !=NULL)/*當(dāng)原表不為空時(shí),進(jìn)行排序*/t=temp; /*取原表的頭結(jié)點(diǎn)*/temp=te mp->n ext; /*原表頭結(jié)點(diǎn)指針后移 */p1=h; /*設(shè)定移動(dòng)指針p1,從頭指針

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論