




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優質文檔-傾情為你奉上 報告編號:第五組綜合課程設計報告超市管理系統的設計與實現學生姓名:指導教師: 所 在 系: 電 子 信 息 系 所學專業: 計算機科學與技術 年 級: 08級(2)班 2010年6月目 錄專心-專注-專業摘 要針對用戶對超市管理系統要求,本應用軟件運用C+語言編寫,通過對系統程序的編寫,實現了基本的超市商品管理功能,本應用軟件中的時鐘時間以所在電腦的系統時間為準,用戶可在修改商品的界面中修改超市商品信息來對超市進行管理。超市管理系統主界面通過操作阿拉伯數字實現超市商品的增加、修改、查詢、統計、顯示所有商品信息等。本系統的實現主要運用了兩個類,商品類和超市類。商品類中
2、有商品必要信息,商品代碼,商品名稱,商品產地,商品價格,商品庫存量等。超市類中通過各類函數的實現對商品進行管理。可以增加商品,查詢商品,刪除商品,顯示商品信息,統計商品庫存量及價值等。關鍵字:商品類 超市管理 函數 指針第1章 前 言1.1系統前景隨著社會的發展,超市的數量越來越多,規模越來越大。因此,對超市的科學管理就顯得尤為重要。本系統用C+基本實現了超市管理系統的設計。C+是一個面向對象的程序設計語言,可以讓我們更好的掌握面向對象思想解決實際問題的能力。C+擁有強大生命力,幾乎可以兼容C語言。C+牽涉概念很多,語法比較復雜,內容十分廣泛。比如在C的基礎上增加了類等。各種類型函數如構造函數
3、,析構函數等。還有函數是在類內定義還是在類外定義等。總之,C+語言是一門非常實用的語言。1.2系統主要功能(1)本系統實現了對超市商品的管理。(2)本系統可以根據用戶輸入來調整超市商品信息。(3)本系統可以直接顯示超市所有商品。(4)本系統的開發語言是當下比較流行的C+語言開發。第2章 需求分析 本系統為超市管理系統的設計與實現,可供超市管理者對超市商品信息的查詢和修改,適用于各種小型超市,有效地提高了工作效率。若查詢不符合實際情況,則會提示錯誤。Enter鍵確認。本系統實現以下功能:(1)進入系統后提示適用方法,鍵入相應數字依次將商品代碼(由阿拉伯數字組成)、商品名稱、商品產地、商品單價以及
4、庫存量等商品信息存入并保存。(2)鍵入商品名稱,可將要求刪除商品調出,并予以刪除。(3)鍵入相應數字選項,可修改超市商品的所有信息。(4)鍵入相應數字選項,可查詢需要查詢的商品的所有信息。(5)鍵入相應數字選項,可顯示超市所有商品的所有信息。(6)鍵入數字7退出系統。第3章 概要設計3.1主界面流程圖設計超市管理系統的主界面, 主界面相應的現實有下列菜單:增加商品、刪除商品、修改商品、查詢商品、統計商品、顯示商品、退出。超市管理系統商品類超市類查詢商品統計商品修改商品增加商品刪除商品顯示商品找到是否開始開始3.1主界面流程圖3.2 超市管理模塊設計(1) 超市初始化模塊類名為Goods和Sup
5、ermarket,分別定義了商品的名稱,代碼,產地,單價和庫存數量,以及需要在鏈表里面尋找的指針。(2)增加商品的函數模塊在文件中寫入產品的信息,并且判斷商品的單價和庫存量是否超標(65535),并且加入鏈表。(3)刪除商品的函數模塊刪除結點已達到刪除產品的目的。(4)修改商品的函數模塊載入商品的全部數據,并且放入內存,并且可以重新寫入修改。如果沒有找到商品,則返回。(5)統計商品的函數模塊統計結點數以記錄商品的數量,載入所有商品的數量和單價計算商品的總價值。(6)數據存儲的函數模塊將鏈表的所有數據寫入文件,然后關閉文件。(7)數據讀入的函數模塊打開文件,然后將文件中的數據寫入內存以備用。第4
6、章 詳細設計4.1 主界面流程圖設計超市管理系統的主界面,主界面相應的現實有下列菜單:增加商品、刪除商品、修改商品、查詢商品、統計商品、顯示商品、退出。超市管理系統商品類超市類查詢商品統計商品修改商品增加商品刪除商品顯示商品找到是否開始結束4.1主界面流程圖4.2清除內存中的商品函數 在超市管理系統中,商品出售出去,庫存中的商品信息必須清除。 類外定義一個函數clear,在函數中定義一個指針p,講物品goods賦給p,為了使函數能夠不斷地清除內存中的數據,要使指針移動,首先將p->next賦予goods ,然后刪除p中的數據,清空p中的數據,然后將goods賦給p,依次循環,從而實現刪除
7、庫存中的一個或多個商品。流程圖如圖 開始定義指針goods賦值p給p將p的next賦值給goods刪除p中的數據goods賦值給p是否有需要刪除的商品結束YESNO圖4.2清除內存商品流程圖4.3增加商品信息 類外定義一個函數add,首先在函數中定義變量商品代碼 num 和商品數量count,都為double類型 ,商品名name和產地address為char類型 ,價格price 為int類型,首先要求用戶輸入商品信息,依次輸入商品的代碼、商品名稱、商品產地、商品單價,判斷單價是否在065535之間,如果不在范圍內重新輸入直到在范圍之內再繼續向下面執行,輸入商品庫存量,庫存在099999之間
8、,如果超出范圍重新輸入,在范圍之內繼續執行,保存數據。開始定義變量輸入商品代碼名稱產地輸入商品價格( 065535 )輸入商品庫存(099999)保存NoNoYesYes圖4.3 增加商品流程圖4.4刪除商品信息的過程(1)在Supermarket類下定義一個Delete函數作為刪除商品信息的函數,然后定義商品名,輸入商品信息。(2)查找要刪除的結點(節點中包含所有該商品的信息:商品代碼、名稱、產地、數量、單價),分別定義兩個指針,原商品表信息指針p1和輸入的商品信息指針p2,在p1循環的過程中比較輸入的商品名與原有的商品名是否一致,如果一致則結束本次循環,否則p2指向p1,使得兩指針同化,p
9、1指針接著指向下一指針,這樣依次向后查詢。(3)刪除結點,如果找到要刪除的結點則刪除,在這個條件下,如果刪除的結點是第一個結點,則繼續將指針后移刪除第一結點,如果刪除的結點是后續結點,則將p2下一指針指向p1下一指針,則刪除相應的后續結點。輸出的結果是:找到并刪除或者sorry,未找到!流程圖如圖4.5查找要刪除的結點定義指針p1 p2比較輸入商品名和商品表已知商品名是否一致是否找到結點繼續向后查找 p2=p1;p1=p1->next是否為第一結點找到則刪除成功查找后續結點是是是否否否開始結束圖4.5 刪除商品流程圖4.5修改商品信息的過程(1)定義各參數變量的類型,然后是輸入要查找等待
10、修改的商品名稱(2)查找要修改的結點,定義p1、p2指針,p1為指向goods商品表指針,p2為輸入的商品指針,判斷p1指針,如果輸入的商品名和原有的商品名一致,則結束本次循環,否則,p1和p2指針同化,p1接著指向p1的下一指針。(3)修改結點,若找到相應的要修改的結點,則p1指向Output函數,接著輸出要修改的信息,利用Switch語句來調用相應的修改信息。(4)創建新商品的結點,把原來要修改的結點刪除并重新替換要創建的商品結點。如果找到等待修改的結點則修改,否則保持商品表信息不變。流程圖如圖4.6輸入要查的商品名查找要修改的結點比較輸入商品名和商品表已知商品名是否一致是否找到第一結點繼
11、續向后查找 p2=p1;p1=p1->next繼續查找后續結點刪除并替換是是否否是否開始結束圖4.6 修改商品流程圖 4.6查詢商品的過程:(1)在Supermarket類下定義一個Query函數作為查詢商品信息的函數,輸入商品名。(2)查找要查詢的結點(結點中包含所有該商品的信息:商品代碼、名稱、產地、數量、單價),定義一個原商品表信息指針p1,在p1循環的過程中比較輸入的商品名與原有的商品名是否一致,如果一致則結束本次循環,否則 p1指針接著指向下一指針,這樣依次向后查詢。(3)查詢結點,如果找到要查詢的結點則輸出:查詢成功并輸出其所有信息,若沒有找到輸出:sorry未找到!流程圖如
12、圖4.7定義指針p1 比較輸入商品名和商品表已知商品名是否一致是否找到商品繼續向后查找 p1=p1->next是是否否輸入要查詢商品的名字開始結束 圖4.7查詢商品流程圖4.7統計商品的過程(1)是在Supermarket類下定義一個Add_up函數作為統計商品信息的函數,然后定義兩個double型變量Amount和Value分別表示要求統計商品的總量和總價值,輸入商品名字name。(2)查找要統計的結點(結點中包含所有該商品的信息:商品代碼、名稱、產地、數量、單價),定義一個指針p1,原商品表信息指針p1,在p1循環的過程中比較輸入的商品名與原有的商品名是否一致,如果一致則結束本次循環
13、,p1指針接著指向下一指針,這樣依次向后查詢。沒找到則輸出:sorry,未找到!(3)統計商品,每當找到一個商品后就將Amount與p1所指count相加存入Amount,并將此時p1所指的count與price相乘再加上Value存入Value,循環查找相加,最后分別輸出。流程圖如圖4.8 開始查找要統計的結點定義指針p1 比較輸入商品名和商品表已知商品名是否一致是否找到結點繼續向后查找 p1=p1->next是是否否否Amount+=p1->count;Value+=p1->count*p1->price Value+=p1->count*p1->pri
14、ce從當前指針p1輸出結束圖4.8 統計商品流程圖4.8顯示商品過程(1)是在Supermarket類下定義一個Out函數作為顯示商品信息的函數。(2)將goods的首地址給p1,判斷p1是否為空,若空則輸出“沒有商品”。否則輸出該商品所有信息(商品代碼、名稱、產地、數量、單價)等。(3)將p1賦給p2,p1->next賦給p1,進入循環,輸出下一個商品信息。流程圖如圖4.9定義數據P=goods是否有商品輸出該商品信息指針移向下一個商品輸出沒有商品否是開始圖4.9 顯示商品流程圖第五章 系統測試打開軟件后見到如圖所示的界面正式進入超市管理系統圖5.1 系統主界面該軟件有增加商品、刪除商
15、品、修改商品、查詢商品、統計商品、顯示商品六大功能。(1)增加商品 選擇1 進入商品錄入界面 圖5.2 新增商品信息界面依次錄入商品代碼、商品名稱、商品產地、商品單價、商品的庫存量并按Y保存,需要注意的是商品單價限制在065535,商品的庫存量限制在099999范圍內。(2)刪除商品圖5.3 刪除商品界面首先輸入商品的名稱,然后選擇是Y 或者N。 (3)修改商品 選擇3 進入修改商品界面 圖5.4 修改商品界面輸入商品的名稱,系統會顯示商品代碼、名稱、產地、價格、庫存量,然后分別選擇1 改商品代碼、2改商品名稱、3改商品產地、4改商品單價、5 改商品庫存量 、7改全部信息。(4)查詢商品 圖5
16、.5 查詢商品界面輸入商品名稱后,系統會顯示你所查詢的商品信息,有商品的代碼、商品的名稱、商品的產地、商品的單價和庫存量等。(5)統計商品圖5.6 統計商品界面選擇5后進入統計商品,輸入商品名稱后,會顯示出商品的數量和總價值。 (6)顯示所有商品選擇6后 系統會顯示所有商品的信息圖5.7 顯示所有商品信息界面第6章 總 結在xx老師的耐心指導下,本組成員結各人之長,集集體智慧,終于基本完成了超市管理系統的設計與實現。在實訓期間,各成員按時完成各自的分配任務,及時交付組長進行整理融合。整理完畢后進行調試發現有不少有待改善之處,如商品價格和商品庫存量不能為負數,也不能高的離譜等。在李杰老師的嚴格要求下,最后還增加了一個顯示欄,通過該顯示函數的實現可對超市所有商品一目了然。本著認真學習,對自己負責的態度,本組成員共同努力,對該系統程序的不足之處盡力修改,盡量達到程序的健壯性等。但是盡管本組成員都非常努力,但該程序仍有不足之處,如對于商品代碼num和商品庫存量count若輸入英文字母,按回車鍵后屏幕便會閃爍不停,重新打開系統后前面所輸入的商品信息不能保存,在保存商品時按Y以外的鍵也可保存等。總之,在
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 贈送衣物合同協議
- 2025度假村租賃經營合同
- 2025設備保養維修合同模板
- 收割蘆葦合同協議
- 2025上海志良電子科技有限公司招聘行政專員2人筆試參考題庫附帶答案詳解
- 租賃旅社合同協議
- 童裝進貨合同協議
- 球鞋交易合同協議
- 重疾保險合同協議
- 石渣購銷合同協議
- 啟光2025年河北省初中學業水平模擬考試物理試卷及答案解析(一)
- 中級維保全部抽考題
- 工業機器人技術應用專業人才培養方案(中職)
- 2025年危險化學品企業安全生產執法檢查重點事項指導目錄
- 《水利工程白蟻防治技術規程SLT 836-2024》知識培訓
- 固定收益投資合同范本
- GB/T 45236-2025化工園區危險品運輸車輛停車場建設規范
- 夏季軍營安全教育
- 2025春教科版(2024)小學一年級下冊科學全冊教案
- 春夏季疾病預防
- 農作物病蟲害的發生規律
評論
0/150
提交評論