版權(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 綜合能源托管合同(2篇)
- 銀齡教師合同(2篇)
- 部編初中歷史九上第6單元《資本主義制度的初步確立》考點(diǎn)測(cè)試
- 安健環(huán)體系抽考復(fù)習(xí)試題
- 七年級(jí)歷史與社會(huì)上冊(cè)說(shuō)課稿(圖片版)第1單元第1課 我的家在哪里
- 西昌學(xué)院《電力系統(tǒng)繼電保護(hù)》2022-2023學(xué)年期末試卷
- 西安外國(guó)語(yǔ)大學(xué)《文學(xué)文本分析與應(yīng)用》2023-2024學(xué)年第一學(xué)期期末試卷
- ktv房屋出租合同
- 2017年合同范本不可抗力約定
- 形容詞最高級(jí)(說(shuō)課稿)-2024-2025學(xué)年譯林版(三起)英語(yǔ)六年級(jí)上冊(cè)
- 2024年區(qū)人民法院公開(kāi)招考聘用制司法輔助人員考試題及答案
- 特立帕肽治療骨質(zhì)疏松性骨折中國(guó)專(zhuān)家共識(shí)(2024版)解讀
- (完整版)新員工進(jìn)場(chǎng)三級(jí)安全教育考核-試卷及答案
- 2024屆陜西省西安市西安交大附中中考四模數(shù)學(xué)試題含解析
- DB3305-T 104-2019環(huán)境污染責(zé)任保險(xiǎn)風(fēng)險(xiǎn)評(píng)估技術(shù)規(guī)范
- GB/T 23132-2024電動(dòng)剃須刀
- 門(mén)窗維修簡(jiǎn)單合同范本(2024版)
- 糖尿病酮癥酸中毒
- 03D201-4 10kV及以下變壓器室布置及變配電所常用設(shè)備構(gòu)件安裝
- 《民用爆炸物品企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化實(shí)施細(xì)則》解讀
- 2024年少先隊(duì)知識(shí)競(jìng)賽題庫(kù)與答案
評(píng)論
0/150
提交評(píng)論