《c語言程序設(shè)計(jì)》課程設(shè)計(jì)報(bào)告---商品訂購系統(tǒng)設(shè)計(jì)_第1頁
已閱讀1頁,還剩41頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  《C語言程序設(shè)計(jì)》</b></p><p><b>  課程設(shè)計(jì)報(bào)告</b></p><p>  學(xué) 院:_電氣與信息工程學(xué)院_ 專業(yè)班級: </p><p>  學(xué)生姓名: 學(xué) 號: </p

2、><p>  設(shè)計(jì)地點(diǎn)(單位)________計(jì)算機(jī)自主學(xué)習(xí)中心 ________ __設(shè)計(jì)題目:________商品訂購系統(tǒng)設(shè)計(jì) ________ ____</p><p>  完成日期: 2012 年1月13日 </p><p>  指導(dǎo)教師評語: ______________________ _________________</p&

3、gt;<p>  _________________________________________________________________________________________________________________________________________________________________________________________________________

4、 __________ _ </p><p>  成績(五級記分制):______ __________ 指導(dǎo)教師(簽字):________ ________ </p><p><b>  摘 要</b></p><p>  通過本軟件的學(xué)習(xí)、編譯。

5、可以很好的掌握程序中結(jié)構(gòu)體的運(yùn)用、界面的使用等,以及更熟練的掌握了使用fprintf與fscanf向文件讀寫一組數(shù)據(jù)??梢酝耆?、熟練的、掌握、運(yùn)用switch語句來實(shí)現(xiàn)多分支選擇結(jié)構(gòu)。同時(shí),使用、學(xué)習(xí)者也能夠?qū)W習(xí)、知道程序的許多細(xì)節(jié)問題通過每個(gè)函數(shù)模塊模式。以上這些的學(xué)習(xí)對今后的學(xué)習(xí)、編譯程序,以及學(xué)習(xí)好程序設(shè)計(jì)課程都有很大的幫助。</p><p>  關(guān)鍵詞:結(jié)構(gòu)體 界面 fread switch語句 &

6、lt;/p><p><b>  課程設(shè)計(jì)任務(wù)書</b></p><p>  設(shè)計(jì)題目:商品訂購系統(tǒng)設(shè)計(jì)</p><p><b>  目錄</b></p><p><b>  摘 要2</b></p><p><b>  課程設(shè)計(jì)任務(wù)書3<

7、/b></p><p>  1 軟件需求分析說明書6</p><p>  2 系統(tǒng)設(shè)計(jì)與分析7</p><p>  2.1 軟件界面設(shè)計(jì)7</p><p>  2.1.1第一模塊界面及實(shí)現(xiàn)代碼7</p><p>  2.1.3 第三模塊的實(shí)現(xiàn)及代碼10</p><p>  2

8、.1.4 第四模塊的實(shí)現(xiàn)及代碼14</p><p>  2.1.5 第五模塊的實(shí)現(xiàn)及代碼15</p><p>  2.1.6 第六模塊的實(shí)現(xiàn)及代碼18</p><p>  2.2 軟件的數(shù)據(jù)(結(jié)構(gòu))設(shè)計(jì)21</p><p>  2.3 軟件的算法設(shè)計(jì)22</p><p>  2.4 數(shù)據(jù)結(jié)構(gòu)分析23<

9、/p><p>  3 設(shè)計(jì)體會與小結(jié)24</p><p><b>  致謝25</b></p><p><b>  參考文獻(xiàn)26</b></p><p><b>  附錄127</b></p><p>  1 軟件需求分析說明書</p>

10、<p>  本軟件實(shí)現(xiàn)了商品信息的添加、刪除、修改、搜索,以及顯示商品的全部信息。使用者能夠很好的查看商品信息,以及訂購商品。</p><p>  本軟件的界面需要顯示各個(gè)單一功能的目錄,然后通過switch語句來實(shí)現(xiàn)各個(gè)單一功能的分支選擇,把界面與函數(shù)聯(lián)系起來。最終實(shí)現(xiàn)了,通過界面來達(dá)到軟件的要求。</p><p>  2 系統(tǒng)設(shè)計(jì)與分析</p><p

11、>  2.1 軟件界面設(shè)計(jì)</p><p>  畫出軟件全部輸入、輸出數(shù)據(jù)的界面,并對每一個(gè)界面進(jìn)行詳細(xì)的操作說明;</p><p>  2.1.1第一模塊界面及實(shí)現(xiàn)代碼</p><p><b>  圖如下:</b></p><p>  圖2.1主菜單的界面圖</p><p><b&g

12、t;  其對應(yīng)的函數(shù)如下:</b></p><p>  int main(void)</p><p><b>  {</b></p><p><b>  int i;</b></p><p>  wenbenload();</p><p><b>  d

13、o</b></p><p><b>  {</b></p><p>  system("cls");</p><p>  printf("\n\n\n\n\n\n");</p><p>  printf("**************************歡

14、迎使用商品訂購系統(tǒng)v1.0******************************\n");</p><p>  printf(" 作者: 計(jì)科1102 姚茂源\n");</p><p>  printf(" ┏━━━━━━━━━━━━━━━━━━━┓\n"

15、);</p><p>  printf(" ┃ 1.瀏覽商品信息 ┃\n");</p><p>  printf(" ┃ 2.訂購商品 ┃\n");</p><p>  p

16、rintf(" ┃ 3.訂單查詢 ┃\n");</p><p>  printf(" ┃ 4.搜索商品 ┃\n");</p><p>  printf("

17、 ┃ 5.管理菜單 ┃\n");</p><p>  printf(" ┃ 0.退出系統(tǒng) ┃\n");</p><p>  printf(" ┗━━━━━━━━━━━━━━━━━━━

18、┛\n");</p><p>  printf("********************************************************************************\n");</p><p>  printf("\n\n\t\t請輸入你的操作(0~5): ");</p><p

19、>  scanf("%d",&i); </p><p><b>  switch(i)</b></p><p><b>  {</b></p><p>  case 1: </p><

20、;p>  system("cls");</p><p>  scanproduct();</p><p><b>  break;</b></p><p>  case 2: </p><p>  system("cls");</p><p&

21、gt;  dinggou();</p><p><b>  break;</b></p><p>  case 3: </p><p>  system("cls");</p><p>  lookdinggou();</p><p

22、><b>  break;</b></p><p>  case 4: </p><p>  searchproduct();</p><p><b>  break;</b></p><p>  case 5:

23、 </p><p>  secondmain();</p><p><b>  break;</b></p><p>  case 0: //退出系統(tǒng)的界面</p><p>  system("cls");</p>

24、<p>  printf("\n\n\n\n\n\n\n\n");</p><p>  printf("\n\n\t\t\t歡迎使用本系統(tǒng)\n\n\n\n\n\t\t\t歡迎再次使用\n");</p><p>  exit(0); //exit用于隨時(shí)結(jié)束程序} </p

25、><p>  }while(1); </p><p><b>  return 0;</b></p><p><b>  }</b></p><p>  其中的wenbenload()用于從文本中導(dǎo)入商品信息。</p><p&g

26、t;  如文本不存在則出現(xiàn)下圖</p><p>  圖2.2商品信息文本不存在的界面圖</p><p>  2.1.2 第二模塊的界面及實(shí)現(xiàn)代碼</p><p>  如果選擇的操作是主界面的1時(shí),而產(chǎn)品文件為建立時(shí)會顯示下圖:</p><p>  圖2.3第二模塊界面圖</p><p>  該程序的實(shí)現(xiàn)是通過以下代碼實(shí)

27、現(xiàn)的:</p><p>  void scanproduct()</p><p><b>  {</b></p><p><b>  int i;</b></p><p>  system("cls");</p><p>  printf("\t

28、\t\t\t\t商品信息列表\n");</p><p>  for (i = 0; i < inumber; i++)</p><p><b>  {</b></p><p>  printf("名稱 : %s\n",a[i].name);</p><p>  printf(&quo

29、t;貨號 : %d\n",a[i].number);</p><p>  printf("廠家 : %s\n",a[i].vender);</p><p>  printf("產(chǎn)地 : %s\n",a[i].filed);</p><p>  printf("存量 : %d\n",a[i]

30、.stock);</p><p>  printf("單價(jià) : %.2lf\n\n\n",a[i].unvalent);</p><p><b>  }</b></p><p>  printf("\n\n\n\n\n\n\t\t\t");</p><p>  printf(&q

31、uot;返回主菜單\n");</p><p>  printf("\t\t\t");</p><p>  system("pause");</p><p><b>  return;</b></p><p><b>  }</b></p>

32、<p>  2.1.3 第三模塊的實(shí)現(xiàn)及代碼</p><p>  在主菜單中選擇2進(jìn)入商品訂購界面,界面如下:</p><p><b>  圖2.4商品訂購</b></p><p>  圖2.5 輸入商品訂單信息</p><p>  該程序?qū)崿F(xiàn)代碼如下:</p><p>  void

33、 dinggou() </p><p><b>  {</b></p><p><b>  char ch;</b></p><p>  int i, j, t, c = 1;</p><p>  int n = 1;</p><p>  int m = 0;</

34、p><p><b>  do</b></p><p><b>  {</b></p><p><b>  switch(n)</b></p><p><b>  {</b></p><p><b>  case 1:</

35、b></p><p>  system("cls");</p><p>  printf("\t\t\t\t商品信息列表\n");</p><p>  //顯示商品的名稱、貨號信息,以便于訂購</p><p>  printf("名稱\t 貨號\t 庫存\n");</p

36、><p>  for (i = 0; i < inumber; i++)</p><p><b>  {</b></p><p>  printf("%s\t %d\t %d\n\n\n",a[i].name,a[i].number,a[i].stock);</p><p><b>

37、  }</b></p><p>  printf("\n\n\n");</p><p>  printf("\t\t\t\t商品訂單\n");</p><p>  printf("\n\t\t\t請輸入你的第%d個(gè)訂單信息:\n",m + 1);</p><p>  pr

38、intf("\n\t\t\t貨號:");</p><p>  fflush(stdin);</p><p>  scanf("%d",&b[ibuy].bgname);</p><p>  //檢測是否含有此商品</p><p><b>  j = 1;</b></p

39、><p>  for (i = 0; i < inumber; i++)</p><p><b>  {</b></p><p>  if(a[i].number == b[ibuy].bgname)</p><p><b>  {</b></p><p><b>

40、;  j = 0;</b></p><p><b>  t = i;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  //若有商品繼續(xù)購買項(xiàng)目</p><p>  if(j == 0

41、)</p><p><b>  {</b></p><p>  printf("\n\t\t\t訂購量:");</p><p>  fflush(stdin);</p><p>  scanf("%d",&b[ibuy].bmany);</p><p&g

42、t;  if (a[t].stock >= b[ibuy].bmany)</p><p><b>  {</b></p><p>  a[t].stock = a[t].stock - b[ibuy].bmany; //顧客購買后商品的庫存計(jì)算</p><p>  printf("\n\t\t\t日期時(shí)間:"

43、;);</p><p>  fflush(stdin);</p><p>  scanf("%d",&b[ibuy].btime);</p><p>  printf("\n\t\t\t客戶名:");</p><p>  fflush(stdin);</p><p> 

44、 gets(b[ibuy].bname);</p><p>  printf("\n\t\t\t客戶地址:");</p><p>  fflush(stdin);</p><p>  gets(b[ibuy].baddress);</p><p>  printf("\n\t\t\t客戶號:");&l

45、t;/p><p>  b[ibuy].bnumber = bgnumber;</p><p>  printf("%d\n",b[ibuy].bnumber);</p><p>  bgnumber++;</p><p><b>  ibuy++;</b></p><p><

46、b>  m++;</b></p><p>  printf("\n\n\n\t\t\t\t");</p><p>  system("pause");</p><p><b>  }</b></p><p><b>  else</b><

47、;/p><p><b>  {</b></p><p>  printf("\n\n\t\t\t訂購數(shù)目超出庫存\n");</p><p>  printf("\t\t\t");</p><p>  system("pause");</p><p

48、><b>  }</b></p><p><b>  }</b></p><p>  //若沒有商品的提示及操作</p><p><b>  else</b></p><p><b>  {</b></p><p>  pri

49、ntf("\n\n\t\t\t查無此貨\n");</p><p>  printf("\t\t\t");</p><p>  system("pause");</p><p><b>  }</b></p><p><b>  case 2:<

50、/b></p><p>  printf("是否繼續(xù)輸入訂購?(Y/N)");</p><p>  fflush(stdin);</p><p>  scanf("%c",&ch);</p><p>  if(ch == 'N' || ch == 'n')&

51、lt;/p><p><b>  {</b></p><p><b>  c = 0;</b></p><p><b>  break;</b></p><p><b>  }</b></p><p>  else if(ch == &#

52、39;Y' || ch == 'y')</p><p><b>  {</b></p><p><b>  c = 0;</b></p><p><b>  n = 1;</b></p><p><b>  break;</b>&l

53、t;/p><p><b>  }</b></p><p>  else if(ch != 'n' || ch != 'N' || ch != 'Y' || ch != 'y')</p><p><b>  {</b></p><p><

54、;b>  n = 0;</b></p><p><b>  c = 1;</b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  case 0:</b></p&g

55、t;<p>  if(c == 1)</p><p><b>  {</b></p><p><b>  n = 2;</b></p><p><b>  }</b></p><p><b>  }</b></p><p

56、>  }while(ch != 'n' && ch != 'N');</p><p>  system("cls");</p><p><b>  return ;</b></p><p><b>  }</b></p><p&

57、gt;  2.1.4 第四模塊的實(shí)現(xiàn)及代碼</p><p>  在主菜單中選擇3進(jìn)入商品訂購界面,界面如下:</p><p>  圖2.6訂單查詢界面</p><p>  該程序?qū)崿F(xiàn)代碼如下:</p><p>  void lookdinggou() </p><p><b>  {</b>

58、</p><p><b>  int i;</b></p><p>  system("cls");</p><p>  printf("\t\t\t\t\t訂單列表\n");</p><p>  for (i = 0; i < ibuy; i++)</p>&

59、lt;p><b>  {</b></p><p>  printf("貨號 : %d\n",b[i].bgname);</p><p>  printf("訂購量 : %d\n",b[i].bmany);</p><p>  printf("日期時(shí)間 : %d\n&quo

60、t;,b[i].btime);</p><p>  printf("客戶名 : %s\n",b[i].bname);</p><p>  printf("客戶地址 : %s\n",b[i].baddress);</p><p>  printf("客戶號 : %d\n\n\n",b[i].bn

61、umber);</p><p><b>  }</b></p><p>  printf("\n\n\n\n\n\n\t\t\t");</p><p>  printf("返回主菜單\n");</p><p>  printf("\t\t\t");</p&

62、gt;<p>  system("pause");</p><p><b>  return;</b></p><p><b>  }</b></p><p>  該代碼中用到了指針,并用到了鏈表的建立和刪除,當(dāng)然也涉及到了結(jié)構(gòu)體。</p><p>  2.1.5

63、第五模塊的實(shí)現(xiàn)及代碼</p><p>  在主菜單中選擇4進(jìn)入商品訂購界面,界面如下:</p><p><b>  圖2.7商品搜索1</b></p><p><b>  圖2.8商品搜索2</b></p><p><b>  通過以下代碼實(shí)現(xiàn):</b></p>

64、<p>  void searchproduct()</p><p><b>  {</b></p><p><b>  int i;</b></p><p><b>  int j;</b></p><p><b>  char ch;</b>

65、</p><p>  int n = 1;</p><p><b>  do</b></p><p><b>  {</b></p><p><b>  switch(n)</b></p><p><b>  {</b></

66、p><p><b>  case 1:</b></p><p>  system("cls");</p><p>  printf("\t\t\t\t商品列表\n");</p><p>  //顯示商品的名稱、貨號信息,以便于下部的刪除</p><p>  f

67、or (i = 0; i < inumber; i++)</p><p><b>  {</b></p><p>  printf("名稱 : %s\n",a[i].name);</p><p>  printf("ID : %d\n",i);</p><p>  pri

68、ntf("庫存 : %d\n\n\n",a[i].stock);</p><p><b>  }</b></p><p><b>  //商品的搜索</b></p><p>  printf("\n\n\n\t\t\t\t請輸入你要搜索商品的ID:");</p>&l

69、t;p>  scanf("%d",&j);</p><p>  if(0<=j&&j<=inumber)</p><p><b>  {</b></p><p>  printf("名稱 : %s\n",a[j].name);</p><p&

70、gt;  printf("貨號 : %d\n",a[j].number);</p><p>  printf("廠家 : %s\n",a[j].vender);</p><p>  printf("產(chǎn)地 : %s\n",a[j].filed);</p><p>  printf("存量 :

71、 %d\n",a[j].stock);</p><p>  printf("單價(jià) : %.2lf\n\n\n",a[j].unvalent);</p><p><b>  }</b></p><p><b>  case 2:</b></p><p>  printf

72、("是否繼續(xù)搜索商品?(Y/N)");</p><p>  fflush(stdin);</p><p>  scanf("%c",&ch);</p><p>  if(ch == 'N'|| ch == 'n')</p><p><b>  {<

73、/b></p><p><b>  break;</b></p><p><b>  }</b></p><p>  if(ch ==' Y'|| ch == 'y')</p><p><b>  {</b></p><

74、p><b>  n = 1;</b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  }while(ch != 'n' &&

75、amp; ch != 'N');</p><p>  printf("\n\n\n\n\n\n\t\t\t");</p><p>  printf("返回主菜單!\n");</p><p>  printf("\t\t\t");</p><p>  system(&q

76、uot;pause");</p><p><b>  return;</b></p><p><b>  }</b></p><p>  2.1.6 第六模塊的實(shí)現(xiàn)及代碼</p><p>  該代碼用于管理者使用的,界面如下:</p><p><b>  

77、圖2.9 二級菜單</b></p><p><b>  該代碼如下:</b></p><p>  void secondmain()</p><p><b>  {</b></p><p><b>  int i;</b></p><p>&

78、lt;b>  do</b></p><p><b>  {</b></p><p>  system("cls");</p><p>  printf("\n\n\n\n\n\n\n");</p><p>  printf("************

79、******************管理維護(hù)子菜單************************************\n\n");</p><p>  printf(" ┏━━━━━━━━━━━━━━━━━━━┓\n");</p><p>  printf(" ┃

80、 1.輸入全部商品 ┃\n");</p><p>  printf(" ┃ 2.增加商品 ┃\n");</p><p>  printf(" ┃ 3.刪除商品

81、 ┃\n");</p><p>  printf(" ┃ 4.儲存商品 ┃\n");</p><p>  printf(" ┃ 5.儲存訂單 ┃\n");</p>

82、<p>  printf(" ┃ 0.返回上一級 ┃\n");</p><p>  printf(" ┗━━━━━━━━━━━━━━━━━━━┛\n\n\n");</p><p>  printf("********

83、************************************************************************\n\n\n\n\n");</p><p>  printf("\n\n\t\t請輸入你所要選擇的功能(0~5): ");</p><p>  scanf("%d",&i);

84、 </p><p><b>  switch(i)</b></p><p><b>  {</b></p><p>  case 1: </p><p>  system("cls");</p>

85、;<p>  jianpanload ();</p><p><b>  break;</b></p><p>  case 2: </p><p>  system("cls");</p><p>  addproduct();</p><p>&

86、lt;b>  break;</b></p><p>  case 3: </p><p>  system("cls");</p><p>  deleteproduct();</p><p><b>  break;</b></p><p> 

87、 case 4: </p><p>  system("cls");</p><p>  saveproduct();</p><p><b>  break;</b></p><p>  case 5: </p><p>  system(&q

88、uot;cls");</p><p>  savedinggou();</p><p><b>  break;</b></p><p>  case 0: </p><p>  system("cls");</p>&

89、lt;p>  return ; </p><p><b>  }</b></p><p>  }while(1);</p><p>  printf("\t\t\t\t");</p><p>  system("pause&q

90、uot;);</p><p>  system("cls");</p><p><b>  return;</b></p><p>  }該代碼用于商品信息文件的建立生成,存儲商品信息和訂單。</p><p>  2.2 軟件的數(shù)據(jù)(結(jié)構(gòu))設(shè)計(jì)</p><p>  先定義全局變

91、量用于控制商品數(shù)量和訂單數(shù)量如下:</p><p>  #include <stdio.h></p><p>  #include <windows.h></p><p>  #include <string.h></p><p>  #include <assert.h></p>

92、<p>  #include <stdlib.h></p><p>  int bgnumber = 023; //客戶號</p><p>  int inumber = 0; //商品量的統(tǒng)計(jì)</p><p>  int ibuy = 0; //訂單的統(tǒng)計(jì)</

93、p><p>  void secondmain();//管理維護(hù)子菜單</p><p>  void jianpanload(); //輸入商品</p><p>  void scanproduct(); //瀏覽商品</p><p>  void searchproduct(); //搜索商品</p>&

94、lt;p>  void dinggou(); //訂購商品</p><p>  void lookdinggou(); //查詢訂單</p><p>  void addproduct(); //增加商品</p><p>  void deleteproduct(); //刪除商品</p><p>  vo

95、id saveproduct(); //保存商品</p><p>  void savedinggou(); //保存訂單</p><p>  void wenbenload(); //從文本導(dǎo)入商品</p><p>  struct product</p><p><b>  {</b></p&

96、gt;<p>  char name[30];//商品名</p><p>  int number;//貨號</p><p>  char vender[30];//廠家</p><p>  char filed[100];//產(chǎn)地</p><p>  int stock;//存量</p>&l

97、t;p>  double unvalent;//單價(jià)</p><p><b>  };</b></p><p>  struct product a[100];</p><p>  struct dinggou </p><p><b>  {</b></p><p&g

98、t;  int bgname; //貨號</p><p>  int bmany; //訂購量</p><p>  int btime; //日期時(shí)間</p><p>  char bname[100]; //客戶名</p><p>  char baddress[100]; //客戶地址</p>

99、<p>  int bnumber; //客戶號</p><p><b>  };</b></p><p>  struct dinggou b[100];</p><p>  2.3 軟件的算法設(shè)計(jì)</p><p>  畫出整個(gè)軟件的模塊圖、并對每一個(gè)模塊圖的算法用程序流程圖、功是偽代碼來實(shí)現(xiàn)<

100、/p><p>  現(xiàn)行系統(tǒng)組織結(jié)構(gòu)圖如下:</p><p>  圖2.10主結(jié)構(gòu)模塊示意圖</p><p>  圖2.11 二級結(jié)構(gòu)模塊示意圖</p><p>  圖2.12搜索模塊示意圖</p><p>  2.4 數(shù)據(jù)結(jié)構(gòu)分析</p><p>  使用整型,雙精度,字符型定義變量和函數(shù)。使用結(jié)構(gòu)

101、體,類等概念實(shí)現(xiàn)數(shù)據(jù)存儲。同時(shí)也用這些自定義類型定義了變量和函數(shù)。體現(xiàn)面向?qū)ο笤O(shè)計(jì)的特點(diǎn)。</p><p><b>  軟件的實(shí)現(xiàn)</b></p><p>  軟件涉及到核心功能模塊進(jìn)行設(shè)計(jì)實(shí)現(xiàn),并對關(guān)鍵代碼進(jìn)行分析闡述。</p><p><b>  3 設(shè)計(jì)體會與小結(jié)</b></p><p>  

102、在做了課程實(shí)驗(yàn)以后,我對c++的了解更深了,很多知識得到了鞏固,一些不懂的知識也漸漸明了!這其中主要是對類的封裝收獲最多,在其類的封裝過程中,對數(shù)據(jù)的訪問控制也是比較重要,我相信這對以后的學(xué)習(xí)其它面向?qū)ο蟪绦蛟O(shè)計(jì)有很大幫助!</p><p>  作了產(chǎn)品訂購系統(tǒng)程序后,我對類和對象更加熟悉了,作為c++所特有的指針,類和對象在編寫程序過程中運(yùn)用十分廣泛,我必須多加練習(xí)才能達(dá)到一定的水平,類和對象,指針都是非常重要

103、的!</p><p>  在完完整整得做完一個(gè)程序后,我對程序的整體性有了一個(gè)明確的認(rèn)識,做程序必須注意程序前后的聯(lián)系,要具有清晰的思路,程序要具有層次。對整體性的把握至關(guān)重要!</p><p>  學(xué)習(xí)計(jì)算機(jī)語言最重要的就是上機(jī)操作,我深感自己動手能力比較差,在以后學(xué)習(xí)中,還必須多多上機(jī)調(diào)試程序,從實(shí)踐中多積累經(jīng)驗(yàn),為以后工作打下堅(jiān)實(shí)基礎(chǔ)。</p><p><

104、;b>  致謝</b></p><p>  通過此次的課程設(shè)計(jì),我不僅學(xué)會了很多有關(guān)c語言的知識,還學(xué)會了很多道理。心之所向,所向披靡。只要用心,就能克服種種困難,最終有所收獲。</p><p>  此次課程設(shè)計(jì)要感xx老師的輔導(dǎo),以及xx老師所授的c語言知識,還有一些同學(xué)和學(xué)長的指導(dǎo),由于他們的輔導(dǎo)與幫助才完成了課程設(shè)計(jì)。謝謝!</p><p>

105、<b>  參考文獻(xiàn)</b></p><p>  [1]何欽銘 顏暉.《C語言程序設(shè)計(jì)》.高等教育出版社.2008年</p><p>  [2]譚浩強(qiáng) 張基溫.《C語言程序設(shè)計(jì)教程》.高等教育出版社.2006年</p><p><b>  附錄1</b></p><p>  程序清單及相應(yīng)的注釋:&

106、lt;/p><p>  #include <stdio.h></p><p>  #include <windows.h></p><p>  #include <string.h></p><p>  #include <assert.h></p><p>  #inclu

107、de <stdlib.h></p><p>  int bgnumber = 023; //客戶號</p><p>  int inumber = 0; //商品量的統(tǒng)計(jì)</p><p>  int ibuy = 0; //訂單的統(tǒng)計(jì)</p><p>  

108、void secondmain();//管理維護(hù)子菜單</p><p>  void jianpanload(); //輸入商品</p><p>  void scanproduct(); //瀏覽商品</p><p>  void searchproduct(); //搜索商品</p><p>  void din

109、ggou(); //訂購商品</p><p>  void lookdinggou(); //查詢訂單</p><p>  void addproduct(); //增加商品</p><p>  void deleteproduct(); //刪除商品</p><p>  void saveproduct();

110、 //保存商品</p><p>  void savedinggou(); //保存訂單</p><p>  void wenbenload(); //從文本導(dǎo)入商品</p><p>  struct product</p><p><b>  {</b></p><p>  ch

111、ar name[30];//商品名</p><p>  int number;//貨號</p><p>  char vender[30];//廠家</p><p>  char filed[100];//產(chǎn)地</p><p>  int stock;//存量</p><p>  double un

112、valent;//單價(jià)</p><p><b>  };</b></p><p>  struct product a[100];</p><p>  struct dinggou </p><p><b>  {</b></p><p>  int bgname;

113、 //貨號</p><p>  int bmany; //訂購量</p><p>  int btime; //日期時(shí)間</p><p>  char bname[100]; //客戶名</p><p>  char baddress[100]; //客戶地址</p><p>  int b

114、number; //客戶號</p><p><b>  };</b></p><p>  struct dinggou b[100];</p><p>  int main(void)</p><p><b>  {</b></p><p><b>  int

115、i;</b></p><p>  wenbenload();</p><p><b>  do</b></p><p><b>  {</b></p><p>  system("cls");</p><p>  printf("\n

116、\n\n\n\n\n");</p><p>  printf("**************************歡迎使用商品訂購系統(tǒng)v1.0******************************\n");</p><p>  printf(" 作者: 計(jì)科1102 姚茂源\n");

117、</p><p>  printf(" ┏━━━━━━━━━━━━━━━━━━━┓\n");</p><p>  printf(" ┃ 1.瀏覽商品信息 ┃\n");</p><p>  printf("

118、 ┃ 2.訂購商品 ┃\n");</p><p>  printf(" ┃ 3.訂單查詢 ┃\n");</p><p>  printf(" ┃

119、 4.搜索商品 ┃\n");</p><p>  printf(" ┃ 5.管理菜單 ┃\n");</p><p>  printf(" ┃ 0.退出系統(tǒng) ┃\

120、n");</p><p>  printf(" ┗━━━━━━━━━━━━━━━━━━━┛\n");</p><p>  printf("********************************************************************************\n");&l

121、t;/p><p>  printf("\n\n\t\t請輸入你的操作(0~5): ");</p><p>  scanf("%d",&i); </p><p><b>  switch(i)</b></p><p><b>  {

122、</b></p><p>  case 1: </p><p>  system("cls");</p><p>  scanproduct();</p><p><b>  break;</b></p><p> 

123、 case 2: </p><p>  system("cls");</p><p>  dinggou();</p><p><b>  break;</b></p><p>  case 3: </p><p>

124、;  system("cls");</p><p>  lookdinggou();</p><p><b>  break;</b></p><p>  case 4: </p><p>  searchproduct();</p>&

125、lt;p><b>  break;</b></p><p>  case 5: </p><p>  secondmain();</p><p><b>  break;</b></p><p>  case 0:

126、 //退出系統(tǒng)的界面</p><p>  system("cls");</p><p>  printf("\n\n\n\n\n\n\n\n");</p><p>  printf("\n\n\t\t\t歡迎使用本系統(tǒng)\n\n\n\n\n\t\t\t歡迎再次使用\n");<

127、/p><p>  exit(0); //exit用于在程序運(yùn)行的過程中隨時(shí)結(jié)束程序</p><p><b>  } </b></p><p>  }while(1); </p><p><b>  re

128、turn 0;</b></p><p><b>  }</b></p><p><b>  //瀏覽商品</b></p><p>  void scanproduct()</p><p><b>  {</b></p><p><b&g

129、t;  int i;</b></p><p>  system("cls");</p><p>  printf("\t\t\t\t\t商品信息列表\n");</p><p>  for (i = 0; i < inumber; i++)</p><p><b>  {<

130、;/b></p><p>  printf("名稱 : %s\n",a[i].name);</p><p>  printf("貨號 : %d\n",a[i].number);</p><p>  printf("廠家 : %s\n",a[i].vender);</p><p

131、>  printf("產(chǎn)地 : %s\n",a[i].filed);</p><p>  printf("存量 : %d\n",a[i].stock);</p><p>  printf("單價(jià) : %.2lf\n\n\n",a[i].unvalent);</p><p><b>  

132、}</b></p><p>  printf("\n\n\n\n\n\n\t\t\t");</p><p>  printf("返回主菜單\n");</p><p>  printf("\t\t\t");</p><p>  system("pause"

133、;);</p><p><b>  return;</b></p><p><b>  }</b></p><p><b>  //商品的訂購</b></p><p>  void dinggou() </p><p><b>  {&l

134、t;/b></p><p><b>  char ch;</b></p><p>  int i, j, t, c = 1;</p><p>  int n = 1;</p><p>  int m = 0;</p><p><b>  do</b></p>

135、<p><b>  {</b></p><p><b>  switch(n)</b></p><p><b>  {</b></p><p><b>  case 1:</b></p><p>  system("cls"

136、;);</p><p>  printf("\t\t\t\t商品信息列表\n");</p><p>  //顯示商品的名稱、貨號信息,以便于訂購</p><p>  printf("名稱\t 貨號\t 庫存\n");</p><p>  for (i = 0; i < inumber; i++)

137、</p><p><b>  {</b></p><p>  printf("%s\t %d\t %d\n\n\n",a[i].name,a[i].number,a[i].stock);</p><p><b>  }</b></p><p>  printf("

138、\n\n\n");</p><p>  printf("\t\t\t\t商品訂單\n");</p><p>  printf("\n\t\t\t請輸入你的第%d個(gè)訂單信息:\n",m + 1);</p><p>  printf("\n\t\t\t貨號:");</p><p&g

139、t;  fflush(stdin);</p><p>  scanf("%d",&b[ibuy].bgname);</p><p>  //檢測是否含有此商品</p><p><b>  j = 1;</b></p><p>  for (i = 0; i < inumber; i++)

140、</p><p><b>  {</b></p><p>  if(a[i].number == b[ibuy].bgname)</p><p><b>  {</b></p><p><b>  j = 0;</b></p><p><b>

141、  t = i;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  //若有商品繼續(xù)購買項(xiàng)目</p><p>  if(j == 0)</p><p><b>  {</b></

142、p><p>  printf("\n\t\t\t訂購量:");</p><p>  fflush(stdin);</p><p>  scanf("%d",&b[ibuy].bmany);</p><p>  if (a[t].stock >= b[ibuy].bmany)</p>

143、<p><b>  {</b></p><p>  a[t].stock = a[t].stock - b[ibuy].bmany; //顧客購買后商品的庫存計(jì)算</p><p>  printf("\n\t\t\t日期時(shí)間:");</p><p>  fflush(stdin);</p&g

144、t;<p>  scanf("%d",&b[ibuy].btime);</p><p>  printf("\n\t\t\t客戶名:");</p><p>  fflush(stdin);</p><p>  gets(b[ibuy].bname);</p><p>  print

溫馨提示

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

最新文檔

評論

0/150

提交評論