超市商品管理系統(tǒng)設(shè)計(jì)_C++_第1頁(yè)
超市商品管理系統(tǒng)設(shè)計(jì)_C++_第2頁(yè)
超市商品管理系統(tǒng)設(shè)計(jì)_C++_第3頁(yè)
超市商品管理系統(tǒng)設(shè)計(jì)_C++_第4頁(yè)
超市商品管理系統(tǒng)設(shè)計(jì)_C++_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 重慶科技學(xué)院面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)報(bào)告重慶科技學(xué)院面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)報(bào)告 學(xué) 院:_電氣與信息工程學(xué)院_ 專業(yè)班級(jí): 學(xué)生姓名: 學(xué) 號(hào): 設(shè)計(jì)地點(diǎn)(單位)_計(jì)算機(jī)自主學(xué)習(xí)中心 _ _設(shè)計(jì)題目:_超市商品管理系統(tǒng)設(shè)計(jì)_ _ 完成日期: 2013 年1月18日 指導(dǎo)教師評(píng)語(yǔ): _ _ _ _ 成績(jī)(五級(jí)記分制):_ _ 指導(dǎo)教師(簽字):_ _ 摘要商品管理系統(tǒng)是一個(gè)企業(yè)不可缺少的部分,它的內(nèi)容對(duì)于企業(yè)的決策者和管理者來(lái)說(shuō)都很重要,所以商品管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。隨著科學(xué)技術(shù)的不斷提高,其強(qiáng)大的功能已經(jīng)為人們深刻認(rèn)識(shí),它已經(jīng)進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著重

2、要作用。因此,通過(guò)電腦軟件編程,開(kāi)發(fā)這樣一套商品管理系統(tǒng)成為很有必要的事情。用戶可以根據(jù)該系統(tǒng)查詢相關(guān)信息,管理者可以根據(jù)該系統(tǒng)查詢、修改商品信息。關(guān)鍵字:商品管理、查詢、科技、編程重慶科技學(xué)院程序設(shè)計(jì)任務(wù)書(shū)設(shè)計(jì)題目:超市商品管理系統(tǒng)設(shè)計(jì)學(xué)生姓名課程名稱面向?qū)ο蟪绦蛟O(shè)計(jì)基礎(chǔ)課程設(shè)計(jì)專業(yè)班級(jí)計(jì)科1102地 點(diǎn)I304/I306起止時(shí)間2013年1月7日1月18日設(shè)計(jì)內(nèi)容及要求1)問(wèn)題描述超市中商品分為四類,分別是食品、化妝品、日用品和飲料。每種商品都包含商品名稱、價(jià)格、庫(kù)存量和生產(chǎn)廠家、品牌等信息。主要完成對(duì)商品的銷售、統(tǒng)計(jì)和簡(jiǎn)單管理。2)功能要求(1)銷售功能。購(gòu)買(mǎi)商品時(shí),先輸入類別,然后輸入

3、商品名稱,并在庫(kù)存中查找該商品的相關(guān)信息。如果有庫(kù)存量,輸入購(gòu)買(mǎi)的數(shù)量,進(jìn)行相應(yīng)計(jì)算。如果庫(kù)存量不夠,給出提示信息,結(jié)束購(gòu)買(mǎi)。(2)商品簡(jiǎn)單管理功能。添加功能:主要完成商品信息的添加。查詢功能:可按商品類別、商品名稱、生產(chǎn)廠家進(jìn)行查詢。若存在相應(yīng)信息,輸出所查詢的信息,若不存在該記錄,則提示“該記錄不存在!”。修改功能:可根據(jù)查詢結(jié)果對(duì)相應(yīng)的記錄進(jìn)行修改。刪除功能:主要完成商品信息的刪除。先輸入商品類別,再輸入要?jiǎng)h除的商品名稱,根據(jù)查詢結(jié)果刪除該物品的記錄,如果該商品不在物品庫(kù)中,則提示“該商品不存在”。(3)統(tǒng)計(jì)功能。輸出當(dāng)前庫(kù)存中所有商品的總數(shù)及詳細(xì)信息;可按商品的價(jià)格、庫(kù)存量、生產(chǎn)廠家進(jìn)

4、行統(tǒng)計(jì),輸出統(tǒng)計(jì)信息時(shí),要按從大到小進(jìn)行排序。3)問(wèn)題的解決方案根據(jù)系統(tǒng)功能要求,可以將問(wèn)題解決分為以下步驟: (1)應(yīng)用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計(jì);(2)分析系統(tǒng)中的各個(gè)實(shí)體及它們之間的關(guān)系; (3)根據(jù)問(wèn)題描述,設(shè)計(jì)系統(tǒng)的類層次; (4)完成類層次中各個(gè)類的描述; (5)完成類中各個(gè)成員函數(shù)的定義; (6)完成系統(tǒng)的應(yīng)用模塊; (7)功能調(diào)試;(8)完成系統(tǒng)總結(jié)報(bào)告。根據(jù)題目要求,運(yùn)用所學(xué)知識(shí),完成設(shè)計(jì)和實(shí)現(xiàn)工作,并按照書(shū)寫(xiě)規(guī)范,撰寫(xiě)課程設(shè)計(jì)報(bào)告。設(shè)計(jì)參數(shù)(1)系統(tǒng)分析、設(shè)計(jì)正確。(2)結(jié)果以圖表方式顯示。(3)界面簡(jiǎn)潔、美觀。(4)報(bào)告格式規(guī)范。進(jìn)度要求周一:

5、明確設(shè)計(jì)任務(wù),學(xué)習(xí)相關(guān)基礎(chǔ)知識(shí)周二:熟悉各知識(shí)點(diǎn),進(jìn)行基礎(chǔ)練習(xí)周三:根據(jù)題目要求,進(jìn)行設(shè)計(jì)和實(shí)現(xiàn)周四:根據(jù)題目要求,進(jìn)行設(shè)計(jì)和實(shí)現(xiàn)周五:程序測(cè)試參考資料1Richard Johnsonbaugh. Martin Kalin.面向?qū)ο蟪绦蛟O(shè)計(jì)C+語(yǔ)言描述.機(jī)械工業(yè)出版社.2009年2錢(qián)能.+語(yǔ)言程序設(shè)計(jì)教程.清華大學(xué)出版社.2005年其它說(shuō)明.本表應(yīng)在每次實(shí)施前一周由負(fù)責(zé)教師填寫(xiě)二份,院系審批后交院系辦備案,一份由負(fù)責(zé)教師留用。.若填寫(xiě)內(nèi)容較多可另紙附后。3.一題多名學(xué)生共用的,在設(shè)計(jì)內(nèi)容、參數(shù)、要求等方面應(yīng)有所區(qū)別。教研室主任: 指導(dǎo)教師:裴仰軍/伍建全/焦曉軍/陳應(yīng)祖 2013年1月1日目

6、錄摘要 2課程設(shè)計(jì)任務(wù)書(shū) 31 軟件需求分析說(shuō)明 62 軟件分析與設(shè)計(jì) 7 2.1 軟件界面設(shè)計(jì) 7 2.2 軟件的數(shù)據(jù)(結(jié)構(gòu))設(shè)計(jì) 7 2.3 軟件的算法設(shè)計(jì) 93軟件的實(shí)現(xiàn) 114軟件的測(cè)試 185軟件使用說(shuō)明書(shū) 21致謝 22參考文獻(xiàn) 23第一章 軟件需求分析說(shuō)明書(shū) 該商品管理只要把商品分為四類,分別是食品、化妝品、日用品和飲料。每種商品都包含商品名稱、價(jià)格、庫(kù)存量和生產(chǎn)廠家信息。該商品管理系統(tǒng)主要完成對(duì)商品的銷售、統(tǒng)計(jì)和簡(jiǎn)單管理。(1)銷售功能。購(gòu)買(mǎi)商品時(shí),先輸入類別,然后輸入商品名稱,并在庫(kù)存中查找該商品的相關(guān)信息。如果有庫(kù)存量,輸入購(gòu)買(mǎi)的數(shù)量,進(jìn)行相應(yīng)計(jì)算。如果庫(kù)存量不夠,給出提示

7、信息,結(jié)束購(gòu)買(mǎi)。(2)商品簡(jiǎn)單管理功能。添加功能:主要完成商品信息的添加。查詢功能:可按商品類別、商品名稱、生產(chǎn)廠家進(jìn)行查詢。若存在相應(yīng)信息,輸出所查詢的信息,若不存在該記錄,則提示“該記錄不存在!”。修改功能:可根據(jù)查詢結(jié)果對(duì)相應(yīng)的記錄進(jìn)行修改。刪除功能:主要完成商品信息的刪除。先輸入商品類別,再輸入要?jiǎng)h除的商品名稱,根據(jù)查詢結(jié)果刪除該物品的記錄,如果該商品不在物品庫(kù)中,則提示“該商品不存在”。(3)統(tǒng)計(jì)功能。輸出當(dāng)前庫(kù)存中所有商品的總數(shù)及詳細(xì)信息;可按商品的價(jià)格、庫(kù)存量、生產(chǎn)廠家進(jìn)行統(tǒng)計(jì)。 第二章 系統(tǒng)分析與設(shè)計(jì)2.1 軟件界面設(shè)計(jì) 圖2.11 圖2.122.2 軟件的數(shù)據(jù)(結(jié)構(gòu))設(shè)計(jì) 本

8、系統(tǒng)運(yùn)用了#include<iostream>、#include<string>、#include<fstream>、#include<sstream>四個(gè)包頭文件。并將食品、化妝品、日用品、飲料的信息分別保存在四個(gè)文本文件food.txt、cosmetics.txt、dailyuse.txt、drink.txt中,系統(tǒng)運(yùn)行時(shí),可以更方便獲取信息。 每個(gè)文本文件里的商品信息分別是商品的名稱、價(jià)格、庫(kù)存量、生產(chǎn)廠家。四個(gè)文本文件的內(nèi)容如下: 圖2.21 foods。txt 圖2.22 drink.txt 圖2.23 dailyuse.txt 圖2.

9、24 cosmetics.txt2.3 軟件的算法設(shè)計(jì)主菜單 選擇保存顯示統(tǒng)計(jì)添加刪除修改查詢銷售飲料日用品化妝品食品按名稱查找按類別查找 圖2.31 查詢銷售 名稱類別選擇類別選擇選擇名稱輸入名稱購(gòu)買(mǎi)數(shù)量查詢成功 超出庫(kù)存數(shù)量 庫(kù)存 有貨銷售成功 圖2.33 圖2.32 刪除/添加修改 選擇類別選擇類別 輸入名稱輸入修改名稱 內(nèi)容選擇內(nèi)容 無(wú) 無(wú) 此 此 商 商 刪除/添加 內(nèi)容輸入修改內(nèi)容 品 品 結(jié)束修改結(jié)束 圖2.34 圖2.35 第三章 軟件的實(shí)現(xiàn) (1)類的實(shí)現(xiàn) class goodspublic:void read(string h);void display(); void s

10、earchnumber();void xiugainame(string x)name=x;/修改名稱void xiugaiprice(string x)price=x;/修改價(jià)格void xiugaicount(int x)count=x;/修改庫(kù)存量void xiugaichangjia(string x)changjia=x;/修改生產(chǎn)廠家string name;/名稱string price;/價(jià)格 int count;/庫(kù)存量string changjia;/生產(chǎn)廠家; void goods : read(string h) istringstream strin(h);strin&

11、gt;>name>>price>>count>>changjia; void goods : display() cout<<name<<"t "<<price<<"t "<<count<<" t"<<changjia<<"t "<<endl; 定義了一個(gè)goods的商品類,類里面只含有共有成員,包括變量name(名稱)、price(價(jià)格)、count(庫(kù)存量)和ch

12、angjia(生產(chǎn)廠家)以及幾個(gè)重要的函數(shù)。(2)文件的讀取goods *per1;per1=new goods 200;ifstream fin1("foods.txt");while(getline(fin1,buff)per1p1.read(buff);p1+; 運(yùn)用了#include<sstream>包頭文件 從文本文件中讀取字符到對(duì)象中,再把對(duì)象作為程序的輸入流,既可把從文件中讀取來(lái)的數(shù)字字符單個(gè)進(jìn)行讀取,從而進(jìn)行處理。這里只是對(duì)foods文本文件的讀取。其余三個(gè)文本文件操作的代碼類同。(3)文件的保存ofstream pout1("food

13、s.txt");for(j1=0;j1<p1;j1+)pout1<<"tt"<<<<"t"<<per1j1.price<<"t"<<per1j1.count<<" t"<<per1j1.changjia<<"n"pout1.close()通過(guò)ofstream將改變了的信息寫(xiě)入文件中。(4)商品銷售的功能實(shí)現(xiàn)void xiaoshou_goods(int

14、 p,goods *per) int count, count1;string price,name,changjia;cin>>name;for(int j=0;j<p;j+) if(=name) cout<<"銷售的商品信息為:"<<endl; print();cout<<"tt"<<<<"t"<<perj.price<<"t "<<perj.count<&

15、lt;"t "<<perj.changjia<<"n"break; if(j=p) cout<<"n對(duì)不起,未找到名稱為"<<name<<"的商品" else int h=0;while(h=0) cout<<"請(qǐng)輸入銷售的庫(kù)存量(件):" cin>>count1; if(panduan(count1,p,j,per) perj.count-=count1; cout<<"購(gòu)買(mǎi)成功!&quo

16、t;<<endl; h=1;break;else cout<<"庫(kù)存量不足!請(qǐng)重新輸入銷售庫(kù)存量:"<<endl; bool panduan(int s,int p,int j,goods*per)if(s<=perj.count) return true;elsereturn false;商品的銷售實(shí)現(xiàn)運(yùn)用了兩個(gè)函數(shù)來(lái)實(shí)現(xiàn),通過(guò)查找,找到需要銷售的商品。然后通過(guò)另一個(gè)判斷函數(shù)判斷購(gòu)買(mǎi)的件數(shù)是不是少于庫(kù)存量,若多余庫(kù)存量則重新購(gòu)買(mǎi)。(5)商品查找的功能實(shí)現(xiàn)cout<<"nt= 查找商品信息=nn"co

17、ut<<"t"<<"1按類別查找 2按名稱查找 <請(qǐng)選擇>:"cin>>b;switch(b)case '1':cout<<"請(qǐng)選擇 : 1食品 2化妝品 3日用品 4飲料"<<endl; cin>>c; switch(c) case '1': print();for(j1=0;j1<p1;j1+) per1j1.display();break; case '2': .; break; case &

18、#39;3': .; break;case '4': .; break; default: cout<<"n輸入有誤!" break; break; case '2': cout<<"請(qǐng)輸入名稱 :" cin>>name; for(j=0;j<150;j+) if(=name) name="1" break; if(=name) if(=name) if(=name) els

19、e continue; if(name="1") print(); cout<<"tt"<<<<"t"<<per1j.price<<"t "<<per1j.count<<"t "<<per1j.changjia<<"n" break; if(name="2" ) if(name="3" ) if(name=&q

20、uot;4") elsecout<<"沒(méi)有關(guān)于該商品的信息!"break; cout<<"n"<<"請(qǐng)按任意鍵返回主菜單!"cin>>z; 查找功能的實(shí)現(xiàn)代碼直接寫(xiě)在主函數(shù)里面的,通過(guò)switch選擇是通過(guò)類別查找還是名稱查找。若通過(guò)類別查找只能查找一個(gè)類別里的所有商品。而通過(guò)名稱查找可以查看單個(gè)商品的信息。 (6)商品刪除的功能實(shí)現(xiàn) cout<<"請(qǐng)輸入要?jiǎng)h除的食品的名稱:" cin>>name;for(j=0;j<p1;j+

21、)if(name=)break;if(j=p1)cout<<"n對(duì)不起,未找到名稱為"<<name<<"的商品"cout<<"nn請(qǐng)輸入任意鍵點(diǎn)回車(chē)鍵返回!"cin>>z;else while(j!=p1) per1j=per1j+1;j+;p1-;cout<<"刪除成功!"<<endl; 刪除商品的功能代碼寫(xiě)在主函數(shù)里面。首先選擇刪除商品的類型。此處代碼為刪除類型為食品的商品。首先系統(tǒng)會(huì)根據(jù)你輸入的需要?jiǎng)h除的商

22、品進(jìn)行查找,若無(wú)此商品,系統(tǒng)將給出提示,若有此商品,系統(tǒng)將成功刪除該商品。(7)商品修改的功能實(shí)現(xiàn) void change_goods(int p,goods *per) char c; string price,name,changjia; int count; cin>>name; for(int j=0;j<p;j+) if(=name) name="0" break; else continue; if(name="0") cout<<"n"<<"名稱為&q

23、uot;<<<<"的商品信息:n"print(); perj.display();cout<<"請(qǐng)選擇要修改的商品信息<1名稱 2價(jià)格 3庫(kù)存 4生產(chǎn)廠家>:"cin>>c;switch(c) case '1': cout<<"請(qǐng)輸入修改后的名稱:" cin>>name; perj.xiugainame(name); cout<<"修改后的商品信息為:"<<endl; per

24、j.display(); break; case '2': break; case '3': break; case '4': break; default:cout<<"輸入有誤!"break; else cout<<"n沒(méi)有該商品!"通過(guò)一個(gè)函數(shù)來(lái)實(shí)現(xiàn)商品的修改,選擇修改的內(nèi)容對(duì)商品進(jìn)行修改。(8)商品添加的功能實(shí)現(xiàn) cout<<"nt= 添加商品信息 =nn" cout<<"請(qǐng)選擇添加的類型 : 1食品 2化妝品 3日用品

25、4飲料"<<endl; cin>>c; switch(c) case'1': cout<<"名稱:" cin>>; cout<<"價(jià)格:" cin>>per1p1.price; cout<<"庫(kù)存:" cin>>per1p1.count; cout<<"生產(chǎn)廠家:" cin>>per1p1.changjia; cout<<"你添

26、加的商品信息為:"<<endl; print(); cout<<"tt"<<<<"t"<<per1p1.price<<"t "<<per1p1.count<<" t"<<per1p1.changjia<<"n" p1+;break;case'2':.break; case'3':.break;case'4':.break; default: cout<<"n輸入有誤!" break; cout<<"n"<<"請(qǐng)按任意鍵返回主菜單!" cin>>z;商品添加的代碼是直接寫(xiě)在主函數(shù)里面。根據(jù)你添加商品選擇商品的類型,根據(jù)提示輸入添加商品的相關(guān)信息。 (9)商品統(tǒng)計(jì)的功能實(shí)現(xiàn) void tongji_goods(

溫馨提示

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

評(píng)論

0/150

提交評(píng)論