c語言課程設(shè)計報告——《商品銷售管理》_第1頁
已閱讀1頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  《C語言程序設(shè)計》</b></p><p><b>  課程設(shè)計</b></p><p>  課程設(shè)計題目: 商品銷售管理 </p><p>  專業(yè): 電子信息科學(xué)與技術(shù) </p><p>  班級:

2、 </p><p>  姓名: </p><p>  成績: </p><p><b>  目 錄</b></p>&

3、lt;p><b>  一、 需求分析3</b></p><p><b>  1.2問題3</b></p><p><b>  1.2系統(tǒng)3</b></p><p><b>  1.3運行要求3</b></p><p><b>  二

4、、 總體設(shè)計3</b></p><p>  2.1系統(tǒng)流程設(shè)計3</p><p>  2.2系統(tǒng)模塊設(shè)計4</p><p><b>  三、 詳細設(shè)計5</b></p><p>  3.1數(shù)據(jù)結(jié)構(gòu)設(shè)計5</p><p><b>  3.2界面設(shè)計6</b&g

5、t;</p><p>  3.3模塊實現(xiàn)13</p><p>  四、 功能模塊的調(diào)試和測試21</p><p>  五、 課程設(shè)計總結(jié)24</p><p><b>  六、 致謝27</b></p><p><b>  參考文獻28 </b></p>

6、<p><b>  附錄</b></p><p><b>  一、需求分析</b></p><p><b>  1、問題</b></p><p><b>  問題描述:</b></p><p>  已知一公司有10種產(chǎn)品(產(chǎn)品編號,產(chǎn)品名稱,產(chǎn)

7、品價格,產(chǎn)品產(chǎn)地,庫存數(shù)量(最開始為1000個)),設(shè)計一程序,完成以下功能:</p><p>  銷售:從鍵盤輸入顧客姓名,銷售數(shù)量、銷售日期,實現(xiàn)銷售功能。需要判斷產(chǎn)品是否存在,銷售數(shù)量是否小于庫存數(shù)量,銷售日期格式是否合法(格式為:YYYY-MM-DD,如2009-01-02))</p><p>  計算時間段內(nèi)各個產(chǎn)品的銷售總額</p><p>  能根據(jù)顧

8、客姓名,查詢購買歷史</p><p>  能顯示所有顧客的姓名</p><p>  根據(jù)需求,該系統(tǒng)所應(yīng)包含的信息有以下一些:</p><p>  商品銷售的基本信息:顧客姓名、產(chǎn)品類型、銷售數(shù)量、銷售日期、庫存數(shù)量、銷售總額;</p><p>  根據(jù)需求,該系統(tǒng)所應(yīng)實現(xiàn)的功能有以下一些:</p><p>  1.

9、各種基本數(shù)據(jù)的錄入。如:產(chǎn)品銷售的基本信息的錄入。</p><p>  2. 基于各種基本數(shù)據(jù)的查詢。即允許對已經(jīng)錄入的數(shù)據(jù)進行查詢。例如根據(jù)產(chǎn)品編號查詢產(chǎn)品的銷售歷史;根據(jù)顧客姓名,查詢購買歷史。</p><p>  3. 各種基本數(shù)據(jù)的計算。計算時間段內(nèi)各個產(chǎn)品的銷售總額。</p><p>  4. 數(shù)據(jù)的顯示:顯示所有顧客的姓名。</p><

10、;p>  5. 數(shù)據(jù)導(dǎo)出:將銷售信息導(dǎo)出到指定文件。</p><p>  6. 數(shù)據(jù)導(dǎo)入:從指定文件導(dǎo)入銷售信息。</p><p><b>  2、系統(tǒng)</b></p><p>  采用C語言實現(xiàn),開發(fā)環(huán)境為VC6.0,可以運行在操作系統(tǒng)windows98及以上皆可。</p><p><b>  3、運行

11、要求</b></p><p>  能不受限制的錄入銷售信息;</p><p>  界面友好,操作方便,例如保存前需要提示用戶是否保存;</p><p>  容錯性強,例如數(shù)據(jù)導(dǎo)出時,如果文件不存在需要提示用戶。 </p><p><b>  二、總體設(shè)計</b></p><p><

12、;b>  1、系統(tǒng)流程設(shè)計</b></p><p><b>  2、系統(tǒng)模塊設(shè)計</b></p><p>  根據(jù)系統(tǒng)的功能設(shè)計,設(shè)計如下模塊</p><p>  主界面模塊:完成系統(tǒng)菜單的顯示;</p><p>  功能選擇模塊:根據(jù)用戶的選擇,完成其相應(yīng)的功能;</p><p&g

13、t;  商品銷售信息錄入:完成用戶從界面輸入信息,保存入系統(tǒng)的功能;</p><p>  查詢銷售產(chǎn)品歷史:根據(jù)產(chǎn)品的編號ID查詢該產(chǎn)品的銷售記錄的功能;</p><p>  時間段內(nèi)產(chǎn)品的銷售總額:根據(jù)用戶的需求,查詢?nèi)我鈺r間段內(nèi)的各個產(chǎn)品的銷售總額;</p><p>  查詢顧客的購買歷史:根據(jù)客戶的姓名,查詢其購買歷史;</p><p>

14、;  顯示顧客的姓名:根據(jù)需要,顯示顧客的姓名;</p><p>  保存顧客信息:根據(jù)需要,保存顧客信息至文件;</p><p>  保存銷售信息:根據(jù)需要,保存銷售信息至文件;</p><p><b>  三、詳細設(shè)計</b></p><p><b>  1、數(shù)據(jù)結(jié)構(gòu)設(shè)計</b></p&g

15、t;<p>  根據(jù)系統(tǒng)要求,系統(tǒng)中需要保存的數(shù)據(jù),其結(jié)構(gòu)如下:</p><p>  為了能實現(xiàn)不受限制的增加銷售信息,采用鏈表的結(jié)構(gòu)保存銷售信息,在增加銷售的基本信息時,創(chuàng)建一個銷售信息的節(jié)點,將其插入到鏈表中,示意圖如下。</p><p>  使用C語言創(chuàng)建的結(jié)構(gòu)體如下:</p><p>  struct sell//定義商品銷售結(jié)構(gòu)體&l

16、t;/p><p><b>  {</b></p><p><b>  int c_id;</b></p><p>  char c_name[30];</p><p>  char p_id[19];</p><p>  char p_name[30];</p>&

17、lt;p><b>  int num;</b></p><p>  char s_date[10];</p><p>  struct sell *next;</p><p><b>  };</b></p><p><b>  2、界面設(shè)計</b></p>

18、<p>  2.0 1歡迎界面:</p><p>  介紹該系統(tǒng)的簡要情況。</p><p><b>  2.02主界面:</b></p><p>  根據(jù)系統(tǒng)要求,設(shè)計一個字符界面,顯示系統(tǒng)的菜單,為了體現(xiàn)友好性,將在每個菜單前顯示該菜單項對應(yīng)的數(shù)字</p><p>  用戶輸入菜單項前面的數(shù)字,主菜單

19、消失,進入該模塊的相應(yīng)界面,進行相應(yīng)的操作,完成后,回到主界面。</p><p>  2.03導(dǎo)入商品信息界面:</p><p>  選擇文件導(dǎo)入選項將商品信息從文件中導(dǎo)入,也可以通過鍵盤手動輸入。如:</p><p>  2.04 顯示商品信息:</p><p>  通過文件導(dǎo)入或鍵盤輸入的商品信息,然后顯示在屏幕上。給銷售員查看銷售情

20、況。</p><p>  2.05 輸入顧客購買信息:</p><p>  通過鍵盤輸入顧客購買商品的信息,并且保存至鏈表和文件中。</p><p>  2.06按商品編號查詢商品銷售信息:</p><p>  通過鍵盤輸入商品的編號查詢銷售信息</p><p><b>  查詢結(jié)果如下:</b>

21、</p><p>  2.07按日期范圍查詢銷售記錄:</p><p>  鍵盤輸入查詢?nèi)掌诘姆秶?,查詢結(jié)果如下:</p><p>  2.08按顧客姓名查詢其購買歷史:</p><p><b>  查詢結(jié)果如下:</b></p><p>  2.09顯示顧客姓名:</p><

22、;p>  2.10保存銷售信息:</p><p>  保存本次銷售信息至文件。</p><p><b>  文件保存信息如下:</b></p><p>  ***********************************************************************************</p>

23、;<p>  顧客編號 商品編號 銷售數(shù)量 購買日期</p><p>  ==================================================</p><p>  15174 1 100 2011-07-04</p><p>  ***********

24、************************************************************************</p><p>  2.11保存顧客信息:</p><p><b>  文件保存信息如下:</b></p><p>  ********顧客購買記錄********** </p>&l

25、t;p>  顧客姓名 顧客代碼 </p><p>  張三 15174</p><p>  *********************************</p><p><b>  2.12結(jié)束界面:</b></p><p><b>  3、模塊實現(xiàn)</b>&

26、lt;/p><p><b>  主界面實現(xiàn):</b></p><p>  模塊說明:調(diào)用printf()函數(shù),在屏幕上打印需要顯示的字符信息,需要在顯示之前調(diào)用system(“cls”)函數(shù)將前面的界面清空。 </p><p><b>  模塊流程:</b></p><p><b>  是&l

27、t;/b></p><p><b>  否</b></p><p><b>  3.1主函數(shù)流程圖</b></p><p>  對應(yīng)的函數(shù):hello(), menu(), bye();</p><p>  2.商品信息的導(dǎo)入實現(xiàn):</p><p>  模塊說明:從文件

28、導(dǎo)入或者鍵盤鍵入現(xiàn)有商品信息。</p><p><b>  模塊流程:</b></p><p>  a=1a=2</p><p>  3.2商品導(dǎo)入流程圖</p><p>  對應(yīng)的函數(shù):choice_read(),file_read( ), keyboard( );</p><p> 

29、 銷售信息錄入模塊實現(xiàn):</p><p>  模塊說明:從鍵盤接收輸入的銷售信息,在動態(tài)存儲區(qū)中創(chuàng)建銷售的節(jié)點,遍歷鏈表,將其插入到銷售鏈表的最后位置。</p><p><b>  模塊流程:</b></p><p><b>  否</b></p><p><b>  是</b>

30、;</p><p>  3.3銷售信息流程圖</p><p>  對應(yīng)的函數(shù):sale() , sale_download_save(), judge();</p><p><b>  按編號查找銷售歷史</b></p><p>  模塊說明:根據(jù)鍵盤輸入的商品編號,在銷售鏈表中遍歷查詢,若有配對,</p>

31、<p>  則同時輸出其節(jié)點保存的其他信息。</p><p><b>  模塊流程:</b></p><p><b>  否</b></p><p><b>  是</b></p><p><b>  是</b></p><

32、p>  3.4按編號查找流程圖</p><p>  對應(yīng)函數(shù):search_p_id();</p><p>  5.日期范圍的銷售信息查詢模塊實現(xiàn):</p><p>  模塊說明:從鍵盤接收輸入一個日期范圍,遍歷鏈表,判斷節(jié)點的日期是否在此日期范圍內(nèi),如果在,則輸出該節(jié)點的其他信息,如產(chǎn)品編號,顧客編號等等。</p><p><b

33、>  模塊流程:</b></p><p><b>  否</b></p><p><b>  是</b></p><p><b>  是</b></p><p>  3.5按日期范圍內(nèi)查找流程圖</p><p>  對應(yīng)函數(shù):searc

34、h_time();</p><p>  6.按顧客姓名查詢銷售記錄模塊實現(xiàn):</p><p>  模塊說明:通過鍵盤輸入顧客姓名,在銷售鏈表中遍歷查找節(jié)點包含的姓名,若姓名配對,則輸出該節(jié)點的信息。 </p><p><b>  模塊流程:</b></p><p><b>  否</b></p

35、><p><b>  是</b></p><p><b>  是</b></p><p>  3.6按顧客姓名查找流程圖</p><p>  對應(yīng)函數(shù):search_name();</p><p>  7.顯示顧客姓名模塊實現(xiàn):</p><p>  模塊說

36、明:通過鍵盤輸入的顧客姓名,若在顧客鏈表中查詢該姓名,輸出其姓名和編號。 </p><p><b>  模塊流程:</b></p><p><b>  否</b></p><p><b>  是</b></p><p><b>  是</b></p&

37、gt;<p>  3.7顯示顧客流程圖</p><p>  對應(yīng)函數(shù):list_name()</p><p>  8.保存銷售信息模塊:</p><p>  模塊說明:保存在銷售鏈表和顧客鏈表中的銷售信息至文件。</p><p><b>  模塊流程:</b></p><p><

38、;b>  否</b></p><p><b>  是</b></p><p>  3.8保存銷售信息流程圖</p><p>  對應(yīng)函數(shù): download_s();</p><p>  9.保存銷售信息模塊:</p><p>  模塊說明:保存在銷售鏈表和顧客鏈表中的顧客信息至

39、文件。</p><p><b>  模塊流程: </b></p><p><b>  否</b></p><p><b>  是</b></p><p>  3.9保存信息流程圖</p><p>  對應(yīng)函數(shù):download_c ();</p

40、><p>  四: 功能模塊的調(diào)試及測試</p><p><b>  1、測試選項</b></p><p><b>  測試的數(shù)據(jù):</b></p><p><b>  輸入a:</b></p><p><b>  測試結(jié)果:</b>&

41、lt;/p><p>  程序運行出現(xiàn)錯誤,如下</p><p>  原因:是選擇0—9之外的數(shù),不能跳轉(zhuǎn)。</p><p><b>  測試數(shù)據(jù):1</b></p><p>  測試結(jié)果:程序運行正常,正常跳轉(zhuǎn)到界面。</p><p>  2、輸入銷售信息測試</p><p>

42、  測試數(shù)據(jù): zhangsan 1 100 2011-07-32</p><p><b>  測試結(jié)果:</b></p><p>  修改后的測試數(shù)據(jù):張三 1 100 2011-07-04</p><p>  測試結(jié)果:如上圖,測試成功。</p><p>  原因:姓名只準(zhǔn)輸入漢字,日期只準(zhǔn)輸入當(dāng)前日期,并且銷

43、售日期形如(1991-02-27)。</p><p>  3、按編號查詢銷售信息測試</p><p><b>  測試數(shù)據(jù):4;</b></p><p><b>  測試結(jié)果:</b></p><p>  原因:編號為4的商品未銷售。</p><p>  4、按日期范圍內(nèi)查詢

44、銷售日期</p><p>  測試數(shù)據(jù):(開始日期)2011-06-01</p><p> ?。ńY(jié)束日期)2011-06-30</p><p><b>  測試結(jié)果:</b></p><p>  原因:該日期內(nèi)無銷售日期。</p><p>  修改后的日期:(開始日期)2011-06-01<

45、/p><p> ?。ńY(jié)束日期)2011-08-01</p><p><b>  測試結(jié)果:有記錄。</b></p><p>  5、按顧客姓名查找銷售記錄:</p><p><b>  測試數(shù)據(jù):李四</b></p><p><b>  測試結(jié)果:</b>&

46、lt;/p><p>  修改后的測試數(shù)據(jù):張三</p><p><b>  測試結(jié)果:</b></p><p>  原因:無顧客購買記錄,所以顯示不出來。</p><p><b>  6、保存信息至文件</b></p><p><b>  測試結(jié)果:</b>

47、</p><p><b>  正確結(jié)果:</b></p><p>  原因:無銷售記錄,故顯示顧客記錄為空。</p><p>  顧客購買信息.txt的文件內(nèi)容如下:</p><p><b>  五、實訓(xùn)總結(jié)</b></p><p><b>  五、課程實訓(xùn)總結(jié)&l

48、t;/b></p><p>  1、對系統(tǒng)開發(fā)的總結(jié)(設(shè)計亮點,存在的不足,需要改進的地方):</p><p>  該系統(tǒng)為作者本人自行精心開發(fā),限于個人水平,系統(tǒng)不太完整,功能不太完善,且人性化較為不足,本人將在后續(xù)階段進行優(yōu)化改正,功能將進一步拓展。有一些地方還是存在較小的麻煩,如在相同顧客的編號在兩次購買過程中不相同,造成了系統(tǒng)的不便,本人將會想辦法克服這一缺點。但是此系統(tǒng)在已

49、開發(fā)的功能上精心布置,完美的界面和人性化的提示與功能還是值得稱贊的,并且經(jīng)過長時間的測試,功能完全正確。</p><p><b>  2、實訓(xùn)感想</b></p><p>  有位學(xué)長曾經(jīng)說過,“編程的魅力就在最后那一刻完美運行的快感。”其實這也是我心里最真實感受,經(jīng)過大半個月二十來天的攻克,終于完成了第一份自己編譯的程序,我覺得我很欣慰,因為二十來天的編程是對我身體

50、與心理的挑戰(zhàn),由于自己C語言功底不太強,曾經(jīng)為了這份程序,我也飽受了心理的折磨,每次為了一個需要實現(xiàn)的功能而自己毫無頭緒的時候,我都大量收集資料,晚上弄到凌晨都不得不繼續(xù)編下去,但是有時候一下午過去還是沒有進展,很多時候都想放棄,然后去找答案抄上,但是我最終還是克服了這些,因為我知道這是一個很好的機會去鍛煉自己,以前一直想編一份自己的程序,我知道這次會實現(xiàn)這個目標(biāo)的。</p><p>  通過這次課程設(shè)計,我學(xué)會

51、了很多,在C語言方面,我已經(jīng)很熟練地掌握了很多知識,已經(jīng)可以較為獨立的進行C語言的學(xué)習(xí);在素質(zhì)方面,我也進一步學(xué)會了吃苦耐勞的精神。這次成功的經(jīng)歷,給我一個很好的激勵,這將使我更加有興趣的學(xué)習(xí)以后的課程。</p><p><b>  六、致謝</b></p><p>  這次編程的成功,大部分的功勞還是在于給了我很多幫助的xx學(xué)長和熱心的網(wǎng)友,沒有你們不辭辛苦的幫助,

52、我也不會有這樣好的成績。謝謝!</p><p><b>  參考文獻</b></p><p>  譚浩強?!禖程序設(shè)計(第三版)》北京:清華大學(xué),2005</p><p>  何欽銘、顏暉。《C語言程序設(shè)計》浙江:浙江大學(xué),2008</p><p><b>  附錄:略</b></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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論