![C++課程設(shè)計(jì)---商品銷(xiāo)售統(tǒng)計(jì)_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/9/be411c55-5f36-4401-b1dc-68164cf75c9d/be411c55-5f36-4401-b1dc-68164cf75c9d1.gif)
![C++課程設(shè)計(jì)---商品銷(xiāo)售統(tǒng)計(jì)_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/9/be411c55-5f36-4401-b1dc-68164cf75c9d/be411c55-5f36-4401-b1dc-68164cf75c9d2.gif)
![C++課程設(shè)計(jì)---商品銷(xiāo)售統(tǒng)計(jì)_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/9/be411c55-5f36-4401-b1dc-68164cf75c9d/be411c55-5f36-4401-b1dc-68164cf75c9d3.gif)
![C++課程設(shè)計(jì)---商品銷(xiāo)售統(tǒng)計(jì)_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/9/be411c55-5f36-4401-b1dc-68164cf75c9d/be411c55-5f36-4401-b1dc-68164cf75c9d4.gif)
![C++課程設(shè)計(jì)---商品銷(xiāo)售統(tǒng)計(jì)_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/9/be411c55-5f36-4401-b1dc-68164cf75c9d/be411c55-5f36-4401-b1dc-68164cf75c9d5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、商品銷(xiāo)售統(tǒng)計(jì) 1. 需求和規(guī)格說(shuō)明 1.1問(wèn)題描述 編寫(xiě)商品銷(xiāo)售統(tǒng)計(jì)程序,商品的信息有商品名、計(jì)量單位(重量 或件)、單價(jià)。所有商品的信息事先已存入計(jì)算機(jī),屏幕上顯示所有 商品的名稱,選擇商品名,輸入商品計(jì)量單位(如重量、件數(shù)等), 根據(jù)單價(jià)算出總價(jià)??蛻粢淮慰赡苜?gòu)買(mǎi)多種商品,程序應(yīng)計(jì)算出客戶 應(yīng)付的錢(qián)款數(shù)。 1.2基本要求 程序分為兩個(gè)部分:第一部分用于輸入商品的信息并允許修改和 刪除;第二部分實(shí)現(xiàn)銷(xiāo)售統(tǒng)計(jì)。程序運(yùn)行時(shí)由用戶選擇進(jìn)入哪一部分 功能,并能在運(yùn)行時(shí)在兩部分之間切換。第二部分運(yùn)行時(shí),首先顯示 所有商品名稱及代碼(商品數(shù)目較多時(shí),應(yīng)考慮分屏顯示),用戶輸 入商品代碼及商品重量或件數(shù),
2、用戶一次操作可輸入若干商品的購(gòu)買(mǎi) 信息,然后輸入一個(gè)特殊的代碼(如“-1”表示本次購(gòu)物結(jié)束。此 時(shí),程序計(jì)算出應(yīng)付錢(qián)款數(shù)并顯示。 2. 設(shè)計(jì) 2.1文字描述 先定義一個(gè)商品類(lèi)GOODS,含有每種商品基本信息即商品名、 計(jì)量單位(重量或件)、單價(jià)、商品總量皆被定義為私有數(shù)據(jù)成員; 公有成員部分有該類(lèi)構(gòu)造函數(shù)以及其他友元函數(shù)。 為了完成程序基本要求,采用嵌套系統(tǒng)思想,即先構(gòu)造一個(gè)總的 系統(tǒng)一一商品銷(xiāo)售統(tǒng)計(jì)工程,通過(guò) switch語(yǔ)句可選擇進(jìn)入其下面兩 個(gè)子系統(tǒng)商品信息管理系統(tǒng)和商品銷(xiāo)售系統(tǒng),以完成程序要求的 兩個(gè)部分的功能。其中,每個(gè)子系統(tǒng)又可根據(jù) switch語(yǔ)句進(jìn)行選擇 操作,并能實(shí)現(xiàn)在兩個(gè)子
3、系統(tǒng)之間的切換。 2.2圖示 類(lèi)名 類(lèi)別 類(lèi)型 名稱 說(shuō)明 private stri ng n ame 商品名 private stri ng un it 計(jì)量單位 private double price per un it 單價(jià) private double amount 商品總數(shù) public GOODS) 構(gòu)造函數(shù) GOODS friend viod sort() 排序,使得信息為空的商品沉底 friend viod in put gds mesg() 底層函數(shù):錄入商品信息 friend viod Message modify() 底層函數(shù):修改商品信息 friend viod Me
4、ssage delete() 底層函數(shù):刪除商品信息 friend viod Goods Message Ma nage() 中層函數(shù):1.商品信息管理系統(tǒng) friend viod Goods Sale() 中層函數(shù):2.商品銷(xiāo)售系統(tǒng) friend viod WORK() 高層函數(shù):商品銷(xiāo)售統(tǒng)計(jì)工程 3. 用戶手冊(cè) 根據(jù)提示選擇操作即可,具體為: (1)程序運(yùn)行時(shí),首先要求初始化商品信息,即需添加銷(xiāo)售的 商品名稱、單價(jià)等; (2 )根據(jù)需求選擇進(jìn)入商品信息管理系統(tǒng)或者商品銷(xiāo)售系統(tǒng), 其中前者可進(jìn)行的操作有:錄入新商品信息、修改商品信息、刪除商 品信息等,后者為用戶提供購(gòu)買(mǎi)商品功能,只需根據(jù)提示
5、操作即可; 注意:請(qǐng)輸入與程序要求相應(yīng)的選擇以及正確的格式,不要超出 程序給定的范圍! 4. 附錄源代碼 #in clude #in clude #in clude using n amespace std; int choice; class GOODS private: string name;/ 商品名 string unit;/ 計(jì)量單位 double price_per_unit; / 單價(jià) double amount;/ 商品總數(shù) public: GOODS(); /構(gòu)造函數(shù) /排序函數(shù),使得信息為空的商品類(lèi)數(shù)組元素沉底,不為空的排在前面 (被刪除商品信息函數(shù)調(diào)用) frie nd
6、 void sort(GOODS array,i nt size); frie nd void in put_gds_mesg(GOODS goods1,i nt size);/底層函 數(shù):錄入商品信息(從屬于商品信息管理系統(tǒng)) friend void Message_modify(GOODS goods2,int size);/ 底層函 數(shù):修改商品信息(從屬于商品信息管理系統(tǒng)) friend void Message_delete(GOODS goods3,int size);/ 底層函 數(shù):刪除商品信息(從屬于商品信息管理系統(tǒng)) friend void Goods_Message_Man
7、age(GOODSGoods1,int size); /中層函數(shù):1.商品信息管理系統(tǒng)(從屬于商品銷(xiāo)售統(tǒng)計(jì)工程) friend void Goods_Sale(GOODS Goods2,int size);/ 中層函數(shù): 2商品銷(xiāo)售系統(tǒng)(從屬于商品銷(xiāo)售統(tǒng)計(jì)工程) friend void WORK(GOODS Goods,int size);/ 高層函數(shù):商品銷(xiāo) 售統(tǒng)計(jì)工程 ; GOODS:GOODS() n ame=0; un it=0; price_per_ un it=0.0; amoun t=0; void input_gds_mesg(GOODS goods1,int size)/ 底
8、層函數(shù): 息函數(shù)(從屬于商品信息管理系統(tǒng)) int i,j,m=0; int s=size; int n=size; stri ng l; for(i=0;is;i+) if(goods1i. name!=0)m+; else if(goods1i. name=0)s=m; for(j=m;j n;j+) cout 錄入商品信 e ndl; cout請(qǐng)輸入第j+1 goods1j. name; 種商品的名稱: e ndl; coute ndl; cout請(qǐng)輸入第j+1 goods1j.u nit; coute ndl; cout請(qǐng)輸入第j+1 goods1j.price_per_ un it;
9、 種商品的計(jì)量單位: 種商品的單價(jià)(元) coute ndl; cout請(qǐng)輸入第j+1 goods1j.am ount; cout coute ndl; coutvv_ 繼續(xù)錄入商品信息? ( y/n ) _ cin 1; coute ndl; if(l= n|l=N) n=j; else if(|=y|=Y); cout_商品信息錄入完成!endlendl; cout e ndl; return; 修改商品信 void Message_modify(GOODS goods2,int size)/ 底層函數(shù): 息函數(shù)(從屬于商品信息管理系統(tǒng)) if(goods20. name=0) cout
10、c; cout e ndl; coute ndl; if(c=y|c=Y) Goods_Message_Ma nage(goods2,size); WORK(goods2,size); else cout謝謝使用, 祝您愉快!再見(jiàn)! vvvvvvvvvvvvvvvvvvvvvvvvvvvve ndl; exit(O); stri ng p,q; int n; stri ng un it; stri ng n ame; double price; double amount; int choice2; do do coutvv 商品信息列表 e ndle ndl; coutvvt 商品編號(hào)t商品
11、名稱t商品單價(jià)t商品余量 e ndle ndl; int i,m=0; int s=size; for(i=0;is;i+) if(goods2i. name!=0)m+; else if(goods2i. name=0)s=m; for(i=0;im;i+) coutvvtvvi+1v.vvtvvtvvgoods2i. namevtvvgoods2 i.price_per_ un it元 vv/vvgoods2i.u nitvtvvgoods2i.amou ntgoods2i.u nit en dle ndl; cout 請(qǐng)輸入您想修改信息的商品編號(hào):_; / int n; cinn; co
12、ut e ndl; coute ndl; coutvv您想修改信息的商品為: p; coute ndl; if(p=y|p=Y) cout e ndl; do cout1.修改商品名稱endlendl; cout2.修改商品計(jì)量單位endlendl; cout3.修改商品單價(jià)(元)endlendl; cout4.修改商品數(shù)量endlendl; cout e ndl; cout請(qǐng)輸入您的選擇(1-4): _; cin choice2; coute ndl; switch(choice2) case 1: cout 請(qǐng)輸入 n 號(hào)商品 goods2n-1.n
13、amen ame; goods2 n-1. name=n ame; break; case 2: cout 請(qǐng)輸入*號(hào)商品 goods2 n-1. name的計(jì)量單位:_; /!stri ng un it; cinun it; goods2 n-1.u nit=un it; break; case 3: cout 請(qǐng)輸入 n號(hào)商品 price; goods2 n-1.price_per_ un it=price; break; case 4: cout 請(qǐng)輸入 n號(hào)商品 am ount; goods2 n-1.am oun t=am
14、ount; break; default: coutvCautio n:對(duì)不起,輸入有誤,請(qǐng)從新輸入!; break; while(choice2!=1 while(p= n|p=N); cout e ndl; cout_ 繼續(xù)修改商品信息(y/n )? _; /stri ng q; cinq; coute ndl; while(q=y|q=Y); cout_商 品 信 息 修 改 完 成! J cout e ndl; return; void sort(GOODS array,int size) /排序函數(shù),使得信息為空的商品類(lèi)數(shù)組 元素沉底,不為空的排在前面(被刪除商品信息函數(shù)調(diào)用) in
15、t i,j; GOODS temp; for(i=0;isize-1;i+) for(j=0;jsize-1-i;j+) if(arrayj. name=0 arrayj=arrayj+1; arrayj+1=temp; return; void Message_delete(GOODS goods3,int size)/ 底層函數(shù): 息函數(shù)(從屬于商品信息管理系統(tǒng)) if(goods30. name=0) cout c; cout e ndl; coute ndl; if(c=y|c=Y) Goods_Message_Ma nage(goods3,size); WORK(goods3,siz
16、e); else cout 祝您愉快!再見(jiàn)! vvvvvvvvvvvvvvvvvvvvvvvvvvvve ndl; exit(0); 刪除商品信 (y/n)_ 謝謝使用, stri ng p,q; int n; stri ng un it; /double price; do do coutvv 商品信息列表 e ndle ndl; coutvvt 商品編號(hào)t商品名稱t商品單價(jià)t商品余量 e ndle ndl; int i,m=0; int s=size; for(i=0;is;i+) if(goods3i. name!=0)m+; else if(goods3i. name=0)s=m; f
17、or(i=0;im;i+) coutvvtvvi+1vtvvtvvgoods3i. namevtvvgoods3i.pri ce_per_ un it元 vv/vvgoods3i.u nitvtvvgoods3i.amou ntgoods3i.u nit en dle ndl; cout e ndl; cout 請(qǐng)輸入您想刪除信息的商品編號(hào): /int n; cinn; coute ndl; 的商品為: coutvv_您想刪除信息 p; coute ndl; if(p=y|p=Y) goods3 n-1. name=0; goods3 n-1.u nit
18、=0; goods3 n-1.price_per_ un it=0.0; goods3 n-1.am oun t=0; cout q; coutvve ndl; while(q=y|q=Y); coutvv商 品 信 息 刪 coutvv e ndl; sort(goods3,size); return; 中層函數(shù):M. void Goods_Message_Ma nage(GOODS Goods1,i nt size) / 商品信息管理系統(tǒng)(從屬于商品銷(xiāo)售統(tǒng)計(jì)工程) int choicel; do cout e ndl; cout e ndl; cout e ndl; cout e ndl;
19、 cout 商品信息管理系統(tǒng) e ndle ndl; cout 行 的 操 作 cout 請(qǐng)選擇您要執(zhí) e ndle ndl; 1.錄入新商品信息 e ndl; cout 2修改商品信息 e ndl; cout e ndl; cout 3.刪除商品信息 4.返回 e ndl; cout 0.退出 cout e ndl; cout請(qǐng)輸入您的選擇:(0-4)_ cin choice1; switch(choicel) cout謝謝使用, 祝您愉快!再見(jiàn)! vvvvvvvvvvvvvvvvvvvvvvvvvvvve ndl; exit(0); break; default: coutvv對(duì)不起,您的
20、輸入有誤,請(qǐng)重新進(jìn)行選擇! e ndle ndl; break; while(choice1!=0 return; void Goods_Sale(GOODS Goods2,int size) / 中層函數(shù):S.商品銷(xiāo)售系統(tǒng) (從屬于商品銷(xiāo)售統(tǒng)計(jì)工程) if(Goods20. name=0) cout c; cout 謝謝使用, 祝您愉快!再見(jiàn)! vvvvvvvvvvvvvvvvvvvvvvvvvvvve ndl; exit(0); stri ng p,q; int num1000,amou nt1OOO;num 存放所要購(gòu)買(mǎi)商品的 編號(hào), amount存放購(gòu)買(mǎi)的每種商品數(shù)量 int j=0,
21、f=0,r=0; stri ng un it; double mon ey=0.0; do do cout e ndle ndl; coutvvt 商品編號(hào)t商品名稱t商品單價(jià)t商品余量 e ndle ndl; int i,m=0; int s=size; for(i=0;is;i+) if(Goods2i. name!=0)m+; else if(Goods2i. name=0)s=m; for(i=0;im;i+) coutvvtvvi+1vvtvvtvGoods2i. namevtvGoods2i.pri ce_per_ un it元 vv/vGoods2i.u nitvtvGoods2
22、i.amou ntGoods2i.u nit en dle ndl; cout 請(qǐng)輸入您想購(gòu)買(mǎi)的商品的編號(hào)(輸入“0”結(jié)束): nu mj; / do / /cinnu mj; /j+; /while(nu mj-1!=0); cout_您想購(gòu)買(mǎi)的商品為:endlendl; cout e ndl; cout_商品編號(hào)t商品名稱endlendl; for(f=0;fvj-1;f+) if(nu mf!=0) cout numfvvtvvtvGoods2 numf-1. namee ndle ndl; cout p; cout e ndl; coute ndl; if(p=y|p=Y) cout請(qǐng)
23、輸入您想購(gòu)買(mǎi)的商品數(shù)量:e ndlvve ndl; cout e ndl; coutvv商品編號(hào)t商品名稱t購(gòu)買(mǎi)數(shù)量endlvvendl; for(f=0,r=0;(fvj-1)f+,葉+) if(nu mf!=0) cout nu mfvvtvvtv am oun tr; Goods2 nu mf-1.am oun t-=am oun tr; coute ndl; cout e ndl; while(p= n|p=N); coutvv_ 您購(gòu)買(mǎi)的商品信息如下:endlvvendl; cout e ndl; coutt 商品編號(hào)t商品名稱t商品單價(jià)t購(gòu)買(mǎi)數(shù)量 e ndlvve ndl; for(f=0,r=0;(fj-1)f+j+) if(nu mf!=0) coutvvtvv nu mfvvtvvtvvGoods2 nu mf-1. namevvt vvGoods2 nu mf-1.price_per_ un itvv元 vv/vvGoods2 nu mf-1.u ni tvvtvvamou ntrvvGoods2 nu mf- 1.u nitvve ndlvve ndl; cout e ndl; for(f=0,r=0;(fvj-1)f+j+) if(nu mf!
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2022-2023學(xué)年江西省宜春市袁州區(qū)四年級(jí)(上)期末數(shù)學(xué)試卷
- 人教版小學(xué)數(shù)學(xué)二年級(jí)下冊(cè)《除法的初步認(rèn)識(shí)(二)》練習(xí)題(含答案)
- 2025年買(mǎi)賣(mài)房屋協(xié)議書(shū)合同(2篇)
- 2025年代理銷(xiāo)售合同標(biāo)準(zhǔn)樣本(2篇)
- 2025年中學(xué)九年級(jí)歷史教學(xué)工作總結(jié)(二篇)
- 2025年九年級(jí)班主任下學(xué)期的工作總結(jié)(2篇)
- 2025年五年級(jí)小學(xué)數(shù)學(xué)教師工作總結(jié)樣本(四篇)
- 2025年人才開(kāi)發(fā)專項(xiàng)資金使用協(xié)議樣本(三篇)
- 2025年二手房屋買(mǎi)賣(mài)合同協(xié)議簡(jiǎn)單版(2篇)
- 地鐵站裝修工程合同范例
- 操作工考核評(píng)分表
- 俄羅斯水資源現(xiàn)狀分析
- 非法捕撈水產(chǎn)品罪
- 新概念第一冊(cè)單詞匯總帶音標(biāo)EXCEL版
- 作用于血液及造血器官的藥 作用于血液系統(tǒng)藥物
- 心肺復(fù)蘇(最全版)完整版
- 春節(jié)節(jié)后施工復(fù)工安全培訓(xùn)
- GB/T 3478.1-1995圓柱直齒漸開(kāi)線花鍵模數(shù)基本齒廓公差
- GB/T 1346-2001水泥標(biāo)準(zhǔn)稠度用水量、凝結(jié)時(shí)間、安定性檢驗(yàn)方法
- FZ/T 25001-2012工業(yè)用毛氈
- 瑞幸咖啡SWOT分析
評(píng)論
0/150
提交評(píng)論