預(yù)定房間系統(tǒng)課程設(shè)計_第1頁
已閱讀1頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  案</b></p><p><b>  例</b></p><p><b>  分</b></p><p><b>  析</b></p><p>  題目:海爾:“信息企業(yè)”的實現(xiàn)</p><p> 

2、 院系:計算機科學(xué)學(xué)院 </p><p>  專業(yè):2013級信息管理與信息系統(tǒng)一班</p><p><b>  目錄</b></p><p><b>  概述</b></p><p>  1.1、案例背景………………………………………………1</p><p>  1.2、案

3、例分析………………………………………………1</p><p><b>  二、兩個信息化</b></p><p>  2.1企業(yè)的信息化……………………………………………2</p><p>  2.2、信息企業(yè)化……………………………………………3</p><p><b>  三、模式創(chuàng)新</b>&

4、lt;/p><p>  3.1、改變組織結(jié)構(gòu)…………………………………………4</p><p>  3.2、買服務(wù)不買服務(wù)器……………………………………5</p><p><b>  四、心得體會</b></p><p>  4.1、心得體會………………………………………………14</p><p>&

5、lt;b>  一、概述</b></p><p><b>  1.1設(shè)計目的:</b></p><p>  客戶通過自助客房管理系統(tǒng)在互聯(lián)網(wǎng)上直接進行查看客房信息、客戶信息的建立、客戶信息的查詢及退訂等多項功能,滿足客戶的入住信息登記的要求,讓客戶足不出戶就可以進行房間的預(yù)訂。實現(xiàn)酒店客房管理的快捷化、無紙化辦公。</p><p&g

6、t;<b>  1.2設(shè)計意義:</b></p><p>  1.2.1通過自助客房管理系統(tǒng)客戶可以有效的及時的查看房間信息及進行預(yù)訂、退訂功能。使得發(fā)揮在如今高速發(fā)展的社會中節(jié)約時間、節(jié)約成本、方便快捷的作用。同時,通過客戶自己進行諸多功能減少服務(wù)人員的工作壓力,使得社會和諧促進發(fā)展。</p><p>  1.2.2在此次課程設(shè)計中,對于我們剛剛接觸C語言的同學(xué)來說

7、是一個難得的鍛煉機會,之前在課本中的死知識在本次的課程設(shè)計中得到了很好的運用和實踐。</p><p>  1.2.3提高我們對系統(tǒng)的整體認識能力,包括在一開始的項目立項、初步調(diào)查、總體的方案設(shè)計、算法的構(gòu)思、編寫代碼、程序的測試一系列步驟,讓我們的思維能力得到提升。有一句話,經(jīng)歷了方才懂得,希望我們的各項能力在日后得到更好的提高。</p><p>  1.2.4團隊合作的過程體驗合作的重要

8、和藝術(shù),沒有團結(jié)統(tǒng)一集體很難進行任何一項工作,同時在合作的過程中重新認識了同學(xué),增強了同學(xué)之間的情誼。</p><p><b>  1.3需求分析: </b></p><p>  目前啟夏苑無法實現(xiàn)通過互聯(lián)網(wǎng)來進行預(yù)訂房間,新生家長往往是到了學(xué)校之后才知道啟夏苑,然后才通過前臺訂購房間,大批量的客人導(dǎo)致服務(wù)的繁忙,容易出錯,由此我們針對陜西師范大學(xué)啟夏苑來開發(fā)出一款自

9、助客房管理系統(tǒng),讓客戶減少排隊登記的麻煩,同時減輕工作人員的工作壓力,保證準確性。</p><p><b>  1.4功能概述:</b></p><p>  自助客房管理系統(tǒng)共有6個功能,即查看客房信息、客戶信息的登記、客戶信息的查詢、退訂、客戶信息的顯示、退出通訊錄。</p><p><b>  課程設(shè)計計劃</b>&l

10、t;/p><p><b>  2.1任務(wù)分工:</b></p><p> ?、偎螑偅ńM長):負責(zé)任務(wù)分工、進度安排,word制作、PPT制作、主函數(shù)的編寫、PPT講解。</p><p>  ②樊歡歡:負責(zé)功能函數(shù)的編譯、調(diào)試程序、PPT制作。</p><p>  ③江加翠:負責(zé)功能函數(shù)的編譯、收集材料、word的制作。<

11、;/p><p>  ④茍妍:負責(zé)功能函數(shù)的編譯、程序的優(yōu)化、界面優(yōu)化、word的制作。</p><p> ?、萼嶅麧? 負責(zé)功能函數(shù)的編譯、心得體會、錯誤總結(jié)。</p><p><b>  2.2設(shè)計要求:</b></p><p>  1、完成客房信息的輸出。</p><p>  2、實現(xiàn)客戶信息的錄

12、入功能。(運用動態(tài)內(nèi)存分布和動態(tài)鏈表知識)</p><p>  3、實現(xiàn)用姓名查詢客戶入住信息。</p><p>  4、實現(xiàn)客戶退訂房間后信息的釋放。</p><p>  【注】:建立客戶信息的結(jié)構(gòu)體,結(jié)構(gòu)體的成員包括姓名、性別、身份證、天數(shù)、客房類型、備注。</p><p><b>  程序算法及代碼</b><

13、/p><p><b>  知識歸納</b></p><p><b>  (1)</b></p><p><b>  整體算法流程圖: </b></p><p>  子函數(shù)流程圖與源程序</p><p><b>  創(chuàng)建客戶信息 </b>

14、</p><p><b>  (1)N-S圖</b></p><p>  客戶信息創(chuàng)建N-S圖</p><p><b>  程序源代碼</b></p><p>  linklist Create(int a ) </p><p>  { linklist head=(lis

15、tnode *)malloc(sizeof(listnode)); </p><p>  listnode *p,*q;</p><p><b>  q=head; </b></p><p>  while(a--)</p><p>  { p=(listnode *)malloc(sizeof(listnode));

16、</p><p>  printf("姓名 性別 證件 入住日期 天數(shù) 類型 備注\n");</p><p>  scanf("%s%s%s%s%s%s%s",p->data.name,p->data.sex,p->data.ID,p->data.come,p->data.da

17、y, p->data.type,p->data.beizhu);</p><p>  q->next=p; </p><p><b>  q=p;</b></p><p><b>  }</b></p><p>  q->next=N

18、ULL;</p><p>  printf("******信息登記成功******\n");</p><p>  return head;</p><p><b>  }</b></p><p><b>  查詢客戶信息</b></p><p><b

19、>  (1)N-S圖 </b></p><p>  客戶信息查詢函數(shù)N-S圖</p><p><b>  程序源代碼</b></p><p>  listnode * Find(linklist head)</p><p>  { listnode *p;</p><p> 

20、 char name[10];</p><p>  printf("*******************************************\n");</p><p>  printf("*******************************************\n");</p><p>  prin

21、tf("姓名查找,按1表示查找:");</p><p>  p=head->next; </p><p>  scanf("%d",&i);</p><p><b>  if(i==1)</b></p><p>  { printf("請輸入要查詢的姓

22、名:");</p><p>  scanf("%s",&name);</p><p>  while(p&&strcmp(p->data.name,name)>0) </p><p>  p=p->next;</p><p>  if(p==NULL||strcmp(p

23、->data.name,name)<0)</p><p><b>  p=NULL;</b></p><p><b>  }</b></p><p>  return p; }</p><p><b>  退訂</b></p><p><

24、;b>  (1)N-S圖</b></p><p><b>  (2)程序源代碼:</b></p><p>  void Delete(linklist head)</p><p>  { listnode *p,*q;</p><p>  p=Find(head);</p><p

25、>  if(p==NULL)</p><p>  { printf("信息不存在!\n");</p><p><b>  return;}</b></p><p><b>  else</b></p><p>  { printf("要退訂的話就按1:"

26、;);</p><p>  scanf("%d",&i);</p><p><b>  if(i==1)</b></p><p><b>  { q=head;</b></p><p>  while(q!=NULL&&q->next!=p)<

27、/p><p>  q=q->next; </p><p>  q->next=p->next;</p><p><b>  free(p);</b></p><p>  printf("已退訂!\n");</p><p><b>  }</b&g

28、t;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  客戶信息輸出</b></p><p><b>  (1)N-S圖</b></p><p>  客戶信息輸出N-S圖&l

29、t;/p><p><b>  (2)程序源代碼:</b></p><p>  void List(linklist head)</p><p>  { listnode *p;</p><p><b>  p=head;</b></p><p>  printf("姓

30、名 性別 證件 入住日期 天數(shù) 類型 備注\n");</p><p>  printf("**********************************************************************\n");</p><p>  while(p->next!=NULL)

31、</p><p>  {printf("%s%s%s%s%s%s%s\n",p->next->data.name,p->next->data.sex,p->next->data.ID,p->next->data.come,p->next->data.day, p->next->data.type,p->next-&g

32、t;data.beizhu);</p><p>  p=p->next;</p><p><b>  }</b></p><p><b>  主菜單</b></p><p><b>  (1)N-S圖</b></p><p><b>  

33、主菜單函數(shù)N-S圖</b></p><p><b>  (2)源程序</b></p><p>  int Menu()</p><p><b>  { int i;</b></p><p>  printf("

34、 \n");</p><p>  printf(" \n");</p><p>  printf(&q

35、uot; 主菜單 \n");</p><p>  printf("*******************************************************************************\n");</p><p>  print

36、f("*******************************************************************************\n");</p><p>  printf("** 1.查看客房信息 **\n");</p><p>  prin

37、tf("** 2.客戶信息的創(chuàng)建 **\n");</p><p>  printf("** 3.客戶信息的查詢 **\n");</p><p>  printf("** 4.退訂

38、 **\n");</p><p>  printf("** 5.客戶信息的顯示 **\n");</p><p>  printf("** 0.退出管理系統(tǒng)

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

40、**********************************\n");</p><p>  printf(" \n");</p><p>  printf(" 請 選 擇 0-5:");</p>

41、<p><b>  for(;;)</b></p><p>  {scanf("%d",&i);</p><p>  printf("\n");</p><p>  if(i<0||i>5)</p><p>  printf("輸出錯誤,重

42、選0-5:");</p><p><b>  else </b></p><p><b>  break ; </b></p><p><b>  }</b></p><p><b>  return i;</b></p><

43、;p><b>  }</b></p><p><b>  調(diào)試運行:</b></p><p>  第一步:打開程序,調(diào)試運行。出現(xiàn)如下界面:</p><p>  之后客戶進行選擇,查看客房信息</p><p><b>  客戶信息的建立</b></p>&l

44、t;p><b>  進行客戶信息的查看</b></p><p><b>  退訂功能</b></p><p><b>  退出系統(tǒng)</b></p><p><b>  總結(jié)</b></p><p><b>  錯誤集錦: </b>

45、;</p><p>  大括號問題: 后面缺了兩個大括號,別小瞧這個大括號的問題,如果條理不清很容易在該結(jié)束的時候結(jié)束,導(dǎo)致結(jié)果大相徑庭。而如果你在寫第一個打括號“{”時順便就加上“}”那就可以避免這樣的問題的出現(xiàn)。</p><p>  2、switch語句后面要加break,養(yǎng)成優(yōu)秀的習(xí)慣就可以盡量避免這種問題。</p><p>  3、while語句()內(nèi)的內(nèi)容

46、要是條件或是判斷類的</p><p>  while語句中結(jié)束條件是直到不符合()內(nèi)容為止要求。</p><p><b>  程序優(yōu)化:</b></p><p>  通訊錄創(chuàng)建提前。剛開始的程序創(chuàng)建通訊錄的子函數(shù)和其它函數(shù)都在主函數(shù)中的swtich語句中調(diào)用</p><p>  在單調(diào)的界面中我們加入了函數(shù)system

47、("color 3e");使界面美化</p><p>  改變不同的數(shù)字變成不一樣的結(jié)果</p><p><b>  心得體會:</b></p><p>  1.通過本次課程設(shè)計,我小組成員在書本知識上進一步提高編程的能力,體會到C語言的獨特魅力。 </p><p>  2.同時培養(yǎng)

48、我們自主學(xué)習(xí)的能力,例如動態(tài)內(nèi)存malloc函數(shù)的運用,和單鏈表的知識點。對這兩大難點思考研究能夠獨立理解運用。</p><p>  3.團隊的分工合作使得大家能夠發(fā)揮自己的優(yōu)勢。讓我們意識到團隊合作的重要性。</p><p>  本次的課程設(shè)計由于諸多原因沒有實現(xiàn)我們預(yù)期的很多功能,如結(jié)算功能等。在編譯的過程中我們也許有不嚴密的地方,希望老師多多指點迷津,大家多多包涵。應(yīng)該說本次的課程設(shè)

49、計我們小組成員都盡心盡力,其它不完善的地方望以后在學(xué)習(xí)中能夠改進。第一次做課程設(shè)計,感觸頗多,付出很多收獲也很多,體驗到C語言是一門藝術(shù),很有趣味,讓我們愛上了C語言。最后謝謝老師給我們這次寶貴的機會.</p><p><b>  附錄:源程序</b></p><p>  #include<string.h></p><p>  #

50、include<stdlib.h></p><p>  #include<math.h></p><p>  int i; /*定義全局變量i*/</p><p>  typedef struct /*定義客戶信息結(jié)構(gòu)體*/</

51、p><p>  { char name[10];</p><p>  char sex[20];</p><p>  char ID[30];</p><p>  char come[40];</p><p>  char day[50];</p><p>

52、;  char type[70];</p><p>  char beizhu[120];</p><p>  }datatype;</p><p>  typedef struct node /*定義鏈表結(jié)構(gòu)*/ </p><p><b>  {</b><

53、;/p><p>  datatype data;</p><p>  struct node * next;</p><p>  }listnode;</p><p>  typedef listnode * linklist;</p><p>  linklist head;</p><p>  

54、listnode * p;</p><p><b>  //客戶信息的建立</b></p><p>  linklist Create(int a ) /*定義建立客戶信息的子函數(shù)*/</p><p><b>  {</b></p><p>  system ("

55、;color 7d");</p><p>  linklist head=(listnode *)malloc(sizeof(listnode)); /*動態(tài)內(nèi)存分配*/</p><p>  listnode *p,*q;</p><p>  q=head; /*

56、指向鏈表結(jié)構(gòu)的頭*/</p><p>  while(a--) /*a表示內(nèi)存的剩余量*/</p><p><b>  {</b></p><p>  p=(listnode *)malloc(sizeof(listnode));</p>

57、<p>  printf("姓名 性別 證件 入住日期 天數(shù) 類型 備注\n");</p><p>  scanf("%s %s %s %s %s %s %s",p->data.name,p->data.sex,p->data.ID,p->data.come,p->dat

58、a.day,</p><p>  p->data.type,p->data.beizhu);/*用p訪問結(jié)構(gòu)體*/</p><p>  q->next=p; </p><p><b>  q=p;</b></p><p><b>  }</b></p&

59、gt;<p>  q->next=NULL;/*結(jié)束條件*/</p><p>  printf("******信息登記成功******\n");</p><p>  return head;/*返回head鏈表頭,指向創(chuàng)建的信息*/</p><p><b>  }</b></p><p

60、>  //按姓名查找個人信息</p><p>  listnode * Find(linklist head) /*定義查找個人信息的子函數(shù)*/</p><p><b>  {</b></p><p>  system ("color 8e");</p><p>  listnode

61、 *p; /*定義一個鏈表類型的*p*/</p><p>  char name[10];</p><p>  printf("*******************************************\n");</p><p>  printf("********************

62、***********************\n");</p><p>  printf("姓名查找,按1表示查找:");</p><p>  p=head->next; /*把頭的下一個數(shù)據(jù)的地址賦給p*/</p><p&g

63、t;  scanf("%d",&i);</p><p><b>  if(i==1)</b></p><p><b>  {</b></p><p>  printf("請輸入要查詢的姓名:");</p><p>  scanf("%s&qu

64、ot;,&name);</p><p>  while(p&&strcmp(p->data.name,name)>0) /*字符串的長度的比較*/</p><p>  p=p->next;</p><p>  if(p==NULL||strcmp(p->data.name,name)<0)</p>

65、<p><b>  p=NULL;</b></p><p><b>  }</b></p><p>  return p;/*返回用戶結(jié)構(gòu)體*p*/</p><p><b>  }</b></p><p><b>  //退訂</b></p

66、><p>  void Delete(linklist head) /*定義退訂的子函數(shù)*/</p><p>  { system ("color 6a");</p><p>  listnode *p,*q;</p><p>  p=Find(head); /*調(diào)

67、用查找信息的子函數(shù)*/</p><p>  if(p==NULL)</p><p><b>  {</b></p><p>  printf("信息不存在!\n");</p><p><b>  return;</b></p><p><b> 

68、 }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  printf("要退訂的話就按1:");</p><p>  scanf("%d",&i);</p>&l

69、t;p><b>  if(i==1)</b></p><p><b>  {</b></p><p><b>  q=head;</b></p><p>  while(q!=NULL&&q->next!=p)/*它的尾結(jié)點不等于下一個的頭結(jié)點*/</p>&

70、lt;p>  q=q->next; </p><p>  q->next=p->next;</p><p><b>  free(p);</b></p><p>  printf("已退訂!\n");</p><p><b>  }</b></p&

71、gt;<p><b>  }</b></p><p><b>  }</b></p><p><b>  //顧客信息的輸出</b></p><p>  void List(linklist head) /*定義輸出顧客信息的子函數(shù)*/</p><

72、;p>  {system ("color 7d");</p><p>  listnode *p;</p><p><b>  p=head;</b></p><p>  printf("姓名 性別 證件 入住日期 天數(shù) 類型 備注\n");&l

73、t;/p><p>  printf("**********************************************************************\n");</p><p>  while(p->next!=NULL)</p><p><b>  {</b></p><p

74、>  printf("%s %s %s %s %s %s %s\n",p->next->data.name,p->next->data.sex,p->next->data.ID,p->next->data.come,p->next->data.day,p->next->data.type,p->next->data.

75、beizhu);</p><p>  p=p->next;</p><p><b>  }</b></p><p><b>  }</b></p><p>  int Menu()</p><p><b>  {</b></p>&l

76、t;p><b>  int i;</b></p><p>  printf(" \n");</p><p>  printf("

77、 \n");</p><p>  printf(" 主菜單 \n");</p><p>  printf("********************************

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

79、 1.查看客房信息 **\n");</p><p>  printf("** 2.客戶信息的創(chuàng)建 **\n");</p><p>  printf("** 3.客戶信息的查詢 **\n");</p

80、><p>  printf("** 4.退訂 **\n");</p><p>  printf("** 5.客戶信息的顯示 **\n");</p><p>  printf("**

81、 0.退出管理系統(tǒng) **\n"); </p><p>  printf("*******************************************************************************\n");</p><p>  printf("**************************

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

83、uot; 請 選 擇 0-5:");</p><p><b>  for(;;)</b></p><p><b>  {</b></p><p>  scanf("%d",&i);</p><p>  pr

84、intf("\n");</p><p>  if(i<0||i>5)</p><p>  printf(" 輸出錯誤,重選0-5:");</p><p><b>  else </b></p><p><b>  bre

85、ak ; </b></p><p><b>  }</b></p><p><b>  return i;</b></p><p><b>  }</b></p><p>  main() /*主函數(shù)*/</p><p>

86、;  {system ("color 3e");</p><p>  printf(" **********歡迎使用酒店自助服務(wù)系統(tǒng)********** \n");</p><p><b>  for(;;)</b></p><p><b>

87、;  {</b></p><p>  switch(Menu()) /*調(diào)用主菜單子函數(shù)*/</p><p>  { case 1: printf("類型1 豪華套房 1080元/晚\n ") printf("類型2 普通套房 480元/晚\n ");<

88、;/p><p>  printf("類型3 雙人標間 280元/晚\n ");</p><p>  printf("類型4 單人標間 220元/晚\n ");</p><p><b>  break;</b></p><p><b>  case 2:

89、</b></p><p>  printf("*********************************請輸入您的信息*****************************\n");</p><p>  printf("輸入你想創(chuàng)建的數(shù)目:");</p><p>  scanf("%d&quo

90、t;,&i);</p><p>  head=Create(i);</p><p><b>  break;</b></p><p><b>  case 3:</b></p><p>  printf("********************************客戶信息的查

91、詢*******************************\n");</p><p>  p=Find(head); /*調(diào)用查找個人信息的子函數(shù)*/</p><p>  if(p!=NULL)</p><p><b>  {</b></p><p>  printf("姓名

92、性別 證件 入住日期 天數(shù) 類型 備注\n");</p><p>  printf("**********************************************************************\n");</p><p>  printf("%s %s %s %s %s %s %s\n",p-&g

93、t;data.name,p->data.sex,p->data.ID,p->data.come,p->data.day,</p><p>  p->data.beizhu);</p><p>  printf("\n");</p><p>  printf("************************

94、**********************************************\n"); </p><p><b>  } </b></p><p><b>  else </b></p><p>  printf("該客戶信息不存在!"); </p>&l

95、t;p><b>  break;</b></p><p><b>  case 4:</b></p><p>  printf("************************************退訂**********************************\n");</p><p&g

96、t;  Delete(head);</p><p><b>  break;</b></p><p><b>  case 5:</b></p><p>  printf("*******************************客戶信息的輸出******************************\n

97、");</p><p>  List(head); /*調(diào)用輸出個人信息的子函數(shù)*/</p><p><b>  break;</b></p><p><b>  case 0:</b></p><p>  printf("***********************

98、************退出**************************************\n");</p><p><b>  exit(0);</b></p><p><b>  }</b></p><p><b>  }</b></p><p>&

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論