版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、淮海工學(xué)院計(jì)算機(jī)工程學(xué)院課程設(shè)計(jì)報(bào)告設(shè)計(jì)名稱:C+程序設(shè)計(jì)課程設(shè)計(jì)姓 名:學(xué) 號:專業(yè)班級:系(院):設(shè)計(jì)時(shí)間:設(shè)計(jì)地點(diǎn):指導(dǎo)教師評語:成績:簽名:年 月 日1、課程設(shè)計(jì)目的C+程序設(shè)計(jì)課程設(shè)計(jì)是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)重要的實(shí)踐性教學(xué)環(huán)節(jié)之一,本次設(shè)計(jì)結(jié)合實(shí)際應(yīng)用的要求,使課程設(shè)計(jì)既覆蓋 C+的知識點(diǎn),又接近工程實(shí)際需要。目的是通過課程設(shè)計(jì) 的綜合訓(xùn)練,培養(yǎng)學(xué)生實(shí)際分析問題、解決問題的能力,以及編程和動(dòng)手能力,最終目標(biāo)是通過 課程設(shè)計(jì)這種形式,幫助學(xué)生系統(tǒng)掌握C+程序設(shè)計(jì)這門課程的主要內(nèi)容,養(yǎng)成良好的編程習(xí)慣, 更好的完成教學(xué)任務(wù)。2、課程設(shè)計(jì)任務(wù)與要求:本次課程設(shè)計(jì)利用C+程序設(shè)計(jì)課程中所學(xué)到
2、的編程知識和編程技巧,完成具有一定難 度和工作量的程序設(shè)計(jì)題目,幫助學(xué)生掌握編程、調(diào)試的基本技能,獨(dú)立完成所布置的任務(wù)。要求:1、對系統(tǒng)進(jìn)行功能需求分析2、設(shè)計(jì)合理的數(shù)據(jù)結(jié)構(gòu)和系統(tǒng)框架3、編程簡練,程序功能齊全,能正確運(yùn)行4、說明書、流程圖要清楚5、課題完成后必須按要求提交課程設(shè)計(jì)報(bào)告任務(wù):設(shè)計(jì)一個(gè)商品銷售管理系統(tǒng)。運(yùn)用C+語言描述商品類、供應(yīng)商類。要求設(shè)計(jì)中綜合運(yùn)用C+基礎(chǔ)知識,利用指針對商品、 供應(yīng)商鏈表進(jìn)行處理,方便快捷的進(jìn)行增刪改,充分利用友元來處理兩個(gè)類之間的關(guān)系, 理解面向?qū)ο蟪绦蛟O(shè)計(jì)的核心的概念。實(shí)現(xiàn)功能:(1)建立商品類、供應(yīng)商類(2)商品、供應(yīng)商信息的初始化(3) 商品信息的
3、添加、修改、刪除、查找(4)供應(yīng)商信息的添加、修改、刪除、查找(5)商品信息、供應(yīng)商信息的輸出備注:將商品、供應(yīng)商保存為文件,能夠?qū)懭肱c讀出概要設(shè)計(jì)(1)需求分析:要實(shí)現(xiàn)對商品,供應(yīng)商信息的添加、修改、刪除、查找,并輸出信息,能夠方便快捷,并有用戶 能詳細(xì)清楚的操作指南。(2) 模塊說明:本次程序設(shè)計(jì)中,需要設(shè)計(jì)10個(gè)模塊,分別是添加、修改、刪除、查找、輸出 商品信息和供應(yīng)商信息,一共4個(gè)類:分別是商品類、商品數(shù)據(jù)類、供應(yīng)商類、供應(yīng)商數(shù)據(jù)類。 通過幾個(gè)switch語句實(shí)現(xiàn)用戶選擇功能。主要函數(shù)流程圖:(3)詳細(xì)設(shè)計(jì)商品數(shù)據(jù)類的設(shè)計(jì)class spDataprivate:char name100
4、;int count;float iprice;float oprice;char gys20;public:int id;int getld()char *getName()int getCou nt()float getBuy()float getSale()char *getGys()void setId(i nt n)void setName(char n a)void setCo un t(i nt c)void setBuy(float i)void setSale(float o)void setGys(char g);商品類的設(shè)計(jì)class Commodityprivate:s
5、pData t50;int n;public:void n ewFile()int id;int n;char n ame50;int count;float iprice;float oprice;char gys20;if(n id;if(id=-1)break;tn .setld(id);cout商品名:;cinn ame;tn .setName( name);cout庫存量:;cin co unt;tn .setCo un t(co un t);cout進(jìn)價(jià):;cin iprice;tn .setBuy(iprice);cout售價(jià):;cin oprice;tn .setSale(op
6、rice);cout供應(yīng)商:;cin gys;tn .setGys(gys);coutvv若商品添加完畢,請按-1退出添加!endl;for(i=0;it n.getld()temp=ti;ti=t n;t n=temp;void showData(i nt i)spData t,*p;P=&t;coutp-getld()vgetName()getCou nt()vgetBuy()vgetSale() vvsetw(8)vvp-getGys()ve ndl;void showData() int n;cout商品編號vvsetw(8)v商品名vvsetw(8)v庫存量setw(10)已售量se
7、tw(10)進(jìn)價(jià)setw(8)售價(jià)setw(8)供應(yīng)商endl; for(i nt i=0;i 0) showData(i);cout商品種類:nendl;void save()ofstream fout;fout.open(” 商品清單.txt,ios:app);if(!fout)coutca nnot ope n the file!e ndl;return ;進(jìn)價(jià)foutvv商品編號 商品名 庫存量 售價(jià) 供應(yīng)商 endl;for(i nt i=0;i n ;i+)foutvti.getld()vvsetw(14)vvti.getName()vvsetw(10)vvti.getCou nt
8、()setw(1 )ti.getBuy()vsetw(10)vvti.getSale()vvsetw(10)vvti.getGys()vve ndl;CoUt*Save SUCCess!*e ndl;fout.close();void xiugai()int count;char name100;float iprice;float oprice;char gys20;int temp;temp=search();if(temp=-1)coutca nnot find the shopp in g!e ndl;return;else cout請輸入新數(shù)據(jù): co unt;ttemp.setCo
9、 un t(co un t);cout進(jìn)價(jià):;cin iprice;ttemp.setBuy(iprice);cout售價(jià):;cin oprice;ttemp.setSale(oprice);cout供應(yīng)商:;cin gys;ttemp.setGys(gys);int search() int id;coutid:;ci n id;in t low=0,mid,high=n-1;while(lowid)high=mid-1;else low=mid+1;return -1;void remove() spData t1O;coutvv請輸入要?jiǎng)h除的商品編號 id;fstream file( 商
10、品清單.txt,ios:i n|ios:out|ios:b in ary);for(i nt u=0;u5;u+)file.read(char*)&tu,sizeof(tu);for(i nt v=0;v5;v+)if(tv.id=id)con ti nue;elsefile.write(char*)&tv,sizeof(tv);cout該商品被刪除endl;file.close();;供應(yīng)商數(shù)據(jù)類的設(shè)計(jì)class spDataprivate:char name100;int count;float iprice;float oprice;char gys20;public:int id;in
11、t getld()char *getName(char n a)int getCou nt()float getBuy()float getSale()char *getGys()void setld(i nt n)void setName(char n a)void setCo un t(i nt c)void setBuy(float i)void setSale(float o)void setGys(char g);供應(yīng)商類的設(shè)計(jì)class gongyin gsha ngprivate:gysData t50;int n;public:void n ewFile() int id;ch
12、ar n ame50;int pho ne;if(n id;if(id=-1) break;tn .setid();cout供應(yīng)商名稱:;t n.set name( name);cout供應(yīng)商電話:;tn .setph on e();coutvv若供應(yīng)商添加完畢,請按-1退出添加!endl;void showData(i nt i)gysData t,*p;P=&t;coutgetid()get name()getpho ne()e ndl;void showData()coutsetw(8)vv供應(yīng)商編號vvsetw(8)v供應(yīng)商名稱setw(8)供應(yīng)商電話 e ndl;for(i nt i
13、=0;i n ;i+)showData(i);coutvv產(chǎn)品種類:vnvvendl;void save()ofstream fout;fout.open(供應(yīng)商.txt,ios:app);if(!fout)coutca nnot ope n the file!e ndl;return ;foutvv供應(yīng)商編號供應(yīng)商姓名供應(yīng)商手機(jī)號e ndl;for(i nt i=0;i n ;i+)foutvti.getid()vvsetw(10)vvti.get name()vsetw(14)vti.getpho ne()e ndl;CoUt*Save success!*vve ndl;fout.clos
14、e();int search() int id;cout id;in t low=0,mid,high=n-1; while(lowid)high=mid-1;else low=mid+1;return -1;void xiugai()char n ame100;int phone;int temp;temp=search();if(temp=-1)coutca nnot find the gys!e ndl; return;else cout請輸入新數(shù)據(jù): pho ne;ttemp.setph on e();void remove() gysData g10;coutvv請輸入要?jiǎng)h除的供應(yīng)商
15、編號 id;fstream file(gys.txt,ios:i n|ios:out|ios:bi nary);for(i nt u=0;u5;u+)file.read(char*)&gu,sizeof(gu);for(i nt v=0;v5;v+)if(gv.id=id)con ti nue;elsefile.write(char*)&gv,sizeof(gv);cout該供應(yīng)商被刪除endl;file.close();;菜單函數(shù)的設(shè)計(jì)inline void menu 2()system(cls);coutvv *歡迎使用商品銷售管理系統(tǒng)* endl;cout*商品選項(xiàng) * endl;cou
16、t(1)添加coutvv(2)保存coutvv(3)刪除coutvv查找coutvv(5)信息輸出coutvv(6)修改e ndl;e ndl;e ndl;e ndl;e ndl;e ndl;cout(7)菜單e ndl;cout(0)退出系統(tǒng)e ndl;cout*2012 6*e ndl;in li ne void men u1()system(cls);cout*歡迎使用商品銷售管理系統(tǒng)* endl;cout*主菜單 * e ndl*cout(1)商品選項(xiàng)e ndl;cout供應(yīng)商選項(xiàng)e ndl;cout(0)退出系統(tǒng)e ndl;cout*2012 6*e ndl;in li ne voi
17、d menu 3()system(cls);coutvv *歡迎使用商品銷售管理系統(tǒng)* vvendl;cout*供應(yīng)商選項(xiàng) * endl;coutvv(1)添加coutvv(2)保存coutvv(3)刪除coutvv查找coutvv(5)信息輸出coutvv(6)修改coutvv(7)菜單coutvv(0)退出系統(tǒng)*e ndl;e ndl;e ndl;e ndl;e ndl;e ndl;e ndl;e ndl;coutvv*2012.6 x;switch(x)case 1:menu 2();Commodity com;in t c;for(;)請選擇:;coutcin c;switch(c)c
18、ase 1:co m.n ewFile();break;case 2:com.save();break;case 3:com.remove();break;case 4:com.search;break;case 5:com.showData();break;case 6:me nu1();break;case 0:e ndl;cout c;switch(c)case 1:gys .n ewFile();break;case 2:gys.save();break;case 3:gys.remove();break;case 4:gys.showData();break;case 5:gys.s
19、earch();break;e ndl;e ndl;case 6:me nu1();break;case 0:coutcoutbreak;*謝謝使用*I *case 0:cout*謝謝使用*e ndl;cout*再見!*e ndl;break;return 0;調(diào)試分析:程序 3.cpp(226): warning C4700: local variable n used without having beenin itialized程序 3.cpp(246) : warning C4700: local variable c1 used without having beenin itial
20、ized程序 3.cpp(348) : warning C4700: local variable g1 used without having beenin itialized桌面 q.cpp(237) : error C2562: search:void fun cti on returni ng a value桌面 q.cpp(228) : see declarati on ofsearch桌面 q.cpp(243) : error C2562: search:void fun cti on returni ng a value桌面 q.cpp(228) : see declarati
21、on ofsearch 用戶使用說明手冊:1.進(jìn)入演示程序后,即顯示對話形式的提示操作過程:如第一個(gè)選擇1商品選項(xiàng),即顯示(1)添加 (2)保存 (3)刪除 (4)查找 (5) 信息輸出(6)修改(7)菜單(0)退出系統(tǒng)選擇1,即顯示商品編號、商品名、庫存量、進(jìn)價(jià)、售價(jià)、供應(yīng)商各項(xiàng)商品信息,一次輸入所添加的數(shù)據(jù)。添加完畢,按-1退出添加;選擇2,即將商品信息保存;選擇3,刪除要?jiǎng)h除的商品信息;選擇4,查找商品信息;選擇5,信息的輸出;選擇6,修改信息選擇7,返回到菜單;選擇0,退出系統(tǒng)。如第一個(gè)選擇2,供應(yīng)商選項(xiàng),同樣顯示(1)添加 (2)保存 (3)刪除 (4)查找 (5) 信息輸出(6)修
22、改(7)菜單(0)退出系統(tǒng)選擇數(shù)據(jù)的功能跟上面一樣。第一個(gè)選擇0退出系統(tǒng)(6)測試數(shù)據(jù)進(jìn)入演示程序后,即顯示對話形式的提示操作過程:選擇:1商品選項(xiàng)選擇:1添加商品選擇:2保存信息選擇:3刪除信息選擇:4查找信息選擇:5信息輸出選擇:6修改選擇:0退出系統(tǒng)選擇:2供應(yīng)商選項(xiàng)供應(yīng)商信息的各選項(xiàng)跟商品信息的選項(xiàng)一樣4 課程設(shè)計(jì)成果程序源代碼#i nclude #in clude #i nclude#i ncludevioma nip.h #define Mfname 100 #in clude #i nclude#in clude#in clude class spDataprivate:char
23、 name100; int count;float iprice;float oprice;char gys20;public:int id;int getld()return id;char *getName()return n ame;int getCou nt()retur n count;float getBuy()return iprice;float getSale()retur n oprice;char *getGys()return gys;void setId(i nt n)id=n;void setName(char n a)strcpy( name, na);void
24、setCo un t(i nt c)coun t=c;void setBuy(float i)iprice=i;void setSale(float o)oprice=o;void setGys(char g)strcpy(gys,g);class gysDataprivate:char name100;int pho ne;public:int id;int getid()return id;char *get name()return n ame;int getph on e()retur n phone;void setid()ci n id;void set name(char n a
25、)strcpy (n ame ,n a);void setph on e()cin ph one;;class Commodityprivate:spData t50;int n;public:void n ewFile()int id;int n;char n ame50;int count;float iprice;float oprice;char gys20;if(n id;if(id=-1)break;tn .setld(id);cout商品名:;cinn ame;tn .setName( name);cout庫存量:;cin co unt;tn .setCo un t(co un
26、t);cout進(jìn)價(jià):;cin iprice;tn .setBuy(iprice);cout售價(jià):;cin oprice;tn .setSale(oprice);cout供應(yīng)商:;cin gys;tn .setGys(gys);coutvv若商品添加完畢,請按-1退出添加!endl;for(i=0;it n.getld()temp=ti;ti=t n;tn =temp;void showData(i nt i)spData t,*p;P=&t;coutp-getld()vgetName()getCou nt()vgetBuy()vgetSale() vvsetw(8)vvp-getGys()ve
27、 ndl;void showData() int n;cout商品編號setw(8)商品名vvsetw(8)vv庫存量vsetw(10)vv已售量setw(10)進(jìn)價(jià)setw(8)售價(jià)setw(8)供應(yīng)商endl;for(i nt i=0;i 0)showData(i);cout商品種類:nendl;void save()ofstream fout;fout.open(” 商品清單.txt,ios:app);if(!fout)coutca nnot ope n the file!e ndl;return ;foutvv商品編號 商品名 庫存量 進(jìn)價(jià)售價(jià) 供應(yīng)商 endl;for(i nt i=0;i n ;i+)foutvti.getld()vvsetw(14)vvti.getName()vvsetw(10)vvti.getCou nt()setw(1 )ti.getBuy()vsetw(10)vvti.getSale()vvsetw(10)vvti.getGys()vve ndl;coutvv*Save Success!*e ndl;fout.close();void xiugai()int count;char name100;float iprice;float oprice;char gys20;int temp;te
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年展覽場地租賃合同模板
- 高聚物材料中結(jié)構(gòu)單元的化學(xué)特性研究
- 2024年度健身房設(shè)施租賃合同
- 股票交易行為模式挖掘
- 2024年工業(yè)廢棄物清理合同
- 藥物個(gè)體化治療
- 2024年度研發(fā)合同標(biāo)的及屬性
- 2024年度汽車行業(yè)市場調(diào)查與分析合同
- 高等教育治理
- 2024年度綠色能源開發(fā)與應(yīng)用合同標(biāo)的及合作模式
- 浮動(dòng)碼頭施工方案
- Poka-Yoke防錯(cuò)技術(shù)(完整版)
- 保安交接班記錄表(2)
- 神明—EZflame火焰檢測系統(tǒng)
- 個(gè)人簡歷求職簡歷課件.ppt
- 2018年江蘇高考滿分作文:在母語的屋檐下
- 新青島版五四制2021-2022四年級科學(xué)上冊實(shí)驗(yàn)指導(dǎo)
- 小學(xué)四年級音樂課程標(biāo)準(zhǔn)
- 民用機(jī)場竣工驗(yàn)收質(zhì)量評定標(biāo)準(zhǔn)
- 雙向細(xì)目表和單元測試卷及組卷說明
- 離子色譜法測定空氣中二氧化硫
評論
0/150
提交評論