c語言課程設計—超市收銀系統(tǒng)的設計與實現(xiàn)_第1頁
已閱讀1頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  課 程 設 計 報 告</p><p>  課程名稱 《C語言程序設計》 </p><p>  課題名稱 超市收銀系統(tǒng)的設計與實現(xiàn) </p><p>  專 業(yè) 統(tǒng)計學 </p><p>  班

2、級 </p><p>  學 號 </p><p>  姓 名 </p><p>  指導教師 <

3、/p><p>  2013年 5月20日</p><p>  課 程 設 計 任 務 書</p><p>  課程名稱 《C語言程序設計》 </p><p>  課 題超市收銀系統(tǒng)的設計與實現(xiàn)</p><p>  專業(yè)班級 統(tǒng)計1201班 </p>

4、<p>  學生姓名 </p><p>  學 號 </p><p>  指導老師 </p><p>  審 批

5、 </p><p>  任務書下達日期 2013 年 5月 20日</p><p>  任務完成日期 2013年 6月 23 日</p><p><b>  目 錄</b></p><p>  1.系統(tǒng)需求分析1</p><p><b>  1.1系統(tǒng)要求</b>&

6、lt;/p><p><b>  1.2功能要求</b></p><p><b>  2.總體設計1</b></p><p><b>  2.1模塊劃分</b></p><p>  2.2系統(tǒng)功能模塊圖</p><p><b>  2.3模塊功能說

7、明</b></p><p>  2.4商品函數(shù)數(shù)據(jù)類型</p><p><b>  3.詳細設計3</b></p><p>  3.1商品進貨流程圖</p><p>  3.2商品修改流程圖</p><p>  4.程序調試分析4</p><p><b

8、>  5.總結9</b></p><p>  6.系統(tǒng)使用說明9</p><p><b>  附件:源程序清單</b></p><p><b>  系統(tǒng)需求分析</b></p><p><b>  1.1系統(tǒng)要求:</b></p><p

9、>  實現(xiàn)對超市商品的收銀以及各項數(shù)據(jù)的顯示、查詢、修改、排序等操作的管理。</p><p><b>  1.2功能要求:</b></p><p>  1)本系統(tǒng)采用一個結構體數(shù)組,數(shù)據(jù)的結構應當包括:商品編號、商品名稱、單價、庫存量、購買量、總價、成本、利潤。</p><p>  2)本系統(tǒng)顯示這樣的菜單:</p><

10、;p><b>  請選擇系統(tǒng)功能項:</b></p><p><b>  收銀</b></p><p><b>  數(shù)據(jù)查詢</b></p><p><b>  數(shù)據(jù)管理</b></p><p><b> ?、?入庫</b>&l

11、t;/p><p><b>  ⑵ 刪除</b></p><p><b> ?、?修改</b></p><p><b>  利潤統(tǒng)計</b></p><p> ?、?按類統(tǒng)計利潤并排序</p><p><b>  ⑵ 統(tǒng)計總利潤</b>&

12、lt;/p><p><b>  退出系統(tǒng)</b></p><p>  3)執(zhí)行一個具體的功能之后,程序將重新顯示菜單。</p><p>  4)將數(shù)據(jù)保存到文件中。</p><p>  5)進入系統(tǒng)前要求先輸入密碼</p><p><b>  總體設計</b></p>

13、<p><b>  2.1模塊劃分</b></p><p>  首先輸入管理員的賬號、密碼,成功登入系統(tǒng),然后系統(tǒng)模塊分為“商品管理”、“商品銷售”、“查看利潤”三個部分。商品管理又包含:商品進貨,商品添加,商品瀏覽,商品搜索,商品刪除,商品修改或返回上一級。</p><p>  2.2系統(tǒng)功能模塊圖</p><p><b&

14、gt;  2.3模塊功能說明</b></p><p> ?。?).登入模塊:輸入賬號,密碼登入。</p><p>  (2).商品管理模塊:對商品條形碼,名稱,單價,庫存量,購買量,成本價,利潤等信息錄入的管理。還可對已建立的商品信息進行查詢,并且可根據(jù)需要選擇按商品名查詢或按商品種類查詢或按商品進貨量查詢。</p><p> ?。?).商品銷售模塊:輸

15、入要銷售商品條形碼,名稱以及數(shù)量,最后進行付款,找零,或者打印小票。</p><p><b>  (4).進貨模塊:</b></p><p>  錄入需要管理的商品信息并將信息保存于文件中,以方便日后進行打印、讀取、更新等操作。</p><p><b> ?。?).刪除模塊:</b></p><p>

16、;  可對過期的商品做刪除處理。</p><p><b> ?。?).修改模塊:</b></p><p>  可根據(jù)需要對多件商品信息進行修改,也可隨時對個別項進行修改。</p><p><b> ?。?).瀏覽模塊:</b></p><p>  將所有商品信息或想要查詢的商品信息顯示于屏幕,用于打

17、印商品信息或查找某些商品信息。</p><p><b> ?。?).利潤模塊:</b></p><p>  統(tǒng)計商品的利潤進行統(tǒng)計。</p><p> ?。?).返回上一級:</p><p>  選擇該項,自動返回上一級的選擇。</p><p>  2.4商品函數(shù)數(shù)據(jù)類型</p>&

18、lt;p><b>  3.詳細設計</b></p><p>  3.1 商品進貨流程圖</p><p><b>  y</b></p><p><b>  n</b></p><p><b>  n</b></p><p> 

19、 3.2商品修改流程圖</p><p><b>  y</b></p><p><b>  n</b></p><p>  n </p><p><b>  4. 程序調試分析</b></p><p>  1.首先輸入賬號、密碼,

20、登入收銀系統(tǒng)</p><p>  2.選擇商品菜單功能</p><p>  3..輸入進貨的商品條碼、名稱、單價、數(shù)量、售價</p><p>  4.修改商品名稱、單價、售價、庫存</p><p>  5.瀏覽所有商品信息</p><p><b>  6.查找商品</b></p>&

21、lt;p><b>  7.添加商品</b></p><p><b>  8.刪除部分商品</b></p><p><b>  9.購買商品</b></p><p><b>  5. 總結</b></p><p>  此次實踐課編寫的是一個應用程序,相

22、對于以前我們見到的程序,它要大得多,于是就按課本上的例子編了超市管理系統(tǒng),先把界面弄好然后再添加各模塊。忙碌了一個多星期,在大家的共同努力下,我們總算將此程序設計出來。盡管不是自己獨立完成,但仍然很高興,因為在設計的過程中,讓我了解到要設計一個大型程序,查找資料是至關重要的,在他人的基礎上,再根據(jù)自己所學進行修改與調試,現(xiàn)在在操作本程序時可根據(jù)提示進行相關操作,能正確輸出結果。這過程艱辛,但只要你持之以恒,成功指日可待。</p&g

23、t;<p>  在這次設計過程中,不僅復習課本上所學知識,還通過查資料、問同學, 學到了課本上沒有的知識。從而啟發(fā)我,要想寫好程序,在寫好課本知識的同時還需要多讀和專業(yè)有關的一些書籍,同時還需要多動腦子,盡量把所學的知識綜合起應用,除此之外,寫程序時必須要細心,不能輸錯一個字符標點,就連全角半角也得注意。在修改時要有耐心,編譯出錯后必須逐個錯誤去改正,絕不能心急浮躁,否則修改之后還會有新的錯誤。當然由于自己學的不夠好,知識

24、不夠豐富,在選題報告中還有一些不夠完美的地方。希望自己繼續(xù)努力,下次能做的更好。</p><p>  同時我想向所有為我的實習提供幫助和指導的老師和同學致謝,感謝你們?yōu)槲业捻樌麑嵙曀鞯呐蛶椭?lt;/p><p>  通過實踐的學習,我認識到學好計算機要重視實踐操作,不僅僅是學洗C語言,還是其它的語言,以及其它的計算機方面的知識都要重在實踐,所以后在學習過程中,我會更加注視實踐操作,使自

25、己便好地學好計算機。</p><p><b>  6. 系統(tǒng)使用說明</b></p><p>  (1)初次使用先添加管路員的賬號、密碼,密碼需要再次輸入 。 </p><p> ?。?)輸入正確的賬號、密碼即可登入成功,進入商品管理。</p><p> ?。?)添加商品時,只可添加已有條碼商品的數(shù)量,若添加新的商品則

26、進入進貨模塊。</p><p>  (4)修改商品時,可修改商品全部信息,也可以只是修改商品部分的信息。</p><p> ?。?)退出再次進入系統(tǒng)時,原來進貨的商品信息依然存在,方便操作。</p><p>  (6)退出系統(tǒng),再次登入,直接輸入賬號、密碼即可,無需再添加賬戶。</p><p>  計算機與通信學院課程設計評分表</p&

27、gt;<p>  課程名稱: C語言程序設計 </p><p>  教師簽名: </p><p>  日 期: </p><p><b>  附件:源程序清單</b></p><p>  #include <stdio.h></p>

28、;<p>  #include<string></p><p>  #include<windows.h></p><p>  void jieshao()//軟件介紹</p><p><b>  {</b></p><p>  printf("\t************

29、**************************************\n");</p><p>  printf("\t***** 歡 迎 來 到 超 市 收 銀 系 統(tǒng) ******\n");</p><p>  printf("\t**********************************************

30、***\n");</p><p><b>  }</b></p><p>  float zongjine=0;//消費總金額</p><p>  float chengben=0;//保存使用的成本</p><p>  float yingli=0;//保存盈利金額</p><p> 

31、 int guanshuliang=0;//記錄管理員數(shù)量</p><p>  int xiaoshuliang=0;//記錄銷售員數(shù)量</p><p>  int chenggong=0;//0則是管理員,非0則是銷售員。證明登陸是否成功</p><p>  int zhonglei=0;//記錄貨物種類</p><p>  int zhe

32、njia=0;//記錄是否是會員 0則不是會員1則是會員</p><p>  int diji=0;//記錄是會員編號</p><p>  int zongjifen=0;//記錄一共接受了多少積分</p><p>  struct huiyuan//定義會員信息結構</p><p><b>  {</b></

33、p><p>  float jifen;//記錄會員積分</p><p>  char name[50];//帳戶</p><p>  char mima[50];//密碼</p><p>  };huiyuan hui[1000000];//會員信息</p><p>  struct shangpin//定義商品結構體&

34、lt;/p><p><b>  {</b></p><p>  char name[50];//商品名</p><p>  char tiaoxinma[50];//條形碼</p><p>  float xiaoshoudanjia;//銷售單價</p><p>  float jinhuodanj

35、ia;//進貨單價</p><p>  int kucun;//庫存</p><p><b>  };</b></p><p>  shangpin shp[10000000];//用于保存商品的信息</p><p>  struct xiaoshouyuan//定義銷售員結構體</p><p>

36、<b>  {</b></p><p>  int cunzai;//用于記錄該銷售員是否存在,=-1則表示被刪除</p><p>  char zhanghu[20];//銷售員帳戶</p><p>  char mima[20];//銷售員密碼</p><p>  };xiaoshouyuan xiao[50];

37、</p><p>  struct guanliyuan//定義管理員結構體</p><p><b>  {</b></p><p>  int cunzai;//用于記錄該管理員員是否存在,=-1則表示被刪除</p><p>  char zhanghu[20];//管理員帳戶</p><p>

38、  char mima[20];//管理員密碼</p><p>  };guanliyuan guan[100];</p><p>  FILE *fp;//定義一個FILE類型的*fp指針</p><p>  //保存商品結構體數(shù)組</p><p>  void Saveshangpin()//wb為二進制寫,如果文件不存在則自動創(chuàng)建文件

39、shangpin.dat</p><p><b>  {</b></p><p>  fp=fopen("shangpin.dat","wb");</p><p>  if(fp)//如果文件被成功打開的話(有可能文件不存在)</p><p><b>  {</b

40、></p><p>  for(int i=0;i<zhonglei;i++)</p><p><b>  {</b></p><p>  if(fwrite(&shp[i],sizeof(struct shangpin),1,fp)!=1)</p><p>  printf("文件寫入錯誤

41、!\n");</p><p><b>  }</b></p><p>  fclose(fp);</p><p><b>  }</b></p><p><b>  }</b></p><p>  //讀取商品結構體數(shù)組到文件</p>

42、;<p>  void Loadshangpin()</p><p><b>  {</b></p><p>  fp=fopen("shangpin.dat","rb");</p><p>  if(fp)//如果文件被成功打開的話(有可能文件不存在)</p><p&

43、gt;<b>  {</b></p><p>  for(int i=0;fread(&shp[i],sizeof(struct shangpin),1,fp);i++)</p><p><b>  {</b></p><p>  zhonglei++;</p><p><b> 

44、 }</b></p><p>  fclose(fp);</p><p><b>  }</b></p><p><b>  }</b></p><p>  //保存管理員結構體數(shù)組</p><p>  void Saveguanliyuan()//wb為二進制寫

45、,如果文件不存在則自動創(chuàng)建文件</p><p><b>  {</b></p><p>  fp=fopen("guanliyuan.dat","wb");</p><p>  if(fp)//如果文件被成功打開的話(有可能文件不存在)</p><p><b>  {&

46、lt;/b></p><p>  for(int i=0;i<guanshuliang;i++)</p><p><b>  {</b></p><p>  if(fwrite(&guan[i],sizeof(struct guanliyuan),1,fp)!=1)</p><p>  printf(

47、"文件寫入錯誤!\n");</p><p><b>  }</b></p><p>  fclose(fp);</p><p><b>  }</b></p><p><b>  }</b></p><p>  void Loadgu

48、anliyuan()//讀取管理員結構體數(shù)組到文件</p><p><b>  {</b></p><p>  fp=fopen("guanliyuan.dat","rb");</p><p>  if(fp)//如果文件被成功打開的話(有可能文件不存在)</p><p><

49、;b>  {</b></p><p>  guanshuliang=0;</p><p>  for(int i=0;fread(&guan[i],sizeof(struct guanliyuan),1,fp);i++)</p><p><b>  {</b></p><p>  guanshu

50、liang++;</p><p><b>  }</b></p><p>  fclose(fp);</p><p><b>  }</b></p><p><b>  }</b></p><p>  //保存銷售員結構體數(shù)組</p>&l

51、t;p>  void Savexiaoshouyuan()//wb為二進制寫,如果文件不存在則自動創(chuàng)建文件shangpin.dat</p><p><b>  {</b></p><p>  fp=fopen("xiaoshouyuan.dat","wb");</p><p>  if(fp)//

52、如果文件被成功打開的話(有可能文件不存在)</p><p><b>  {</b></p><p>  for(int i=0;i<xiaoshuliang;i++)</p><p><b>  {</b></p><p>  if(fwrite(&xiao[i],sizeof(str

53、uct xiaoshouyuan),1,fp)!=1)</p><p>  printf("文件寫入錯誤!\n");</p><p><b>  }</b></p><p>  fclose(fp);</p><p><b>  }</b></p><p>

54、;<b>  }</b></p><p>  void Loadxiaoshouyuan()//讀取銷售員結構體數(shù)組到文件</p><p><b>  {</b></p><p>  fp=fopen("xiaoshouyuan.dat","rb");</p><

55、p>  if(fp)//如果文件被成功打開的話(有可能文件不存在)</p><p><b>  {</b></p><p>  xiaoshuliang=0;</p><p>  for(int i=0;fread(&xiao[i],sizeof(struct xiaoshouyuan),1,fp);i++)</p>

56、<p><b>  {</b></p><p>  xiaoshuliang++;</p><p><b>  }</b></p><p>  fclose(fp);</p><p><b>  }</b></p><p><b>

57、;  }</b></p><p>  void guanlicaidan()//管理員權限菜單</p><p><b>  {</b></p><p>  printf("\n\n\t********* 管理員權限菜單: **************\n");</p><p> 

58、 printf("\t**************************************************\n");</p><p>  printf("\t********** 1. 商品管理 **********\n");</p><p>  printf("\t

59、 \n");</p><p>  printf("\t********** 2. 查看利潤 **********\n");</p><p>  printf("\t

60、 \n");</p><p>  printf("\t********** 0. 返回身份選擇! **********\n");</p><p>  printf("\t**************************************************\n");</p>

61、<p><b>  }</b></p><p>  void xiaocaidan()//銷售員權限菜單</p><p><b>  {</b></p><p>  printf("\n\n\t******** 銷售員權限菜單: ***********\n");</p

62、><p>  printf("\t \n");</p><p>  printf("\t******* 1. 瀏覽商品信息 *******\n");</p><p>  printf("

63、\t \n");</p><p>  printf("\t******* 2. 銷 售 *******\n");</p><p>  printf("\t

64、 \n");</p><p>  printf("\t******* 0. 返回身份選擇! *******\n");</p><p>  printf("\t**************************************************\n&quo

65、t;);</p><p><b>  }</b></p><p>  void jinhuo()//進貨</p><p><b>  {</b></p><p>  Loadshangpin();</p><p>  char choose;</p><p

66、>  int i=zhonglei;</p><p>  int shi=1;//記錄條形碼是否被使用-數(shù)則表示被使用了</p><p><b>  do</b></p><p><b>  {</b></p><p>  shi=1;//在判斷條碼前為非負數(shù)</p><

67、p>  printf("購買商的條碼:");</p><p>  fflush(stdin);</p><p>  scanf("%s",shp[i].tiaoxinma);</p><p>  if(zhonglei>0)</p><p><b>  {</b><

68、;/p><p>  for(int a=0;a<zhonglei;a++)</p><p><b>  {</b></p><p>  if(a!=i&&shp[a].kucun>=0)</p><p><b>  {</b></p><p>  if

69、(strcmp(shp[i].tiaoxinma,shp[a].tiaoxinma)==0)</p><p><b>  {</b></p><p>  printf("錯誤??!此條碼已經(jīng)被使用!\n");</p><p>  shi=-1;//條碼被使用。標記為-數(shù);</p><p><b&g

70、t;  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(sh

71、i!=-1)</p><p><b>  {</b></p><p>  printf("商品的名稱:");</p><p>  fflush(stdin);</p><p>  scanf("%s",shp[i].name);</p><p>  prin

72、tf("進貨單價:");</p><p>  fflush(stdin);</p><p>  scanf("%f",&shp[i].jinhuodanjia);</p><p>  printf("進貨數(shù)量:");</p><p>  fflush(stdin);</

73、p><p>  scanf("%d",&shp[i].kucun);</p><p>  printf("銷售價格:");</p><p>  fflush(stdin);</p><p>  scanf("%f",&shp[i].xiaoshoudanjia);<

74、/p><p><b>  i++;</b></p><p>  zhonglei++;</p><p>  printf("是否繼續(xù)進貨:(y/n)");</p><p>  fflush(stdin);</p><p>  scanf("%c",&ch

75、oose);</p><p><b>  }</b></p><p>  }while(choose=='y'||choose=='Y');</p><p>  Saveshangpin();</p><p><b>  }</b></p><p&

76、gt;  void xiaoshou()//銷售物品</p><p><b>  {</b></p><p><b>  int i=0;</b></p><p>  int shiyongjifen=0;//保存每次的使用積分</p><p>  int dayin[1000];//標記打印,若值

77、為1則為打印商品</p><p>  char tiaoma[50];</p><p>  char choose;</p><p>  int shuliang=0;//保存購買數(shù)量</p><p>  int geshu[1000];//記錄多次購物的個數(shù)</p><p>  float shifu=0;//保存實

78、付金額</p><p>  float zhaoling=0;//找零</p><p>  int chaochu;//標記購買量是否超出庫存</p><p>  if(zhenjia==1)</p><p><b>  {</b></p><p><b>  do</b>&

79、lt;/p><p><b>  {</b></p><p>  chaochu=0;</p><p>  printf("\n請輸入條形碼:");</p><p>  fflush(stdin);</p><p>  scanf("%s",tiaoma);<

80、;/p><p>  printf("數(shù)量:");</p><p>  fflush(stdin);</p><p>  scanf("%d",&shuliang);</p><p>  for(i=0;i<zhonglei;i++)</p><p><b> 

81、 {</b></p><p>  if(shp[i].kucun>=0)</p><p><b>  {</b></p><p>  if(strcmp(tiaoma,shp[i].tiaoxinma)==0)</p><p><b>  {</b></p><

82、p>  printf("\n購買商品信息如下:\n");</p><p>  printf("\t商品名:%s\t進貨單價:%.2f\t銷售單價:%.2f\n",shp[i].name,shp[i].jinhuodanjia,shp[i].xiaoshoudanjia);</p><p>  if(shuliang>shp[i].kucu

83、n) </p><p><b>  {</b></p><p>  chaochu=-1;//標記為-數(shù)表示超出</p><p>  printf("沒有足夠庫存!\n\n");</p><p><b>  break;</b></p><p><b

84、>  }</b></p><p>  dayin[i]=1;</p><p>  geshu[i]=shuliang;</p><p>  shp[i].kucun=shp[i].kucun-shuliang;</p><p>  zongjine+=shp[i].xiaoshoudanjia*shuliang;//計算應付

85、金額</p><p>  chengben+=shp[i].jinhuodanjia*shuliang;//計算成本</p><p>  hui[diji].jifen+=shp[i].xiaoshoudanjia*shuliang;</p><p><b>  break;</b></p><p><b> 

86、 }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(i==zhonglei) printf("沒有此商品!\n");</p><p>  if(chaochu!=-1)</p><

87、p><b>  {</b></p><p>  printf("是否繼續(xù)購買(y/n):");</p><p>  fflush(stdin);</p><p>  scanf("%c",&choose);</p><p><b>  }</b>

88、</p><p>  }while(choose=='y'||choose=='Y'||chaochu==-1);</p><p>  printf("應付金額%.2f\n",zongjine);</p><p>  printf("實付金額:");</p><p>  

89、fflush(stdin);</p><p>  scanf("%f",&shifu);</p><p>  printf("100積分=1元,是否使用積分?(y/n)");</p><p>  fflush(stdin);</p><p>  scanf("%c",&

90、;choose);</p><p>  if(choose=='y'||choose=='Y')</p><p><b>  {</b></p><p>  printf("剩余積分%.2f\n",hui[diji].jifen);</p><p>  printf(&

91、quot;使用多少積分?");</p><p>  fflush(stdin);</p><p>  scanf("%d",&shiyongjifen);</p><p>  zongjifen+=shiyongjifen;</p><p>  zhaoling=shifu-zongjine+shiyon

92、gjifen/100.0;</p><p>  hui[diji].jifen-=shiyongjifen;</p><p><b>  }</b></p><p>  else zhaoling=shifu-zongjine;</p><p><b>  }</b></p><

93、p>  if(zhenjia!=1)</p><p><b>  {</b></p><p><b>  do</b></p><p><b>  {</b></p><p>  printf("請輸入條形碼:");</p><p&

94、gt;  fflush(stdin);</p><p>  scanf("%s",tiaoma);</p><p>  printf("數(shù)量:");</p><p>  fflush(stdin);</p><p>  scanf("%d",&shuliang);</p

95、><p>  for(i=0;i<zhonglei;i++)</p><p><b>  {</b></p><p>  if(shp[i].kucun>=0)</p><p><b>  {</b></p><p>  if(strcmp(tiaoma,shp[i]

96、.tiaoxinma)==0)//找到被銷售的商品</p><p><b>  {</b></p><p>  printf("\n購買商品信息如下:\n");</p><p>  printf("\t商品名:%s\t進貨單價:%.2f\t銷售單價:%.2f\n",shp[i].name,shp[i].j

97、inhuodanjia,shp[i].xiaoshoudanjia);</p><p>  if(shp[i].kucun<=10) printf(" 提示:該商品庫存不足10份!請及時補充!\n");//提示庫存信息</p><p>  if(shuliang>shp[i].kucun)//判斷是否有足夠庫存</p><p><

98、;b>  {</b></p><p>  chaochu=-1;//-數(shù)表示超出</p><p>  printf("沒有足夠庫存!\n");</p><p><b>  break;</b></p><p><b>  }</b></p><

99、;p>  dayin[i]=1;//銷售的商品標記打印為1;用于打印小票</p><p>  geshu[i]=shuliang;</p><p>  shp[i].kucun-=shuliang;//庫存=原庫存-銷售數(shù)量</p><p>  zongjine+=shp[i].xiaoshoudanjia*shuliang;//計算應付金額</p>

100、;<p>  chengben+=shp[i].jinhuodanjia*shuliang;//計算成本</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b&

101、gt;  }</b></p><p>  if(i==zhonglei) printf("沒有此商品!\n");</p><p>  printf("\n是否繼續(xù)購買(y/n):");</p><p>  fflush(stdin);</p><p>  scanf("%c&quo

102、t;,&choose);</p><p>  }while(choose=='y'||choose=='Y'||i==zhonglei);</p><p>  printf("應付金額%.2f\n",zongjine);</p><p>  printf("實付金額:");</p&

103、gt;<p>  fflush(stdin);</p><p>  scanf("%f",&shifu);</p><p>  zhaoling=shifu-zongjine;</p><p><b>  }</b></p><p>  printf("是否打印小票(y

104、/n)");</p><p>  fflush(stdin);</p><p>  scanf("%c",&choose);</p><p>  if(choose=='y'||choose=='Y')//打印小票</p><p><b>  {</b>

105、;</p><p>  printf("\n\n條形碼\t名稱\t銷售單價\t數(shù)量\t金額\n");</p><p>  for(i=0;i<zhonglei;i++)</p><p><b>  {</b></p><p>  if(dayin[i]==1)</p><p&

106、gt;<b>  {</b></p><p>  printf("%s\t%s\t%.2f\t\t%d\t%.2f\n",shp[i].tiaoxinma,shp[i].name,shp[i].xiaoshoudanjia,geshu[i],shp[i].xiaoshoudanjia*geshu[i]);</p><p><b>  }&

107、lt;/b></p><p><b>  }</b></p><p>  if(zhenjia==1) printf("使用%d積分!\n",shiyongjifen);</p><p>  printf("應付金額%.2f元\t實付金額%.2f元\t找零%.2f元\n",zongjine,shif

108、u,zhaoling);</p><p><b>  }</b></p><p>  yingli+=zongjine-chengben;//盈利=收入金額-成本</p><p>  zongjine=0;</p><p>  chengben=0;</p><p>  Saveshangpin(

109、);</p><p><b>  }</b></p><p>  void lirun()//利潤函數(shù)</p><p><b>  {</b></p><p>  printf("共接受了%d的抵價積分!\n",zongjifen);//顯示共接受的積分量</p>

110、<p>  printf("今日已賺%.2f元\n",yingli);//顯示盈利量</p><p><b>  }</b></p><p>  void shanchu()//刪除商品</p><p><b>  {</b></p><p>  Loadshangpi

111、n();</p><p>  char tiaoma[50];</p><p>  char choose;</p><p><b>  do</b></p><p><b>  {</b></p><p>  printf("請輸入要刪除的商品的條碼:"

112、);</p><p>  fflush(stdin);</p><p>  scanf("%s",tiaoma);</p><p>  for(int i=0;i<zhonglei;i++)</p><p><b>  {</b></p><p>  if(shp[i].

113、kucun!=-1)</p><p><b>  {</b></p><p>  if(strcmp(tiaoma,shp[i].tiaoxinma)==0)//找到要刪除的商品</p><p><b>  {</b></p><p>  printf("\n原信息如下:\n")

114、;</p><p>  printf("\t商品名:%s\t進貨單價:%.2f\t銷售單價:%.2f庫存:%d\n",shp[i].name,shp[i].jinhuodanjia,shp[i].xiaoshoudanjia,shp[i].kucun);</p><p>  shp[i].kucun=-1; //刪除則將庫存標為負數(shù)</p><p&g

115、t;  printf("該商品已刪除!\n");</p><p><b>  break;</b></p><p><b>  }</b></p><p>  if(i==zhonglei) //沒有找到商品</p><p><b>  {</b></

116、p><p>  printf("沒有此商品!\n"); </p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</

117、b></p><p>  printf("\n是否繼續(xù)刪除(y/n):");</p><p>  fflush(stdin);</p><p>  scanf("%c",&choose);</p><p>  }while(choose=='y'||choose=='

118、;Y');</p><p>  Saveshangpin();</p><p><b>  }</b></p><p>  void xiugai()//修改商品</p><p><b>  {</b></p><p>  Loadshangpin();</p&

119、gt;<p>  char tiaoma[50];</p><p>  char choose;</p><p><b>  do{</b></p><p>  printf("請輸入要修改的商品條碼:");</p><p>  fflush(stdin);</p><

120、;p>  scanf("%s",tiaoma);</p><p>  for(int i=0;i<zhonglei;i++)</p><p><b>  {</b></p><p>  if(shp[i].kucun>=0) //判斷是否被刪除</p><p><b>  

121、{</b></p><p>  if(strcmp(tiaoma,shp[i].tiaoxinma)==0)//找到要修改的商品</p><p><b>  {</b></p><p>  printf("\n原信息如下:\n");</p><p>  printf("\t商品名

122、:%s\t進貨單價:%.2f\t銷售單價:%.2f庫存:%d\n",shp[i].name,shp[i].jinhuodanjia,shp[i].xiaoshoudanjia,shp[i].kucun);</p><p>  printf("\n修改商品名:");</p><p>  fflush(stdin);</p><p>  s

123、canf("%s",shp[i].name);</p><p>  printf("修改進貨單價:");</p><p>  fflush(stdin);</p><p>  scanf("%f",&shp[i].jinhuodanjia);</p><p>  printf

124、("修改銷售單價:");</p><p>  fflush(stdin);</p><p>  scanf("%f",&shp[i].xiaoshoudanjia);</p><p>  printf("修改庫存:");</p><p>  scanf("%d&qu

125、ot;,&shp[i].kucun);</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(i==zhonglei)</p><p>  pr

126、intf("沒有此貨物!\n");</p><p><b>  }</b></p><p>  printf("\n是否繼續(xù)修改?(y/n)");</p><p>  fflush(stdin);</p><p>  scanf("%c",&choose

127、);</p><p>  }while(choose=='y'||choose=='Y');</p><p>  Saveshangpin();</p><p><b>  }</b></p><p>  void liulanshp()//瀏覽所有商品</p><p&

128、gt;<b>  {</b></p><p>  printf("條形碼\t名稱\t銷售單價\t進貨單價\t庫存\n");</p><p>  for(int i=0;i<zhonglei;i++)</p><p><b>  {</b></p><p>  if(shp[

129、i].kucun>=0)</p><p><b>  {</b></p><p>  if(shp[i].jinhuodanjia!=0)//判斷是否存在</p><p><b>  {</b></p><p>  printf("%s\t%s\t%.2f\t\t%.2f\t\t%d

130、\n",shp[i].tiaoxinma,shp[i].name,shp[i].xiaoshoudanjia,shp[i].jinhuodanjia,shp[i].kucun);</p><p><b>  }</b></p><p><b>  }</b></p><p>  if(zhonglei==i) b

131、reak;</p><p><b>  }</b></p><p><b>  }</b></p><p>  void sousuo()//搜索商品</p><p><b>  {</b></p><p>  char tiaoma[50];</

132、p><p>  printf("請輸入您要查找的商品條形碼:");</p><p>  fflush(stdin);</p><p>  scanf("%s",tiaoma);</p><p>  for(int i=0;i<zhonglei;i++)</p><p><

133、b>  {</b></p><p>  if(shp[i].kucun>=0)//判斷是否存在</p><p><b>  {</b></p><p>  if(strcmp(tiaoma,shp[i].tiaoxinma)==0)//找到商品</p><p><b>  {</b

134、></p><p>  printf("\n條形碼\t名稱\t銷售單價\t進貨單價\t庫存\n");</p><p>  if(shp[i].jinhuodanjia!=0)</p><p>  printf("%s\t%s\t%.2f\t\t%.2f\t\t%d\n",shp[i].tiaoxinma,shp[i].n

135、ame,shp[i].xiaoshoudanjia,shp[i].jinhuodanjia,shp[i].kucun);</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(

136、zhonglei==i) </p><p><b>  {</b></p><p>  printf("沒有此商品!\n");</p><p><b>  }</b></p><p><b>  }</b></p><p><b

137、>  }</b></p><p>  void tianjia()//添加貨物數(shù)量</p><p><b>  {</b></p><p>  Loadshangpin();</p><p>  char choose;</p><p>  char tiaoma[50];<

138、;/p><p>  int jia=0;</p><p><b>  do</b></p><p><b>  {</b></p><p>  printf("請輸入條形碼:");</p><p>  fflush(stdin);</p><

139、;p>  scanf("%s",tiaoma);</p><p>  for(int i=0;i<zhonglei;i++)</p><p><b>  {</b></p><p>  if(shp[i].kucun>=0)</p><p><b>  {</b>

140、;</p><p>  if(strcmp(tiaoma,shp[i].tiaoxinma)==0)//找到要添加的商品</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p>&l

141、t;p>  if(i==zhonglei) </p><p><b>  {</b></p><p>  printf("沒有此商品!\n");</p><p><b>  break;</b></p><p><b>  }</b></p>

142、;<p>  printf("\n原信息如下:\n");</p><p>  printf("\t商品名:%s\t進貨單價:%.2f\t銷售單價:%.2f庫存:%d\n",shp[i].name,shp[i].jinhuodanjia,shp[i].xiaoshoudanjia,shp[i].kucun);</p><p>  prin

143、tf("\n請輸入添加的數(shù)量:");</p><p>  fflush(stdin);</p><p>  scanf("%d",&jia);</p><p>  shp[i].kucun=shp[i].kucun+jia;</p><p>  printf("\n是否繼續(xù)添加(y/n

144、)");</p><p>  fflush(stdin);</p><p>  scanf("%c",&choose);</p><p>  }while(choose=='y'||choose=='Y');</p><p>  Saveshangpin();</p&

溫馨提示

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

評論

0/150

提交評論