版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、高級語言程序設(shè)計課程設(shè)計說明書設(shè)計題目 :學(xué)生宿舍管理系統(tǒng)目錄一、總體設(shè)計31 程序的總體設(shè)計32. 函數(shù)原型聲明3實用文檔二、用戶說明41、菜單界面52、入住登記界面53、刪除界面54、瀏覽界面65、查詢修改66、排序界面67、退出6三、小結(jié)7四、參考文獻(xiàn)7五、源程序代碼7一、總體設(shè)計1程序的總體設(shè)計確定界面,使用戶可選擇操作項目(錄入,刪除,瀏覽,修改,查詢,排序)。錄入:使用結(jié)構(gòu)體,要求用戶輸入樓棟、房號、面積、可住人數(shù)、已住人數(shù)刪除:按房號刪除以上信息.實用文檔查詢:按房號查詢以上信息修改:按房號修改以上信息排序:按已住人數(shù)排序信息2.函數(shù)原型聲明struct room *add(st
2、ruct room *head);/添加函數(shù)struct 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ù).實用文檔開 始入住刪除瀏覽查詢修改break結(jié)束二、用戶使用說明運行程序后即可按提示模仿以上操作進(jìn)行。.實用文檔1、菜單界面2、入住登記界面3、刪除界面.實用文檔4、瀏覽界面5、查詢修改6、排序界面7、退出.實用文檔三、小結(jié)通過
3、編寫該程序,熟悉了 C 語言的基本語法,選擇,循環(huán)等結(jié)構(gòu),深入練習(xí)了函數(shù)的調(diào)用方法, 和文件的讀寫方法, 熟悉了結(jié)構(gòu)體的使用, 更加深化了面向過程語言思想,和一些基本算法。通過對程序的后期調(diào)試,熟悉了 C 常見錯誤,鍛煉了思維的嚴(yán)密性,和完備性。通過對程序的注釋和畫流程圖,形成了一套自己編程的風(fēng)格,和清晰地思路,使思維更加條理化,清晰化。四、參考文獻(xiàn)1 譚浩強(qiáng) .C 程序設(shè)計 ( 第二版 ). 北京 : 清華大學(xué)出版社 ,19992 鄧文新 . 張宏烈 . 哈爾濱工業(yè)大學(xué)出版社3 百度 .五、附件源程序代碼#include#include#include#include struct room
4、int Lnum;int Fnum;int squa;int maxnum;.實用文檔int innum;struct room *next;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 *sort(struct room *head);/ 排序函數(shù) / 修改點void can();/ 結(jié)束函數(shù)void main()stru
5、ct 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)A:printf(-n);printf(|-|n);printf(|1.入住登記|n);printf(|2.刪除信息|n);printf(|3.信息瀏覽|n);printf(|4.查詢修改|n);.實用文檔printf(|5.按入住人數(shù)排序|n);printf(|6.退出系統(tǒng)|n);printf(|-|n
6、);printf(-n);printf( 請選擇服務(wù)項目!n);flushall();scanf(%d,&x);/菜單選擇if(head-next=NULL&x!=1&x!=6)printf( 系統(tǒng)中無入住信息,請先進(jìn)行入房登記!n);goto A;switch(x)case 1:head=add(head);system(cls);printf( 登記完畢! n);continue;case 2:head=del(head);T:scanf(%d,&y);while(y!=1&y!=0)printf( 輸入錯誤!請重新輸入!n);goto T;if(y=1)system(cls);.實用文檔
7、continue;elsecan();goto N;case 3:show(head);printf( 是否返回菜單界面進(jìn)行其他操作?(1/0) n);J:scanf(%d,&y);while(y!=1&y!=0)printf( 輸入錯誤!請重新輸入!n);goto J;if(y=1)system(cls);continue;elsecan();goto N;case 4:serh(head);system(cls);continue;case 5:head=sort(head);/修改點printf( 是否返回菜單界面進(jìn)行其他操作?(1/0) n);scanf(%d,&y);.實用文檔whi
8、le(y!=1&y!=0)printf( 輸入錯誤!請重新輸入!n);goto J;if(y=1)system(cls);continue;elsecan();goto N;continue;case 6:can();goto Q;default:printf( 輸入錯誤!請重新輸入!n);N: if(y=0)break;Q: if(x=6)break;struct room *add(struct room *head)/ 入住登記.實用文檔struct room *h,*p;int i=0,n;h=head;printf( 請輸入要登記的入房數(shù):n);scanf(%d,&n);printf
9、( 請輸入入住信息:n 樓號房號 面積最大入住人數(shù)已入住人數(shù) n);printf( 數(shù)據(jù)須按規(guī)定順序輸入,不同數(shù)據(jù)用空格分開。n);for(i=0;iLnum,&p-Fnum,&p-squa,&p-maxnum,&p-innum);p-next=h-next;h-next=p;return h;struct room *del(struct room *h)/退房登記int x;struct room *p,*q;p=h-next;q=h;printf( 請輸入退房房號:n);scanf(%d,&x);.實用文檔if(p=NULL)printf( 不存在此入房登記!n 是否返回菜單界面進(jìn)行其他
10、操作?(1/0) );elsewhile(p)if(p-Fnum=x)q-next=p-next;free(p);printf( 刪除成功!是否返回菜單界面進(jìn)行其他操作?(1/0) n);goto K;elseq=p;p=p-next;if(p=NULL)printf( 不存在此入房登記! n 是否返回菜單界面進(jìn)行其他操作?( 1/0)n);K:return h;return h;.實用文檔void show(struct room *h)struct room *p;p=h-next;if(p=NULL)printf( 無信息可顯示!n);elseprintf(n 樓號 房號 面積 所容納人
11、數(shù) 已入住人數(shù) nn); while(p)printf(%-7d%-7d%-8d%-13d%-8dn,p-Lnum,p-Fnum,p-squa,p-maxnum,p-innum); p=p-next;void serh(struct room *h)/ 入住信息查詢與修改struct room *p;int x,y,z;p=h-next;H: printf( 請輸入要查找的房號: n); scanf(%d,&z);.實用文檔while(p-Fnum!=z)p=p-next;if(p=NULL)break;if(p=NULL)printf( 您所查詢的房間號無人入??!是否繼續(xù)查找?(1/0) n
12、);Z: scanf(%d,&x);while(x!=1&x!=0)printf( 輸入錯誤!請重新輸入!n);goto Z;if(x=1)goto H;elseprintf( 查詢結(jié)果如下:n);printf(n樓號房號面積所容納人數(shù)已入住人數(shù) nn);printf(%-7d%-7d%-8d%-13d%-8dn,p-Lnum,p-Fnum,p-squa,p-maxnum,p-innum);printf( 如需修改請選擇1,按其他任意鍵返回菜單界面n);scanf(%d,&y);if(y=1)printf( 請對入住信息進(jìn)行修改(按順序輸入)n);.實用文檔scanf(%d%d%d%d%d,&
13、p-Lnum,&p-Fnum,&p-squa,&p-maxnum,&p-innum);printf( 修改成功!修改結(jié)果如下:n);printf(n 樓號房號面積所容納人數(shù)已入住人數(shù) nn);printf(%-7d%-7d%-8d%-13d%-8dn,p-Lnum,p-Fnum,p-squa,p-maxnum,p-innum);struct room *sort(struct room *h)/修改點struct room *p1,*p2,*t,*temp,*q; /*定義臨時指針*/temp=h-next; /* 將原表的頭指針?biāo)傅南乱粋€結(jié)點作頭指針*/h-next=NULL; /*第一個
14、結(jié)點為新表的頭結(jié)點*/while(temp!=NULL) /*當(dāng)原表不為空時,進(jìn)行排序*/t=temp; /* 取原表的頭結(jié)點*/temp=temp-next; /* 原表頭結(jié)點指針后移*/p1=h; /* 設(shè)定移動指針p1,從頭指針開始*/p2=h; /* 設(shè)定移動指針p2 做為 p1 的前驅(qū),初值為頭指針*/while(t-innuminnum&p1!=NULL) /*作成績平均分比較*/p2=p1; /* 待排序點值小,則新表指針后移*/p1=p1-next;if(p1=p2) /*p1=p2 ,說明待排序點值大,應(yīng)排在首位*/.實用文檔t-next=p1; /* 待排序點的后繼為p*/h=t; /* 新頭結(jié)點為待排序點*/else /* 待排序點應(yīng)插入在中間某個位置p2 和 p1 之間,如p 為空則是尾部 */t-next=p1; /*t的后繼是p1*/p2-next=t; /*p2 的后繼是
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2019粵教版 高中美術(shù) 選擇性必修2 中國書畫 《第二單元 中國書法》大單元整體教學(xué)設(shè)計2020課標(biāo)
- 2024屆河北省邯鄲市六校第一次教學(xué)質(zhì)量檢測試題(合肥一模)數(shù)學(xué)試題
- 茶樓合伙協(xié)議書范本
- 北京統(tǒng)一租賃房屋租賃合同
- 童謠兒歌我來讀活動
- 腎臟移植手術(shù)
- 山東省濱州市2024-2025學(xué)年八年級上學(xué)期期中考試語文試題(含答案)
- 湖南省益陽市赫山區(qū)箴言龍光橋?qū)W校2024-2025學(xué)年一年級上學(xué)期期中考試數(shù)學(xué)試題(無答案)
- 【初中地理】影響氣候的因素課件-2024-2025學(xué)年湘教版地理七年級上冊
- 電影機(jī)械行業(yè)相關(guān)投資計劃提議
- 電機(jī)維護(hù)保養(yǎng)作業(yè)指導(dǎo)書
- 國家開放大學(xué)《實用心理學(xué)》形考任務(wù)1-4參考答案
- 撤回支付令異議申請書
- 公元紀(jì)年法-完整版PPT
- 小學(xué)語文人教五年級上冊(統(tǒng)編2023年更新)第五單元-群文閱讀《說明方法的妙用》教學(xué)設(shè)計
- 高中英語外研版高中選修7Scopeandsequence-英語長難句教學(xué)反思
- 內(nèi)部控制案例第06章案例18 樂視
- 科技金融項目銀行工作總結(jié)匯報PPT模板
- 品質(zhì)異常升級管理規(guī)定
- 實驗室ISO17025認(rèn)證推進(jìn)計劃表
- 四年級上冊數(shù)學(xué)說課稿-價格問題 人教版
評論
0/150
提交評論