




已閱讀5頁(yè),還剩6頁(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)介
#includeconst int N=5;struct PRODUCT int code;/商品代碼 char name20;/商品名稱(chēng) double price;/單價(jià) int amount;/商品數(shù)量 int sales;/銷(xiāo)售量 int stock;/商品的庫(kù)存量proN;void input(struct PRODUCT *p);void sort1(int stock,int sales);/冒泡法按商品的庫(kù)存量排序void sort2(int code);/選擇法按商品代碼排序void search1();/選擇法按商品庫(kù)存量查詢(xún)void search2(int code);/折半法按商品代碼查詢(xún)void out();void main()int code;struct PRODUCT *p;input(p);int ch;docout按庫(kù)存量排序, 請(qǐng)選擇: 1 endl;cout按商品代碼排序,請(qǐng)選擇: 2 endl;cout按商品代碼查詢(xún),請(qǐng)選擇: 3 endl;cout按庫(kù)存量查詢(xún), 請(qǐng)選擇: 4 endl;cout顯示商品信息, 請(qǐng)選擇: 5 endl; cout結(jié)束程序, 請(qǐng)選擇: 6 ch;switch (ch) case 1:sort1(proN.stock,proN.sales); break; case 2:sort2(proN.code);break; case 3: coutcode; search2(code); break; case 4:search1();break; case 5:out();break; case 6:0;break; default:cout您的輸入有錯(cuò)endl;while(ch!=6);void input(struct PRODUCT *P)cout輸入英文的時(shí)候,請(qǐng)以?為結(jié)束標(biāo)志endlendl;for(int i=0;iN;i+)coutproi.code;cin.getline(,10,?);cinproi.priceproi.amountproi.sales;proi.stock=proi.amount-proi.sales;void sort1(int stock,int sales)/冒泡法按商品的庫(kù)存量排序struct PRODUCT t;for(int i=0;iN-1;i+)for(int j=0;jproj+1.stock) t=proj;proj=proj+1;proj+1=t;for(i=0;iN-1;i+)for(int j=0;jproj+1.sales) t=proj;proj=proj+1;proj+1=t; coutcodetnametpricetamounttsaleststockendl; for(i=0;iN;i+)tproi.pricetproi.amounttproi.salestproi.stockendl;void sort2(int code)/選擇法按商品代碼排序struct PRODUCT t;for(int i=0;iN-1;i+) for(int j=i+1;jproj.code) t=proi;proi=proj;proj=t; coutcodetnametpricetamounttsaleststockendl;for(i=0;iN;i+)tproi.pricetproi.amounttproi.salestproi.stockendl; void search1()/選擇法按商品庫(kù)存量查詢(xún)int stock1,stock2;coutstock1stock2;coutcodetnametpricetamounttsaleststockendl; for(int i=stock1;i=stock2;i+) for(int j=0;jN;j+) if(i=proj.stock)break; if(j=N) cout; else tproj.pricetproj.amounttproj.salestproj.stockendl; cout如果沒(méi)有顯示則無(wú)此商品信息endl;void search2(int code)/折半法按商品代碼查詢(xún) struct PRODUCT t;for(int i=0;iN-1;i+)for(int j=0;jproj+1.code) t=proj;proj=proj+1;proj+1=t;int top=0,bottom=N-1,middle=(top+bottom)/2;/折半法查找商品代碼while(toppromiddle.code)top=middle+1;else bottom=middle-1;middle=(top+bottom)/2;if(code=promiddle.code)coutcodetnametpricetamounttsaleststockendl;tpromiddle.pricetpromiddle.amounttpromiddle.salestpromiddle.stockendl;elsecout沒(méi)有您要找的商品endl;void out()coutcodetnametpricetamounttsaleststockendl;for(int i=0;iN;i+)tproi.pricetproi.amounttproi.salestproi.stockendl;#include #include #include using namespace std;class Goodsprivate:string name;/商品名 double price;/商品價(jià)格 int storage;/商品存量 public:double sell(int num);/出售商品,減少本商品的存量同時(shí)返回出售商品的總價(jià),失敗返回-1 double buy(int num);/購(gòu)買(mǎi)商品,減少本商品的存量同時(shí)返回購(gòu)買(mǎi)商品的總價(jià)bool isEmpty();void show();bool operator =(string name);/重載等號(hào)運(yùn)算符,用來(lái)進(jìn)行商品是否重復(fù)的比較 Goods(string name,double price);/構(gòu)造 ;class GoodsManagerprivate:vector goods_list;/商品列表 double account;/賬戶(hù)余額 public:bool add(string name,double num);/添加新商品,不可重名,成功則商品被加入列表同時(shí)返回true,失敗返回false bool sell(string name,int num);/出售商品,成功則商品存量減少,賬戶(hù)余額增加同時(shí)返回true,失敗返回false bool buy(string name,int num);/購(gòu)買(mǎi)商品,成功則商品存量增加,賬戶(hù)余額減少同時(shí)返回true,失敗返回false bool del(string name);/刪除商品,商品數(shù)量不為0時(shí)不可刪除 void show();GoodsManager();void menu()cout1.添加商品endl;cout2.刪除商品endl;cout3.出售商品endl;cout4.購(gòu)入商品endl;cout5.查看庫(kù)存endl;cout0.退出程序endl;int main()GoodsManager gm;char order;while(1)system(cls);menu();coutorder;switch(order)case 1:/添加 string name;double price;coutname;coutprice;if(gm.add(name,price)coutsuccess!endl;elsecoutfailed!endl;getch();break;case 2:/刪除 string name;coutname;if(gm.del(name)coutsuccess!endl;elsecoutfailed!endl;getch();break;case 3:/出售 string name;int num;coutname;coutnum;if(gm.sell(name,num)coutsuccess!endl;elsecoutfailed!endl;getch();break;case 4:/購(gòu)入 string name;int num;coutname;coutnum;if(gm.buy(name,num)coutsuccess!endl;elsecoutfailed!endl;getch();break;case 5:/查看 gm.show();getch();break;case 0:/退出 exit(0);break;default:coutwrong order!endl;break; return 0;double Goods:sell(int num)if(storagenum)return -1;storage-=num;return price*num;double Goods:buy(int num)storage+=num;return price*num;bool Goods:isEmpty()return 0=storage;void Goods:show()coutnametpricetstoragename=name;Goods:Goods(string name,double price)this-name=name;this-price=price;storage=0;bool GoodsManager:add(string name,double num)vector:iterator result = find(goods_list.begin(),goods_list.end(),name); if(goods_list.end()=result)goods_list.push_back(Goods(name,num);return true;elsereturn false;bool GoodsManager:sell(string name,int num)vector:iterator result = find(goods_list.begin(),goods_list.end(),name); if(goods_list.end()!=result&!result-isEmpty()double count=result-sell(num);if(count0)return false;account+=count;return true;elsereturn false;bool GoodsManager:buy(string name,int num)vector:iterator result = find(goods_list.begin(),goods_list.end(),name); if(goods_list.end()!=result)double count=result-buy(num);account-=count;return true;elsereturn false;bool GoodsManager:del(string name)vector:iterator result = find(goods_list.begin(),goods_list.end(),name);
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 臨滄市重點(diǎn)中學(xué)2025屆物理高一下期末調(diào)研模擬試題含解析
- 2025屆上海市六校物理高二第二學(xué)期期末復(fù)習(xí)檢測(cè)模擬試題含解析
- 2025屆上海市十中高一物理第二學(xué)期期末學(xué)業(yè)質(zhì)量監(jiān)測(cè)模擬試題含解析
- 湖北省孝感市八校2025屆物理高二下期末學(xué)業(yè)質(zhì)量監(jiān)測(cè)模擬試題含解析
- 醫(yī)院包干制經(jīng)費(fèi)管理辦法
- 涂裝供應(yīng)商質(zhì)量管理辦法
- 《社區(qū)統(tǒng)計(jì)室管理辦法》
- 2025屆黑龍江省海林市朝鮮族中學(xué)物理高二第二學(xué)期期末調(diào)研模擬試題含解析
- 項(xiàng)目人員兼職管理辦法
- 校園食品食堂管理辦法
- 2025年城建技師考試題庫(kù)及答案
- 2025年中國(guó)LTCC技術(shù)行業(yè)市場(chǎng)現(xiàn)狀、前景分析研究報(bào)告(智研咨詢(xún)發(fā)布)
- 租賃住房培訓(xùn)課件下載
- 房管員試題資料
- 2025至2030中國(guó)扭蛋機(jī)行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及商業(yè)模式與投融資戰(zhàn)略報(bào)告
- 2024年蘇州昆山國(guó)創(chuàng)投資集團(tuán)有限公司招聘筆試真題
- 商場(chǎng)吸煙區(qū)管理制度
- DL∕T 5161.5-2018 電氣裝置安裝工程質(zhì)量檢驗(yàn)及評(píng)定規(guī)程 第5部分:電纜線(xiàn)路施工質(zhì)量檢驗(yàn)
- 湖北武漢洪山區(qū)招考聘用社區(qū)干事235人模擬檢測(cè)試卷【共1000題含答案解析】
- 常用樂(lè)高零件清單
- 蛋糕制作工藝課件(PPT81張)
評(píng)論
0/150
提交評(píng)論