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

下載本文檔

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

文檔簡(jiǎn)介

1、.淮 海 工 學(xué) 院 計(jì) 算 機(jī) 工 程 學(xué) 院課程設(shè)計(jì)報(bào)告設(shè)計(jì)名稱(chēng): C+程序設(shè)計(jì)課程設(shè)計(jì) 姓 名: 學(xué) 號(hào): 專(zhuān)業(yè)班級(jí): 系 院: 設(shè)計(jì)時(shí)間: 設(shè)計(jì)地點(diǎn): 成績(jī):指導(dǎo)教師評(píng)語(yǔ): 簽名: 年 月 日學(xué)習(xí)文檔 僅供參考1、課程設(shè)計(jì)目的 C+程序設(shè)計(jì)課程設(shè)計(jì)是電腦科學(xué)與技術(shù)專(zhuān)業(yè)重要的實(shí)踐性教學(xué)環(huán)節(jié)之一,本次設(shè)計(jì)結(jié)合實(shí)際應(yīng)用的要求,使課程設(shè)計(jì)既覆蓋C+的知識(shí)點(diǎn),又接近工程實(shí)際需要。目的是通過(guò)課程設(shè)計(jì)的綜合訓(xùn)練,培養(yǎng)學(xué)生實(shí)際分析問(wèn)題、解決問(wèn)題的能力,以及編程和動(dòng)手能力,最終目標(biāo)是通過(guò)課程設(shè)計(jì)這種形式,幫助學(xué)生系統(tǒng)掌握C+程序設(shè)計(jì)這門(mén)課程的主要內(nèi)容,養(yǎng)成良好的編程習(xí)慣,更好的完成教學(xué)任務(wù)。2、課程設(shè)計(jì)

2、任務(wù)與要求:本次課程設(shè)計(jì)利用C+程序設(shè)計(jì)課程中所學(xué)到的編程知識(shí)和編程技巧,完成具有一定難度和工作量的程序設(shè)計(jì)題目,幫助學(xué)生掌握編程、調(diào)試的基本技能,獨(dú)立完成所布置的任務(wù)。要求:1、對(duì)系統(tǒng)進(jìn)行功能需求分析2、設(shè)計(jì)合理的數(shù)據(jù)結(jié)構(gòu)和系統(tǒng)框架3、編程簡(jiǎn)練,程序功能齊全,能正確運(yùn)行4、說(shuō)明書(shū)、流程圖要清楚5、課題完成后必須按要求提交課程設(shè)計(jì)報(bào)告任務(wù):設(shè)計(jì)一個(gè)商品銷(xiāo)售管理系統(tǒng)。運(yùn)用C+語(yǔ)言描述商品類(lèi)、供給商類(lèi)。要求設(shè)計(jì)中綜合運(yùn)用C+基礎(chǔ)知識(shí),利用指針對(duì)商品、供給商鏈表進(jìn)行處理,方便快捷的進(jìn)行增刪改,充分利用友元來(lái)處理兩個(gè)類(lèi)之間的關(guān)系,理解面向?qū)ο蟪绦蛟O(shè)計(jì)的核心的概念。實(shí)現(xiàn)功能:1建立商品類(lèi)、供給商類(lèi)2商品

3、、供給商信息的初始化3商品信息的添加、修改、刪除、 查找4供給商信息的添加、修改、刪除、查找5商品信息、供給商信息的輸出備注:將商品、供給商保存為文件,能夠?qū)懭肱c讀出。概要設(shè)計(jì)(1) 需求分析:要實(shí)現(xiàn)對(duì)商品,供給商信息的添加、修改、刪除、查找,并輸出信息,能夠方便快捷,并有用戶(hù)能詳細(xì)清楚的操作指南。2模塊說(shuō)明:本次程序設(shè)計(jì)中,需要設(shè)計(jì)10個(gè)模塊,分別是添加、修改、刪除、查找、輸出商品信息和供給商信息,一共4個(gè)類(lèi):分別是商品類(lèi)、商品數(shù)據(jù)類(lèi)、供給商類(lèi)、供給商數(shù)據(jù)類(lèi)。通過(guò)幾個(gè)switch語(yǔ)句實(shí)現(xiàn)用戶(hù)選擇功能。主要函數(shù)流程圖:3詳細(xì)設(shè)計(jì) 商品數(shù)據(jù)類(lèi)的設(shè)計(jì)class spData private: ch

4、ar name100;int count;float iprice;float oprice; char gys20;public: int id;int getId()char *getName()int getCount()float getBuy() float getSale()char *getGys()void setId(int n)void setName(char na)void setCount(int c)void setBuy(float i)void setSale(float o) void setGys(char g);商品類(lèi)的設(shè)計(jì)class Commodity

5、private:spData t50; int n;public:void newFile()int id;int n;char name50; int count;float iprice;float oprice; char gys20;if(n0) n=0; int i;spData temp; for(;n+)coutid;if(id=-1)break;tn.setId(id);coutname;tn.setName(name);coutcount;tn.setCount(count);coutiprice;tn.setBuy(iprice);coutoprice;tn.setSale

6、(oprice);coutgys;tn.setGys(gys); cout假設(shè)商品添加完畢,請(qǐng)按-1退出添加!endl;for(i=0;itn.getId()temp=ti;ti=tn;tn=temp;void showData(int i)spData t,*p;p=&t;coutgetId()setw(10)getName()setw(10)getCount()setw(8)getBuy()setw(8)getSale()setw(8)getGys()endl;void showData() int n;cout商品編號(hào)setw(8)商品名setw(8)庫(kù)存量setw(10)已售量setw

7、(10)進(jìn)價(jià)setw(8)售價(jià)setw(8)供給商endl;for(int i=0;i0 )showData(i);cout商品種類(lèi):nendl;void save() ofstream fout;fout.open(商品清單.txt,ios:app); if(!fout)coutcannot open the file!endl;return ;fout商品編號(hào) 商品名 庫(kù)存量 進(jìn)價(jià) 售價(jià) 供給商 endl;for(int i=0;in;i+) foutti.getId()setw(14)ti.getName()setw(10)ti.getCount()setw(10)ti.getBuy()

8、setw(10)ti.getSale()setw(10)ti.getGys()endl;cout*Save Success!*endl;fout.close(); void xiugai() int count; char name100;float iprice;float oprice; char gys20;int temp;temp=search();if(temp=-1)coutcannot find the shopping!endl;return;else cout請(qǐng)輸入新數(shù)據(jù):endl;coutname;ttemp.setName(name);coutcount;ttemp.s

9、etCount(count);coutiprice;ttemp.setBuy(iprice);coutoprice;ttemp.setSale(oprice);coutgys;ttemp.setGys(gys);int search() int id;coutid;int low=0,mid,high=n-1;while(lowid)high=mid-1;else low=mid+1;return -1; void remove() spData t10; cout請(qǐng)輸入要?jiǎng)h除的商品編號(hào)id; fstream file(商品清單.txt,ios:in|ios:out|ios:binary);f

10、or(int u=0;u5;u+)file.read(char*)&tu,sizeof(tu);for(int v=0;v5;v+) if(tv.id=id)continue;elsefile.write(char*)&tv,sizeof(tv);cout該商品被刪除endl;file.close();供給商數(shù)據(jù)類(lèi)的設(shè)計(jì)class spData private: char name100;int count;float iprice;float oprice; char gys20;public: int id;int getId()char *getName(char na)int getC

11、ount()float getBuy() float getSale()char *getGys()void setId(int n)void setName(char na)void setCount(int c)void setBuy(float i)void setSale(float o) void setGys(char g);供給商類(lèi)的設(shè)計(jì)class gongyingshang private:gysData t50; int n; public:void newFile() int id;char name50;int phone;if(n0) n=0; for(;n+) cou

12、tid;if(id=-1)break;tn.setid();cout供給商名稱(chēng):;tn.setname(name);cout供給商 :;tn.setphone( ); cout假設(shè)供給商添加完畢,請(qǐng)按-1退出添加!endl;void showData(int i)gysData t,*p;p=&t;coutsetw(8)getid()setw(10)getname()setw(10)getphone()endl;void showData()coutsetw(8)供給商編號(hào)setw(8)供給商名稱(chēng)setw(8)供給商 endl;for(int i=0;in;i+)showData(i);cou

13、t產(chǎn)品種類(lèi):nendl;void save()ofstream fout;fout.open(供給商.txt,ios:app); if(!fout)coutcannot open the file!endl;return ;fout供給商編號(hào) 供給商 供給商 號(hào) endl;for(int i=0;in;i+) foutti.getid()setw(10)ti.getname()setw(14)ti.getphone()endl;cout*Save Success!*endl;fout.close(); int search() int id;coutid;int low=0,mid,high=

14、n-1;while(lowid)high=mid-1;else low=mid+1;return -1; void xiugai() char name100; int phone;int temp;temp=search();if(temp=-1)coutcannot find the gys!endl;return;else cout請(qǐng)輸入新數(shù)據(jù):endl;coutname;ttemp.setname(name);coutphone;ttemp.setphone(); void remove() gysData g10; cout請(qǐng)輸入要?jiǎng)h除的供給商編號(hào)id; fstream file(g

15、ys.txt,ios:in|ios:out|ios:binary);for(int u=0;u5;u+)file.read(char*)&gu,sizeof(gu);for(int v=0;v5;v+) if(gv.id=id)continue;elsefile.write(char*)&gv,sizeof(gv);cout該供給商被刪除endl;file.close();菜單函數(shù)的設(shè)計(jì)inline void menu2()system(cls);cout *歡送使用商品銷(xiāo)售管理系統(tǒng)* endl;cout *商品選項(xiàng)* endl;cout (1)添加 endl;cout (2)保存 endl;

16、cout (3)刪除 endl;cout (4)查找 endl; cout (5)信息輸出 endl; cout (6)修改 endl;cout (7)菜單 endl;cout (0)退出系統(tǒng) endl;cout *2012.6* endl; inline void menu1()system(cls); cout *歡送使用商品銷(xiāo)售管理系統(tǒng)* endl;cout *主菜單* endl;cout (1)商品選項(xiàng) endl;cout (2)供給商選項(xiàng) endl;cout (0)退出系統(tǒng) endl;cout *2012.6* endl; inline void menu3()system(cls)

17、;cout *歡送使用商品銷(xiāo)售管理系統(tǒng)* endl;cout *供給商選項(xiàng)* endl;cout (1)添加 endl;cout (2)保存 endl; cout (3)刪除 endl;cout (4)查找 endl; cout (5)信息輸出 endl; cout (6)修改 endl;cout (7)菜單 endl; cout (0)退出系統(tǒng) endl;cout *2012.6* endl;主函數(shù)的設(shè)計(jì):int main()menu1();int x;coutx;switch(x)case 1:menu2();Commodity com;int c;for(;)coutc;switch(c

18、)case 1:com.newFile();break;case 2:com.save();break;case 3:com.remove();break; case 4:com.search;break; case 5:com.showData();break; case 6:menu1();break;case 0:cout *謝謝使用* endl;cout *!再見(jiàn)!* endl; break;case 2:menu3();gongyingshang gys;int c;for(;)coutc;switch(c)case 1:gys.newFile();break;case 2:gys.

19、save();break; case 3:gys.remove();break; case 4:gys.showData();break; case 5:gys.search();break;case 6:menu1();break;case 0:cout *謝謝使用* endl;cout *!再見(jiàn)!* endl; break;case 0:cout *謝謝使用* endl;cout *!再見(jiàn)!* endl; break;return 0;4調(diào)試分析:F:程序3.cpp(226) : warning C4700: local variable n used without having bee

20、n initializedF:程序3.cpp(246) : warning C4700: local variable c1 used without having been initializedF:程序3.cpp(348) : warning C4700: local variable g1 used without having been initializedC:Documents and SettingsAdministrator桌面q.cpp(237) : error C2562: search : void function returning a value C:Documen

21、ts and SettingsAdministrator桌面q.cpp(228) : see declaration of searchC:Documents and SettingsAdministrator桌面q.cpp(243) : error C2562: search : void function returning a value C:Documents and SettingsAdministrator桌面q.cpp(228) : see declaration of search(5)用戶(hù)使用說(shuō)明手冊(cè):1.進(jìn)入演示程序后,即顯示對(duì)話(huà)形式的提示操作過(guò)程: 如第一個(gè)選擇1 商品選

22、項(xiàng) ,即顯示 1添加 2保存 3刪除 4查找 5信息輸出6修改 7菜單 0退出系統(tǒng) 選擇1,即顯示商品編號(hào)、商品名、庫(kù)存量、進(jìn)價(jià)、售價(jià)、供給商各項(xiàng)商品信息,一次輸入所添加的數(shù)據(jù)。添加完畢,按-1退出添加;選擇2,即將商品信息保存;選擇3,刪除要?jiǎng)h除的商品信息;選擇4,查找商品信息;選擇5,信息的輸出;選擇6,修改信息選擇7,返回到菜單;選擇0,退出系統(tǒng)。如第一個(gè)選擇2,供給商選項(xiàng) ,同樣顯示 1添加 2保存 3刪除 4查找 5信息輸出6修改 7菜單 0退出系統(tǒng) 選擇數(shù)據(jù)的功能跟上面一樣。第一個(gè)選擇0 退出系統(tǒng)。6測(cè)試數(shù)據(jù)進(jìn)入演示程序后,即顯示對(duì)話(huà)形式的提示操作過(guò)程:選擇:1 商品選項(xiàng)選擇:1

23、添加商品選擇:2 保存信息選擇:3 刪除信息選擇:4 查找信息選擇:5 信息輸出選擇:6 修改選擇:0 退出系統(tǒng)選擇:2 供給商選項(xiàng)供給商信息的各選項(xiàng)跟商品信息的選項(xiàng)一樣。4課程設(shè)計(jì)成果程序源代碼#include#include#include#include #define Mfname 100#include #include #include #includeclass spData private: char name100;int count;float iprice;float oprice; char gys20;public: int id;int getId()return

24、id;char *getName()return name;int getCount()return count;float getBuy()return iprice; float getSale()return oprice;char *getGys()return gys;void setId(int n)id=n;void setName(char na)strcpy(name,na);void setCount(int c)count=c; void setBuy(float i)iprice=i;void setSale(float o)oprice=o; void setGys(

25、char g) strcpy(gys,g);class gysDataprivate:char name100;int phone;public: int id;int getid()return id;char *getname()return name;int getphone()return phone;void setid()cinid;void setname(char na)strcpy(name,na);void setphone()cinphone;class Commodity private:spData t50; int n;public:void newFile()in

26、t id;int n;char name50; int count;float iprice;float oprice; char gys20;if(n0) n=0; int i;spData temp; for(;n+)coutid;if(id=-1)break;tn.setId(id);coutname;tn.setName(name);coutcount;tn.setCount(count);coutiprice;tn.setBuy(iprice);coutoprice;tn.setSale(oprice);coutgys;tn.setGys(gys); cout假設(shè)商品添加完畢,請(qǐng)按-

27、1退出添加!endl;for(i=0;itn.getId()temp=ti;ti=tn;tn=temp;void showData(int i)spData t,*p;p=&t;coutgetId()setw(10)getName()setw(10)getCount()setw(8)getBuy()setw(8)getSale()setw(8)getGys()endl;void showData() int n;cout商品編號(hào)setw(8)商品名setw(8)庫(kù)存量setw(10)已售量setw(10)進(jìn)價(jià)setw(8)售價(jià)setw(8)供給商endl;for(int i=0;i0 )sho

28、wData(i);cout商品種類(lèi):nendl;void save() ofstream fout;fout.open(商品清單.txt,ios:app); if(!fout)coutcannot open the file!endl;return ;fout商品編號(hào) 商品名 庫(kù)存量 進(jìn)價(jià) 售價(jià) 供給商 endl;for(int i=0;in;i+) foutti.getId()setw(14)ti.getName()setw(10)ti.getCount()setw(10)ti.getBuy()setw(10)ti.getSale()setw(10)ti.getGys()endl;cout*

29、Save Success!*endl;fout.close(); void xiugai() int count; char name100;float iprice;float oprice; char gys20;int temp;temp=search();if(temp=-1)coutcannot find the shopping!endl;return;else cout請(qǐng)輸入新數(shù)據(jù):endl;coutname;ttemp.setName(name);coutcount;ttemp.setCount(count);coutiprice;ttemp.setBuy(iprice);co

30、utoprice;ttemp.setSale(oprice);coutgys;ttemp.setGys(gys);int search() int id;coutid;int low=0,mid,high=n-1;while(lowid)high=mid-1;else low=mid+1;return -1; void remove() spData t10; cout請(qǐng)輸入要?jiǎng)h除的商品編號(hào)id; fstream file(商品清單.txt,ios:in|ios:out|ios:binary);for(int u=0;u5;u+)file.read(char*)&tu,sizeof(tu);f

31、or(int v=0;v5;v+) if(tv.id=id)continue;elsefile.write(char*)&tv,sizeof(tv);cout該商品被刪除endl;file.close();class gongyingshang private:gysData t50; int n; public:void newFile() int id;char name50;int phone;if(n0) n=0; for(;n+) coutid;if(id=-1)break;tn.setid();cout供給商名稱(chēng):;tn.setname(name);cout供給商 :;tn.setphone( ); cout假設(shè)供給商添加完畢,請(qǐng)按-1退出添加!endl;void showData(int i)gysData t,*p;p=&t;coutsetw(8)getid()setw(10)getname()setw(10)getphone()endl;void showData()coutsetw(8)供給商編號(hào)setw(8)供給商名稱(chēng)setw(8)供給商 endl;for(int i=0;in;i+)showData(i);cout產(chǎn)品種類(lèi):nendl;void save

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論