2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩66頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  《C語言》課程設(shè)計(jì)報(bào)告</p><p>  指導(dǎo)教師: 職稱: 教 授 </p><p><b>  實(shí)驗(yàn)師 </b></p><p><b>  實(shí)驗(yàn)師 </b></p><p>  2012年07月15日</p

2、><p> 學(xué)生姓名:學(xué) 號(hào):</p><p> 學(xué) 院:</p><p> 班 級(jí):</p><p> 題 目:賓館房間登記與計(jì)費(fèi)管理系統(tǒng)</p><p><b>  目 錄</b></p><p>  目錄............................

3、.........................................................................................I</p><p>  一、選題背景…………………………………………………………….……1</p><p>  1.1主要問題及技術(shù)要求………………………....………………….…..1</p>&

4、lt;p>  1.2指導(dǎo)思想…………………………………………………………..….1</p><p>  二、算法設(shè)計(jì)……….…………………………………………………………1</p><p>  2.1程序功能需求……….…..............................................………………1</p><p>  2.2功能框架

5、圖………….…………..................................................……2</p><p>  2.3設(shè)計(jì)方案說明……….……..........................................................……3</p><p>  2.4計(jì)算公式……….........................

6、..........................................…………3</p><p>  三、程序設(shè)計(jì)及功能說明…….…................................................……....……4</p><p>  3.1程序功能介紹………….…….......................................

7、...............……4</p><p>  四、結(jié)果分析.....................................................................................................6</p><p>  4.1主界面………………….……………………………………….….....6</p>

8、<p>  4.2登記入住...............................................................................................6</p><p>  4.3結(jié)賬退房...........................................................................

9、....................9</p><p>  4.4查詢當(dāng)前入住情況.............................................................................12</p><p>  4.5查詢當(dāng)前費(fèi)用….....................................................

10、............................13</p><p>  4.6查詢歷史記錄.....................................................................................14</p><p>  五、結(jié)論或總結(jié).........................................

11、......................................................14</p><p>  六、課程設(shè)計(jì)心得體會(huì)...................................................................................15</p><p>  參考文獻(xiàn)...................

12、........................................................................................16</p><p>  源程序........................................................................................................

13、.......17</p><p>  附表一...............................................................................................................63</p><p><b>  一、選題背景</b></p><p>  1

14、.1主要問題及技術(shù)要求</p><p>  本題對(duì)時(shí)間的控制要求較高,尤其是必須控制輸入的時(shí)間,使其不能小于以前錄入過的時(shí)間,防止當(dāng)前時(shí)間輸入錯(cuò)誤。還有退房時(shí)的信息對(duì)比難度也較高,必須保證退房顧客與系統(tǒng)記錄信息一致,防止服務(wù)錯(cuò)漏或錯(cuò)誤退房。這是本題兩個(gè)較大的難點(diǎn)。此外還有房間號(hào)、身份證號(hào)、時(shí)間的輸入格式的控制、跨年的時(shí)間計(jì)算等難點(diǎn)。</p><p><b>  1.2指導(dǎo)思想&l

15、t;/b></p><p>  學(xué)了C語言,我們需要一個(gè)學(xué)以致用的機(jī)會(huì)。選題后,在題目的完成過程中,我們的知識(shí)可以更加牢固。在完善酒店管理系統(tǒng)的過程中,我們要鍛煉自己的基于現(xiàn)實(shí)思考的能力,培養(yǎng)自己縝密的思維。相對(duì)于大多數(shù)人做的學(xué)生管理系統(tǒng),酒店管理系統(tǒng)對(duì)于時(shí)間的控制要求嚴(yán)格,對(duì)于我們的算法思想要求較高,因此,在完成該次課程設(shè)計(jì)的過程中,我們要鍛煉我們的邏輯思維能力,同時(shí)對(duì)C語言有更深刻的認(rèn)識(shí),把C語言知識(shí)掌

16、握得更牢固。同時(shí),該系統(tǒng)以能夠幫助酒店很好地管理客戶信息,提高營業(yè)效率和數(shù)據(jù)的安全性和可靠性,減少勞力浪費(fèi)為設(shè)計(jì)目標(biāo)。在完成該系統(tǒng)的同時(shí),我們也為社會(huì)盡了一份力。</p><p><b>  二、算法設(shè)計(jì)</b></p><p><b>  2.1程序功能需求</b></p><p>  (1)每次打開程序都能從顧客信息表

17、文件中讀出顧客數(shù)據(jù),以便后面的操作;</p><p>  (2)有一個(gè)主界面,能根據(jù)用戶需要從主界面進(jìn)入不同的功能模塊;</p><p><b>  (3)登記時(shí):</b></p><p>  a.能夠判斷房間是否已住滿;</p><p>  b.能夠選擇計(jì)費(fèi)方式是按小時(shí)還是按天計(jì)費(fèi);</p><p&

18、gt;  c.能夠判斷輸入的房間號(hào)、姓名、身份證號(hào)、入住時(shí)間等信息是否按正確格式輸入;</p><p>  d.能夠判斷輸入的房間號(hào)對(duì)應(yīng)的房間是否有人入住,輸入的身份證號(hào)是否正有人使用,輸入的當(dāng)前時(shí)間是否小于以前登記的所有時(shí)間;</p><p>  e.輸入完成后將輸入的信息按房間號(hào)排序并保存到文件;</p><p><b>  (4)退房時(shí):</b

19、></p><p>  a.能夠判斷是否有顧客入??;</p><p>  b.能夠判斷輸入的房間號(hào)、姓名、身份證號(hào)、退房時(shí)間等信息是否按正確格式輸入;</p><p>  c.能夠判斷輸入的房間號(hào)對(duì)應(yīng)的房間是否是空房;</p><p>  d.能夠判斷輸入的姓名、身份證號(hào)與退房的房間號(hào)是否對(duì)應(yīng)(即判斷該房間中住的是不是這個(gè)顧客);<

20、;/p><p>  e.能夠判斷輸入的退房時(shí)間是否小于入住時(shí)間;</p><p>  f.能夠計(jì)算出顧客入住的總時(shí)間數(shù)并根據(jù)顧客入住的總時(shí)間數(shù)、對(duì)應(yīng)房間價(jià)格和顧客選擇的支付方式計(jì)算出應(yīng)付金額,并判斷顧客支付的金額是否大于應(yīng)付金額;</p><p>  g.輸入顧客支付的金額后計(jì)算出找零金額并顯示; </p><p>  h.退房結(jié)束前從顧客信息表

21、中刪去該退房顧客信息并將此次操作的信息寫入歷史記錄文件;</p><p>  (5)查詢當(dāng)前入住情況時(shí):</p><p>  a.判斷是否有顧客入?。?lt;/p><p>  b.能夠判斷輸入的當(dāng)前時(shí)間是否小于任一顧客的入住時(shí)間;</p><p>  c.根據(jù)當(dāng)前時(shí)間算出每位顧客的當(dāng)前總?cè)胱r(shí)間數(shù);</p><p>  d

22、.逐條輸出當(dāng)前顧客信息及其當(dāng)前總?cè)胱r(shí)間數(shù);</p><p>  (6)查詢當(dāng)前費(fèi)用時(shí):</p><p>  a.判斷是否有顧客入??;</p><p>  b.能夠判斷輸入的當(dāng)前時(shí)間是否小于任一顧客的入住時(shí)間;</p><p>  c.根據(jù)當(dāng)前時(shí)間算出每位顧客的當(dāng)前總?cè)胱r(shí)間數(shù),進(jìn)而算出各顧客應(yīng)付金額;</p><p>

23、;  d.逐條輸出當(dāng)前顧客信息及其當(dāng)前總?cè)胱r(shí)間數(shù)、當(dāng)前費(fèi)用;</p><p>  (7)查詢歷史記錄時(shí):</p><p>  a.判斷是否有歷史記錄;</p><p>  b.從歷史記錄文件中讀出每條歷史記錄并逐條輸出;</p><p><b>  2.2功能框架圖</b></p><p>  

24、由2.1分析得以下功能圖:</p><p>  圖2-1 功能框架圖</p><p><b>  2.3設(shè)計(jì)方案說明</b></p><p>  先編寫各個(gè)功能分塊的函數(shù),然后在主函數(shù)中調(diào)用這些函數(shù)實(shí)現(xiàn)功能,即采用先分后總的方法。通過定義全局變量作為函數(shù)間的橋梁,達(dá)到整個(gè)程序的數(shù)據(jù)一致性。</p><p>  由以上方案

25、設(shè)計(jì)程序,可以得到一個(gè)簡單實(shí)用的系統(tǒng),能夠極大地減少酒店管理漏洞,該方案的條理性較強(qiáng),設(shè)計(jì)出的程序也簡單易用。</p><p>  下面是函數(shù)關(guān)系圖解:</p><p>  圖2-2 函數(shù)調(diào)用關(guān)系圖</p><p><b>  2.4計(jì)算公式</b></p><p>  1)設(shè)當(dāng)前日期是當(dāng)前年的第M天,入住日期是入住那年

26、的第N天(可由days函數(shù)算出)</p><p>  (1)按天既費(fèi)時(shí),總?cè)胱r(shí)間等于總?cè)胱√鞌?shù):</p><p>  a.不跨年:總?cè)胱r(shí)間=M-N</p><p>  b.跨年:總?cè)胱r(shí)間=(退房年份-入住年份)×365+入住年份到退房年份間的閏年數(shù)+M</p><p>  (2)按小時(shí)計(jì)費(fèi)時(shí):總?cè)胱r(shí)間=以上求得的總?cè)胱√鞌?shù)&

27、#215;24-入住時(shí)刻+退房時(shí)刻</p><p>  2) (1)按天既費(fèi)時(shí):應(yīng)付金額=總?cè)胱r(shí)間×每天價(jià)格</p><p>  (2)按小時(shí)計(jì)費(fèi)時(shí):應(yīng)付金額=總?cè)胱r(shí)間×每小時(shí)價(jià)格</p><p>  3)找零金額=付款金額-應(yīng)付金額</p><p><b>  三、程序及功能說明</b><

28、/p><p><b>  3.1程序功能介紹</b></p><p>  程序主要有登記入住、結(jié)賬退房、查詢當(dāng)前入住情況、查詢當(dāng)前費(fèi)用、查詢歷史記錄、關(guān)閉程序功能。在登記入住時(shí)能夠選擇計(jì)費(fèi)方式按天或按小時(shí);退房時(shí)能夠算出應(yīng)付金額和找零金額;能夠顯示當(dāng)前入住人數(shù);查詢歷史記錄時(shí)能夠顯示歷史記錄的條數(shù);在任意輸入狀態(tài)下輸入0都能返回主界面。</p><p&

29、gt;<b>  1. 函數(shù)庫</b></p><p>  #include<stdio.h> /*標(biāo)準(zhǔn)輸入輸出函數(shù)庫*/</p><p>  #include<string.h> /*字

30、符串函數(shù)庫*/</p><p>  #include <windows.h> /*自帶窗體控制函數(shù)庫*/</p><p><b>  2. 結(jié)構(gòu)體說明</b></p><p><b>  結(jié)構(gòu)體如下:</b></p><p&g

31、t;  struct room </p><p><b>  { </b></p><p>  char room[20]; /*容納房間號(hào)*/</p><p>  char name[20];

32、 /*容納顧客姓名*/</p><p>  char ID[20]; /*容納顧客身份證號(hào)*/</p><p>  int staytime[4]; /*容納入住時(shí)間*/</p><p>

33、;  int endtime[4]; /*容納退房時(shí)間*/</p><p>  int c; /*容納計(jì)費(fèi)方式的選擇結(jié)果*/</p><p>  int time;

34、 /*容納總?cè)胱r(shí)間*/</p><p>  int money; /*容納應(yīng)付金額*/</p><p>  int money1; /*容納付款金額*/</p><p&g

35、t;  int money2; /*容納找零金額*/</p><p>  char nn; /*換行符,用于在記錄文件中換行*/</p><p><b>  }</b></p><p>  該結(jié)構(gòu)

36、體類型用于容納顧客的所有信息,具體用途在以上注釋中給予了說明</p><p><b>  3. 全局變量</b></p><p>  char room1[9][5]={{'1','-','0','1'},{'1','-','0','2'},

37、{'1','-','0','3'},{'2','-','0','1'},{'2','-','0','2'},</p><p>  {'2','-','0','3'

38、;},{'3','-','0','1'},{'3','-','0','2'},{'3','-','0','3'}}; </p><p>  /*定義數(shù)組容納房間號(hào),全局通用*/</p><p>  

39、int g=10,t,end=2,g1,d,p; /* g,g1容納總?cè)胱∪藬?shù);d按小時(shí)或按天計(jì)費(fèi)的</p><p>  選擇結(jié)果,p容納平年或閏年的判斷結(jié)果*/</p><p><b>  4. 主函數(shù)</b></p><p>  主函數(shù)void main( )主要用于主界面控制,其主要功能為:程序啟動(dòng)后從顧客信息表獲得

40、數(shù)據(jù);顯示主界面,通過主界面連接各功能模塊,按用戶的選擇調(diào)用不同的函數(shù)進(jìn)入不同的功能模塊,并附帶有關(guān)閉程序功能。</p><p><b>  5. 登記入住函數(shù)</b></p><p>  登記入住函數(shù)void dengji(struct room room[9])主要用于顧客登記入住,主要功能為將輸入的顧客信息排序后寫入顧客信息文件,在輸入信息前先判斷房間是否已滿,

41、再輸入是判斷輸入的信息是否正確可用。</p><p><b>  6. 結(jié)賬退房函數(shù)</b></p><p>  結(jié)賬退房函數(shù)void tuifang(struct room room[9])的主要功能是在顧客信息記錄中找到與輸入的信息對(duì)應(yīng)的記錄并將其刪除,同時(shí)根據(jù)輸入的信息計(jì)算出總?cè)胱r(shí)間、應(yīng)付金額,再根據(jù)輸入的付款金額計(jì)算出找零金額,最后將這些信息作為一條新紀(jì)錄保

42、存到歷史記錄表。</p><p>  7. 查詢當(dāng)前入住情況函數(shù)</p><p>  查詢當(dāng)前入住情況函數(shù)void chaxun( )的主要功能是在輸入當(dāng)前時(shí)間后,根據(jù)當(dāng)前時(shí)間算出每位顧客的總?cè)胱r(shí)間,然后逐條輸出顧客信息和顧客總?cè)胱r(shí)間;在輸入當(dāng)前時(shí)間時(shí),判斷當(dāng)前時(shí)間的合法性。</p><p>  8. 查詢當(dāng)前費(fèi)用函數(shù)</p><p> 

43、 查詢當(dāng)前費(fèi)用函數(shù)void chaxun1( )是在查詢當(dāng)前入住情況函數(shù)void chaxun( )的基礎(chǔ)上作出一些修改得到的,它的主要功能是輸入當(dāng)前時(shí)間后,根據(jù)當(dāng)前時(shí)間算出每位顧客的總?cè)胱r(shí)間,然后再算出每位顧客的當(dāng)前費(fèi)用,最后逐條輸出顧客信息和顧客總?cè)胱r(shí)間、顧客當(dāng)前費(fèi)用;在輸入當(dāng)前時(shí)間時(shí)對(duì)當(dāng)前時(shí)間的合法性做判斷。</p><p>  9. 查詢歷史記錄函數(shù)</p><p>  查詢歷

44、史記錄函數(shù)void chaxun2(struct room a)的功能是從歷史記錄文件中逐條讀出歷史記錄并輸出。</p><p>  10. 顧客信息寫入函數(shù)</p><p>  信息錄入函數(shù)void write(struct room room[])的功能是將顧客信息逐條寫入顧客信息文件。</p><p>  11. 歷史記錄寫入函數(shù)</p><

45、;p>  歷史記錄寫入函數(shù)void write1(struct room room[])的作用是寫入一條歷史記錄到歷史記錄文件里。</p><p>  12. 顧客信息讀取函數(shù)</p><p>  顧客信息讀取函數(shù)的作用是從顧客信息文件中逐條讀出顧客信息并將其存入指定的結(jié)構(gòu)體數(shù)組里。</p><p>  13. days函數(shù)</p><p&

46、gt;  該函數(shù)的作用是根據(jù)當(dāng)天日期算出該天是該年中的第幾天。</p><p>  14. hours函數(shù)</p><p>  該函數(shù)是一個(gè)輔助計(jì)算函數(shù),用于計(jì)算顧客入住的小時(shí)數(shù)。</p><p><b>  四、結(jié)果分析</b></p><p><b>  4.1主界面</b></p>

47、<p>  本程序設(shè)定了啟動(dòng)后若無顧客數(shù)據(jù)文件則顯示暫無顧客數(shù)據(jù),具體如圖所示:</p><p><b>  圖2-3 啟動(dòng)時(shí)</b></p><p><b>  圖2-4 主界面</b></p><p><b>  4.2登記入住</b></p><p>  登

48、記時(shí)的部分情況如圖:</p><p>  圖2-5 選擇計(jì)費(fèi)方式</p><p>  圖2-6 選擇錯(cuò)誤時(shí)</p><p>  圖2-7 房間號(hào)輸入有誤</p><p>  圖2-8 身份證號(hào)輸入有誤</p><p>  圖2-9 年份輸入有誤</p><p>  圖2-10 月份輸入有誤<

49、;/p><p>  圖2-11 日期輸入有誤</p><p>  圖2-12 時(shí)刻輸入有誤</p><p>  顧客信息及登記時(shí)間輸入不合法時(shí)報(bào)錯(cuò)并重新輸入:</p><p>  圖2-13 登記演示</p><p>  圖2-14 登記成功</p><p>  登記成功后可繼續(xù)登記,使操作更簡便:

50、</p><p>  圖2-15 登記成功后</p><p>  輸入0回車后強(qiáng)制返回主界面,故本次登記無效:</p><p>  圖2-16 強(qiáng)制返回主界面</p><p>  房間已滿時(shí)禁止登記并給出提示:</p><p>  圖2-17 房間已滿時(shí)</p><p><b>  4

51、.3結(jié)賬退房</b></p><p>  結(jié)賬退房部分功能展示如下圖:</p><p>  圖2-18 輸入退房顧客信息時(shí)</p><p>  退房時(shí)間輸入不合法是會(huì)給予提示,并重新輸入:</p><p>  圖2-9 輸入退房時(shí)間時(shí)</p><p>  輸入支付金額時(shí)判斷是否滿足應(yīng)付金額,若不滿足,重新輸

52、入:</p><p>  圖2-20 輸入支付金額時(shí)</p><p>  退房完成時(shí)計(jì)算出找零金額并顯示:</p><p>  圖2-21 退房完成時(shí)</p><p>  退房完成后可繼續(xù)退房,簡化操作:</p><p>  圖2-22 退房完成后</p><p>  輸入0回車后強(qiáng)制返回主界面

53、,故本次退房無效:</p><p>  圖2-23 強(qiáng)制返回主界面時(shí)</p><p>  圖2-24 當(dāng)前無人入住時(shí)</p><p>  4.4查詢當(dāng)前入住情況</p><p>  具體操作界面及功能如下圖:</p><p>  圖2-25 當(dāng)前無人入住時(shí)</p><p>  輸入當(dāng)前時(shí)間時(shí)判斷

54、輸入的時(shí)間是否合法,若不合法,重新輸入:</p><p>  圖2-26 輸入當(dāng)前時(shí)間時(shí)</p><p>  圖2-27 查詢完成時(shí)</p><p><b>  4.5查詢當(dāng)前費(fèi)用</b></p><p>  查詢當(dāng)前費(fèi)用模塊的具體操作及功能展示如下圖:</p><p>  當(dāng)前無人入住時(shí)提示并不

55、輸出查詢結(jié)果:</p><p>  圖2-28 無人入住時(shí)</p><p>  輸入當(dāng)前時(shí)間時(shí)判斷輸入的時(shí)間是否合法,若不合法,重新輸入:</p><p>  圖2-29 輸入當(dāng)前時(shí)間時(shí)</p><p>  輸入完成后計(jì)算出當(dāng)前費(fèi)用并輸出:</p><p>  圖2-30 查詢結(jié)束時(shí)</p><p&

56、gt;<b>  4.6查詢歷史記錄</b></p><p>  查詢歷史記錄時(shí)操作較簡單,具體演示如下圖:</p><p>  圖2-31 查詢結(jié)束時(shí)</p><p>  圖2-32 沒有歷史記錄時(shí)</p><p><b>  五、結(jié)論或總結(jié)</b></p><p>  完

57、成該程序的過程中,先后經(jīng)歷了算法設(shè)計(jì),編寫代碼,上機(jī)調(diào)試,試運(yùn)行等幾個(gè)階段,最后終于基本達(dá)到了要求。</p><p>  程序能正常運(yùn)行后,又對(duì)操作界面進(jìn)行了美化,使得操作界面更直觀易用。</p><p>  實(shí)現(xiàn)了題目要求的功能后,并且對(duì)功能進(jìn)行了擴(kuò)展,加入了查詢歷史記錄、任意狀態(tài)輸入0返回主界面、運(yùn)行結(jié)果以表格的形式輸出等功能。本來還想加一個(gè)密碼設(shè)置功能,不過由于不是十分必要,反而可能

58、導(dǎo)致程序的簡單實(shí)用性下降,故而放棄。</p><p>  這個(gè)程序的優(yōu)點(diǎn)在于精確可靠,在房間號(hào)、時(shí)間、身份證號(hào)等的輸入上進(jìn)行嚴(yán)格的驗(yàn)證,能夠有效地防止出現(xiàn)管理錯(cuò)漏問題。該程序在可用性方面有較大的優(yōu)勢。</p><p>  在完成該次設(shè)計(jì)的過程中,我收獲了很多,學(xué)會(huì)了根據(jù)現(xiàn)實(shí)情況考慮問題,將理論與實(shí)際結(jié)合的思考方式。</p><p>  六、課程設(shè)計(jì)心得體會(huì)</

59、p><p>  在設(shè)計(jì)較大的程序時(shí),要有全局觀,否則將會(huì)導(dǎo)致各系統(tǒng)模塊間相互影響,產(chǎn)生不必要的麻煩。在設(shè)計(jì)一個(gè)系統(tǒng)時(shí),界面的美化很重要,能夠極大地提高系統(tǒng)的可用性,形成良好的人機(jī)交互。設(shè)計(jì)程序時(shí),要不斷查漏補(bǔ)缺,多次試運(yùn)行,因?yàn)橹挥性谑褂弥胁拍馨l(fā)現(xiàn)問題,程序的試用能幫我們找到一些在設(shè)計(jì)時(shí)忽略的問題。設(shè)計(jì)一個(gè)程序就像建一棟房子,要從地基開始一點(diǎn)點(diǎn)往上累加,即要一步步地分步實(shí)現(xiàn)模塊功能,要有一定的條理性。最重要的一點(diǎn)是,

60、設(shè)計(jì)的程序要與實(shí)際相結(jié)合,要符合實(shí)際需要,否則一切都將是毫無意義的。</p><p>  我們在學(xué)習(xí)過程中,要將理論與實(shí)際相結(jié)合,在實(shí)踐中提高自我。本次課程設(shè)計(jì),我將學(xué)過的C語言知識(shí)鞏固了一遍,同時(shí)認(rèn)識(shí)了<windows.h>函數(shù)庫及其中的system函數(shù)和Sleep函數(shù),使我對(duì)VC6.0更加了解,也了解到更多TuboC與VC6.0的區(qū)別。</p><p>  在設(shè)計(jì)過程中,我

61、學(xué)會(huì)了有計(jì)劃有條理地實(shí)現(xiàn)目標(biāo),這才是我本次課程設(shè)計(jì)中最大的收獲。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 譚浩強(qiáng).C語言程序設(shè)計(jì)教程.北京:高等教育出版社,2007.</p><p>  [2] 曹哲主編.C語言實(shí)驗(yàn)與課程設(shè)計(jì)指導(dǎo).北京:機(jī)械工業(yè)出版社,2010.</p><p>  [

62、3] 譚浩強(qiáng),張基溫,唐永炎編著.C程序設(shè)計(jì)教程.北京:清華大學(xué)出版社,1992.</p><p>  [4] 譚浩強(qiáng)編著.C程序設(shè)計(jì)題解與上機(jī)指導(dǎo)(第二版).北京:清華大學(xué)出版社,1999.</p><p><b>  源程序</b></p><p>  #include<stdio.h>

63、 /*頭文件,標(biāo)準(zhǔn)輸入輸出函數(shù)庫*/</p><p>  #include<string.h> /*字符串函數(shù)庫*/</p><p>  #include <windows.h>

64、 /*自帶窗體控制函數(shù)庫*/</p><p>  struct room /*定義結(jié)構(gòu)體變量類型*/</p><p><b>  { </b></p><p> 

65、 char room[20]; /*定義結(jié)構(gòu)體變量類型中的元素,下同*/</p><p>  char name[20];</p><p>  char ID[20];</p><p>  int staytime[4];</p><p>  int endtime[4

66、];</p><p><b>  int c;</b></p><p><b>  int time;</b></p><p>  int money;</p><p>  int money1;</p><p>  int money2;</p><p&

67、gt;<b>  char nn;</b></p><p>  }room[11],b[11],a; /*定義兩個(gè)結(jié)構(gòu)體數(shù)組和一個(gè)結(jié)構(gòu)體變量*/</p><p>  char room1[9][5]={{'1','-','0','1'}

68、,{'1','-','0','2'},{'1','-','0','3'},{'2','-','0','1'},{'2','-','0','2'},{'2','-

69、','0','3'},{'3','-','0','1'}</p><p>  ,{'3','-','0','2'},{'3','-','0','3'}};

70、 /*定義一個(gè)二維字符數(shù)組容納房間號(hào)*/</p><p>  int g=10,t,end=2,g1,d,p; /* g,g1容納總?cè)胱∪藬?shù);d容納選擇按小時(shí)或按天計(jì)費(fèi)的選擇結(jié)果,p容納平年或閏年的判斷結(jié)果*/</p><p>  void main()

71、 /*定義主函數(shù),主界面控制/</p><p><b>  {</b></p><p>  void dengji(struct room room[9]); /*申明要調(diào)用的函數(shù),下同*/</p><p>  void tuifa

72、ng(struct room room[9]);</p><p>  void chaxun( );</p><p>  void chaxun1( );</p><p>  void chaxun2(struct room a);</p><p>  void read(struct room b[]);</p><p&

73、gt;  int flag,ll;</p><p>  for(ll=0;ll<11;ll++) /*將room[ll]與 b[ll]中所有的控制換行的nn元素初始化*/</p><p><b>  {</b></p><p>  room[ll].nn='\n';</p>

74、<p>  b[ll].nn='\n';</p><p>  } </p><p>  read(room); /*將room[ll]初始化*/</p><p>

75、;<b>  g=0;</b></p><p>  while(strlen(room[g].ID)==18) g++; /*將g初始化*/</p><p>  while(t==4||end==2) /*

76、while語句,實(shí)現(xiàn)主界面控制*/</p><p><b>  {</b></p><p>  system("cls"); /*清屏語句,下同*/</p><p><b>  t=0;</b><

77、;/p><p>  printf("\n\n\n\n\n\n\n\n\n\n"); /*輸出格式控制,下同*/</p><p>  printf(" "); /*輸出格式控制,下同*/

78、</p><p>  printf("*******************************\n"); /*輸出格式控制,下同*/</p><p>  printf(" "); /*輸出格式控制,下同*/&

79、lt;/p><p>  printf("* [1] 登記入住 *\n"); /*輸出提示語句,下同*/</p><p>  printf(" "); /*輸出格式控制,下同*/</p

80、><p>  printf("* [2] 結(jié)賬退房 *\n"); /*輸出提示語句,下同*/</p><p>  printf(" "); /*輸出格式控制,下同*/</p>

81、<p>  printf("* [3] 查詢當(dāng)前入住情況 *\n"); /*輸出提示語句,下同*/</p><p>  printf(" "); /*輸出格式控制,下同*/</p><p>

82、;  printf("* [4] 查詢當(dāng)前費(fèi)用 *\n"); /*輸出提示語句,下同*/</p><p>  printf(" "); /*輸出格式控制,下同*/</p><p>  prin

83、tf("* [5] 查詢歷史記錄 *\n"); /*輸出提示語句,下同*/</p><p>  printf(" "); /*輸出格式控制,下同*/</p><p>  printf(&quo

84、t;* [6] 關(guān)閉程序 *\n"); /*輸出提示語句,下同*/</p><p>  printf(" "); /*輸出格式控制,下同*/</p><p>  printf("***

85、****************************\n"); /*輸出格式控制,下同*/</p><p>  printf("\n "); /*輸出格式控制,下同*/</p><p>  printf("請(qǐng)選擇

86、: "); /*輸出提示語句,下同*/</p><p>  scanf("%d",&flag); /*輸入指定變量的值,下同*/</p><p>  while((flag!=1)&

87、;&(flag!=2)&&(flag!=3)&&(flag!=4)&&(flag!=5)&&(flag!=6))</p><p><b>  { </b></p><p>  system("cls");</p><p>  printf("

88、;\n\n\n\n\n\n\n\n\n");</p><p>  printf(" ");</p><p>  printf("選擇錯(cuò)誤,請(qǐng)重新選擇!\n");</p><p>  printf(" ");</p&g

89、t;<p>  printf("*******************************\n");</p><p>  printf(" ");</p><p>  printf("* [1] 登記入住 *\n");</p>&l

90、t;p>  printf(" ");</p><p>  printf("* [2] 結(jié)賬退房 *\n");</p><p>  printf(" ");</p><p>  printf(&qu

91、ot;* [3] 查詢當(dāng)前入住情況 *\n");</p><p>  printf(" ");</p><p>  printf("* [4] 查詢當(dāng)前費(fèi)用 *\n");</p><p>  printf("

92、 ");</p><p>  printf("* [5] 查詢歷史記錄 *\n");</p><p>  printf(" ");</p><p>  printf("* [6] 關(guān)閉程序 *\n"

93、;);</p><p>  printf(" ");</p><p>  printf("*******************************\n");</p><p>  printf("\n ");</p>

94、<p>  printf("請(qǐng)選擇 : ");</p><p>  scanf("%d",&flag);</p><p><b>  }</b></p><p>  system("cls");</p><p>  if(flag==1)

95、 /*if語句,功能模塊控制,下同*/</p><p><b>  { </b></p><p><b>  end=1;</b></p><p>  while(end==1)</p><p><b>

96、  { </b></p><p>  system("cls");</p><p>  dengji(room);</p><p>  system("cls");</p><p>  if(t==4) break; /*break語句,實(shí)現(xiàn)任意狀態(tài)輸入0返回主界面,

97、下同*/</p><p>  system("cls");</p><p>  printf("\n\n\n\n\n\n\n\n\n\n\n\n");</p><p>  printf(" ");</p><p>  printf("*

98、******************************\n");</p><p>  printf(" ");</p><p>  printf("* [1] 繼續(xù)登記入住 *\n");</p><p>  printf("

99、 ");</p><p>  printf("* [2] 返回主界面 *\n");</p><p>  printf(" ");</p><p>  printf("*****************************

100、**\n\n");</p><p>  printf("\n ");</p><p>  printf("請(qǐng)選擇 : ");</p><p>  scanf("%d",&end);</p><p>  if(end==0) t=

101、4;</p><p>  if(t==4) break;</p><p>  while(end!=1&&end!=2)</p><p><b>  {</b></p><p>  system("cls");</p><p>  printf("\n

102、\n\n\n\n\n\n\n\n\n\n");</p><p>  printf(" ");</p><p>  printf("選擇錯(cuò)誤,請(qǐng)重新選擇!\n");</p><p>  printf(" ");</p&

103、gt;<p>  printf("*******************************\n");</p><p>  printf(" ");</p><p>  printf("* [1] 繼續(xù)登記入住 *\n");</p><

104、;p>  printf(" ");</p><p>  printf("* [2] 返回主界面 *\n");</p><p>  printf(" ");</p><p>  printf("

105、;*******************************\n\n");</p><p>  printf("\n ");</p><p>  printf("請(qǐng)選擇 : ");</p><p>  scanf("%d",&end);</p

106、><p>  if(end==0) t=4;</p><p>  if(t==4) break; </p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>

107、;  if(flag==2) </p><p><b>  {</b></p><p><b>  end=1;</b></p><p>  while(end==1)</p><p><b>  {</b></p><p>  system("

108、;cls");</p><p>  tuifang(room);</p><p>  system("cls");</p><p>  if(t==4) break;</p><p>  printf("\n\n\n\n\n\n\n\n\n\n");</p><p> 

109、 printf(" ");</p><p>  printf("*******************************\n");</p><p>  printf(" ");</p><p>  printf("*

110、 [1] 繼續(xù)結(jié)賬退房 *\n");</p><p>  printf(" ");</p><p>  printf("* [2] 返回主界面 *\n");</p><p>  printf("

111、 ");</p><p>  printf("*******************************\n\n");</p><p>  printf("\n ");</p><p>  printf("請(qǐng)選擇 : ");</p>

112、<p>  scanf("%d",&end);</p><p>  if(end==0) t=4;</p><p>  if(t==4) break;</p><p>  while(end!=1&&end!=2)</p><p><b>  {</b></p

113、><p>  system("cls");</p><p>  printf("\n\n\n\n\n\n\n\n");</p><p>  printf(" ");</p><p>  printf("選擇錯(cuò)誤,請(qǐng)重新選擇!\n"

114、);</p><p>  printf(" ");</p><p>  printf("*******************************\n");</p><p>  printf(" ");</p>&

115、lt;p>  printf("* [1] 繼續(xù)結(jié)賬退房 *\n");</p><p>  printf(" ");</p><p>  printf("* [2] 返回主界面 *\n");</p><p>  pri

116、ntf(" ");</p><p>  printf("*******************************\n\n");</p><p>  printf("\n ");</p><p>  printf("請(qǐng)

117、選擇 : ");</p><p>  scanf("%d",&end);</p><p>  if(end==0) t=4;</p><p>  if(t==4) break;</p><p><b>  }</b></p><p><b>  }&

118、lt;/b></p><p><b>  }</b></p><p>  if(flag==3) </p><p><b>  {</b></p><p><b>  chaxun();</b></p><p><b>  if(t!=4

119、)</b></p><p><b>  {</b></p><p>  printf("\n ");</p><p>  printf("輸入任意數(shù)返回主界面 : ");</p><p>  scanf("%d"

120、,&t);</p><p><b>  end=2;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(flag==4) </p><p><b>  {</b&g

121、t;</p><p>  chaxun1();</p><p><b>  if(t!=4)</b></p><p><b>  {</b></p><p>  printf("\n ");</p><p>  pri

122、ntf("輸入任意數(shù)返回主界面 : ");</p><p>  scanf("%d",&t);</p><p><b>  end=2;</b></p><p><b>  }</b></p><p><b>  }</b><

123、;/p><p>  if(flag==5) </p><p><b>  {</b></p><p>  chaxun2(a);</p><p><b>  if(t!=4)</b></p><p><b>  {</b></p><p&

124、gt;  printf("\n 輸入任意數(shù)返回主界面 : ");</p><p>  scanf("%d",&t);</p><p><b>  end=2;</b></p><p><b>  }</b></p><p><b>  }&l

125、t;/b></p><p>  if(flag==6) </p><p><b>  {</b></p><p><b>  end=3;</b></p><p><b>  t=0;</b></p><p><b>  }</b&

126、gt;</p><p><b>  }</b></p><p><b>  }</b></p><p>  /************************************主函數(shù)結(jié)束**************************************/</p><p>  void

127、 dengji(struct room room[9]) /*定義登記入住函數(shù)*/</p><p><b>  {</b></p><p>  void write(struct room a[]);

128、 /*申明write函數(shù)*/</p><p>  int i,j,k,h=0;</p><p>  if(g<9) /*if語句,判斷房間是否已滿*/</p><p><b>  {</b></p><p>

129、;  while(h==0)</p><p><b>  {</b></p><p>  printf("\n\n\n\n\n\n\n\n\n\n\n\n");</p><p>  printf(" ");</p><p>  printf(&

130、quot;*******************************\n");</p><p>  printf(" ");</p><p>  printf("* 請(qǐng)選擇計(jì)費(fèi)方式! *\n");</p><p>  printf("

131、 ");</p><p>  printf("* [1] 按天計(jì)費(fèi) *\n");</p><p>  printf(" ");</p><p>  printf("* [2] 按小時(shí)計(jì)費(fèi)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(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)論