版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 計算機科學(xué)與技術(shù)系</b></p><p><b> 課程設(shè)計報告</b></p><p> 2009~2010學(xué)年第二學(xué)期</p><p><b> 2010年7月</b></p><p><b> (一) 需求分析</b
2、></p><p> 現(xiàn)在某大型超市由于購物人員太多需要一個收銀臺結(jié)算程序,以方便消費者能夠快速付賬。該程序中能夠各種商品的全部信息,包括商品的編號、名稱、數(shù)量、進價、售價等。程序主要是用來方便消費者付賬,當(dāng)消費者選定商品時收銀臺的工作人員只要把消費者買的商品的數(shù)量輸進去就可以了,該程序會自動的計算其總額并告知消費者要交多少金額。因此該程序的主要功能就是幫助收銀臺的工作人員實現(xiàn)收款的目的。所以在制作該軟件
3、時首先要有一系列的子函數(shù):當(dāng)輸入商品的編號時就可以知道它的數(shù)量、進價、售價等。當(dāng)工作人員收銀時只要輸入商品的編號,并輸入其數(shù)量就可以知道消費者要付金多少,然后系統(tǒng)就會根據(jù)消費者給的金額會打印出相應(yīng)的購物小票。小票上會顯示消費者所購商品的編號、數(shù)量、以及消費者所給的金額和應(yīng)該找零多少。</p><p> 當(dāng)消費者不能提供所購商品的編號時,系統(tǒng)則無法進行其各項的操作。在收銀的過程中如果遇到了消費者所給的金額不夠則系
4、統(tǒng)會自動出現(xiàn)提示:所交金額不足。每當(dāng)消費者買走一件商品時系統(tǒng)在顯示時變回顯示其數(shù)量減少一個,在開始設(shè)計時為了能夠滿足要求因此要定義空間足夠大的id,name,count.分別各為100.在計算時輸入商品的數(shù)量然后系統(tǒng)就會用該商品的單價乘以數(shù)量就得到了消費者應(yīng)付的金額。</p><p><b> ?。ǘ┰O(shè)計</b></p><p> 根據(jù)上訴需求應(yīng)該定義一個DATA
5、類,該類中定義了產(chǎn)品的編號id,產(chǎn)品名稱name,商品的已售數(shù)量salecount,還有商品的進價buy,和商品的售價sale。在public中有成員函數(shù)getid,用于得到商品的編號;getname,用于得到商品的名稱;getsale,用于得到商品的售價;getbuy,用于得到商品的進價。在此基礎(chǔ)上又派生出另一個類WAY。</p><p> 在WAY類中有成員函數(shù)newfile,用于新建各種商品的信息,在ne
6、wfile中會分別要求輸入商品的編號、名稱、數(shù)量、進價、售價。在一次輸入各種商品的各種信息后可以調(diào)用另一個成員函數(shù)save,將輸入的商品的各種信息儲存起來。要進行收銀工作時選擇sale子函數(shù)進行收銀工作,在輸入商品的各種信息后可以調(diào)用函數(shù)showdata把商品的編號、名稱、數(shù)量以及進價和售價都顯示出來以方便查看。在WAY類中open函數(shù)主要是用來打開已經(jīng)保存好的各種商品的各種基本信息。在程序運行時將開始準備好的數(shù)據(jù)輸入這樣就變的更加方便
7、了。在有很多商品的情況下要臨時找到一個商品的基本信息一般比較困難,因此還要用到binsearch來查找商品。當(dāng)要想找到摸個商品時只要將其編號輸入系統(tǒng)就可以根據(jù)編號進行查找,從而找到所要的商品。在商品已經(jīng)銷售了一部分時可以計算一下這些商品的總的進價因而sumsale函數(shù)就是來計算已經(jīng)銷售出去的商品的總的進價,同樣,當(dāng)想知道已經(jīng)售出的這些商品所得到的利潤時就可以用函數(shù)sumgain,這些函數(shù)都是主函數(shù)countmenu中的子函數(shù),在coun
8、tmenu函數(shù)中包括已售總額、已售總進價、已得純利潤</p><p> 在該系統(tǒng)實現(xiàn)其收銀功能后,我們可以對這一段時間所銷售的商品做一個統(tǒng)計,包括對他的數(shù)量、售出量、進價、售價、盈利多少等,當(dāng)選擇計算的子函數(shù)時便可以對這些已經(jīng)售出的商品做一個系統(tǒng)的統(tǒng)計,在統(tǒng)計之后會輸入一個清單。上面寫著這段時間所有售出的商品的各種信息,已列表的形式把商品的編號、名稱、已售出量、售價、進價等。</p><p&
9、gt; 在類的設(shè)計中主要是數(shù)據(jù)成員以及成員函數(shù),在WAY類中我們首先要把商品的基本信息能用數(shù)據(jù)成員表示,于是便要定義編號、名稱、數(shù)量、進價、售價。在主函數(shù)menu中有1.輸入產(chǎn)品信息 2.顯示 3.保存 4.打開 5.菜單 6.收銀 7.計算 0.返回"這幾項功能。在設(shè)計該程序時要考慮到開始時可以對商品的信息進行輸入,于是在子函數(shù)newfile中便是將商品的信息輸入其中。但考慮到由于商品要是太多的話臨時輸入這些商品的信息太
10、麻煩并且耽誤時間,所以我們考慮到用磁盤文件來處理,在磁盤文件中我們先把各種商品的基本信息保存在里面,等到要用的時候就可以直接打開,因此我們用open函數(shù)來實現(xiàn)這個功能。</p><p><b> (三)用戶手冊</b></p><p> 當(dāng)我們把收銀臺結(jié)算程序編寫好用于商場之后,在消費者來付賬時,我們首先運行該程序,這是主頁面會顯示1.輸入產(chǎn)品信息 2.顯示 3.
11、保存 4.打開 5.菜單 6.收銀 7.計算 0.返回",“選擇菜單”的字樣。這是選擇1系統(tǒng)就會顯示id、name、count、buy、sale。這是我們依次輸入商品的編號、名稱、數(shù)量、進價、售價后,系統(tǒng)又會顯示sn 這是再選擇所要操作的,當(dāng)選擇6 時進入收銀狀態(tài)。這時系統(tǒng)會提示你輸入產(chǎn)品編號、輸入數(shù)量、輸入收到金額、等全部輸入完成后系統(tǒng)便會打印一個購物小票出來:</p><p> 當(dāng)輸入的編號無法
12、找到時系統(tǒng)便會顯示:not find。</p><p> 當(dāng)選擇7時系統(tǒng)便會輸出:1.已售總額 2.已售總進價 3.已得純利潤 4.預(yù)銷售總額 5.進價成本總額 0.返回"。這時還要進行子函數(shù)的選擇,選擇1時這是時在計算已經(jīng)售出商品的總額,系統(tǒng)會顯示280。選擇2時這是在計算已經(jīng)售出商品的總進價,系統(tǒng)會顯示200,當(dāng)選擇3時這是在計算已經(jīng)售出商品所得的總利潤,系統(tǒng)會顯示80,當(dāng)選擇4時這是在計算預(yù)銷
13、售總額,系統(tǒng)會顯示310,當(dāng)選擇5時這是在計算進價成本總額,系統(tǒng)會顯示230。當(dāng)我們想結(jié)束計算著子函數(shù)的調(diào)用時選擇0這是系統(tǒng)會自動跳出該子函數(shù)的運行然后顯示:輸入“選擇菜單”作為提示。</p><p> 當(dāng)我們已經(jīng)輸入很多商品的信息并都已成功售出時由于看不見主菜單的內(nèi)容了這時就可以選擇5系統(tǒng)便會把住菜單顯示出來:1.輸入產(chǎn)品信息 2.顯示 3.保存 4.打開 5.菜單 6.收銀 7.計算 0.返回"
14、,當(dāng)我們選擇2時系統(tǒng)就會把商品現(xiàn)在信息顯示出來。</p><p> 編號 名稱 當(dāng)前量 已售量 進價 售價 </p><p> 12 奶粉 100 2 100 140</p><p> 13 洗衣機 200 10 500 2000</p>&
15、lt;p> 等各種商品的信息。只要按照系統(tǒng)的提示操作就會很順利的完成。</p><p><b> (四)調(diào)試及測試</b></p><p> 由于該程序要包含各種商品的信息因此在運行該系統(tǒng)時首先要把各種商品的基本信息放在磁盤文件中,在應(yīng)用時直接就可以讀出這些商品的信息。在開始編寫該程序時沒有考慮到商品數(shù)量、價格的容量大小導(dǎo)致了在輸入商品的信息時系統(tǒng)出現(xiàn)了錯
16、誤,后來打開書本時看到書上的例子時想起來的從而改正了錯誤,在編寫showdata,函數(shù)時我們要把商品的各種信息都顯示出來由于商品的基本信息比較多,要考慮到輸出時的整齊所以要要運用到setw函數(shù)來控制輸出時的界面</p><p> 開始時由于沒有注意到所輸出來的空格數(shù)進而導(dǎo)致了輸出來的界面有有點亂,之后又調(diào)整了輸出時的空格數(shù)才使得輸出來的界面變得相對美觀,在編寫sale函數(shù)時開始沒考慮到輸入提示,當(dāng)系統(tǒng)運行時不知
17、道系統(tǒng)要我們做什么,之后意思到后就在開始時輸入了輸入提示,這樣當(dāng)系統(tǒng)運行時就可以按照系統(tǒng)對你的提示進操作了。在有很多商品的情況下要臨時找到一個商品的基本信息一般比較困難,因此還要用到binsearch來查找商品。當(dāng)要想找到摸個商品時只要將其編號輸入系統(tǒng)就可以根據(jù)編號進行查找,從而找到所要的商品。在商品已經(jīng)銷售了一部分時可以計算一下這些商品的總的進價因而sumsale函數(shù)就是來計算已經(jīng)銷售出去的商品的總的進價,同樣,當(dāng)想知道已經(jīng)售出的這些
18、商品所得到的利潤時就可以用函數(shù)sumgain該系統(tǒng)中為了使得能夠把商品的各種信息都能輸出來并能夠顯示出來因此就運用了countmenu函數(shù)來把已經(jīng)售出商品和未售的出商品的各種信息輸入。系統(tǒng)會顯示1.已售總額 2.已售總進價 3.已得純利潤 4.預(yù)銷售總額 5.進價成本總額。這樣就可以知道未售出商品和已售出商品的數(shù)量和已經(jīng)所得的盈利。當(dāng)選擇菜單1時系統(tǒng)就會讓你輸入各種商品的信</p><p> 可以進行操作了。然
19、后就當(dāng)選擇7時系統(tǒng)便會輸出:1.已售總額 2.已售總進價 3.已得純利潤 4.預(yù)銷售總額 5.進價成本總額 0.返回"。這時還要進行子函數(shù)的選擇,選擇1時這是時在計算已經(jīng)售出商品的總額,系統(tǒng)會顯示134。選擇2時這是在計算已經(jīng)售出商品的總進價,系統(tǒng)會顯示92,當(dāng)選擇3時這是在計算已經(jīng)售出商品所得的總利潤,系統(tǒng)會顯示42,當(dāng)選擇4時這是在計算預(yù)銷售總額,系統(tǒng)會顯示6838,當(dāng)選擇5時這是在計算進價成本總額,系統(tǒng)會顯示5440。當(dāng)
20、我們想結(jié)束計算著子函數(shù)的調(diào)用時選擇0這是系統(tǒng)會自動跳出該子函數(shù)的運行然后顯示:輸入“選擇菜單”作為提示。</p><p><b> ?。?)小結(jié)</b></p><p> 通過一個學(xué)期C++語言的學(xué)習(xí),現(xiàn)在對程序設(shè)計有了一定程度上的了解并會進行簡單的程序設(shè)計,開始學(xué)習(xí)C++語言時可以說是在聽天書,啥都不會,整天暈頭轉(zhuǎn)向的,加之老師是如此的嚴格,因此對C+ 語言充滿了
21、恐懼感!但由于認識到了C++語言的重要性,因此又加緊學(xué)習(xí),上課認真聽講,課后認真看書,所以才對C++語言有了一定的了解和體會,之后才慢慢的會編寫一些簡單的程序,隨著學(xué)習(xí)的深入,越來越難,之后又學(xué)習(xí)了數(shù)組和指針使得學(xué)習(xí)變得更難,數(shù)組的學(xué)習(xí)可以解決很多數(shù)據(jù)類型一樣的數(shù),然后又學(xué)習(xí)了結(jié)構(gòu)體,結(jié)構(gòu)體的學(xué)習(xí)使得程序越來越大,越來越復(fù)雜,以前的程序都是一些簡單的小程序,學(xué)了結(jié)構(gòu)體后就可以編寫一些相對較大的程序了,結(jié)構(gòu)體可以吧一些數(shù)據(jù)類型一樣的集合在
22、一起,</p><p> 在編寫收銀臺結(jié)算系統(tǒng)時,開始不知道怎樣寫,主要是前面學(xué)的不好,還有一些小的知識不知道,所以在編寫相對較大的程序時會遇到很多困難, </p><p> 通過一個學(xué)期的學(xué)習(xí),現(xiàn)在對C++語言不再那么的害怕,一些簡單的程序可以自己獨立的解決,現(xiàn)在也可以吧學(xué)生成績管理系統(tǒng)編寫出來了。由此可以看出只要自己努力就可以解決很多問題,C++語言的學(xué)習(xí)主要是以動手為主,不斷的自
23、己寫程序代碼,然后自己上機調(diào)試,不斷的寫程序不斷地上機調(diào)試就可以熟能生巧,收銀臺結(jié)算系統(tǒng)就是不斷的上機調(diào)試的結(jié)果,只有自己認真了努力了才能不斷的進步。</p><p><b> (六)參考文獻</b></p><p> [1] 劉振安 等編著《C++程序設(shè)計課程設(shè)計》 機械工業(yè)出版社</p><p> [2] 吳乃陵 等編著《C++程序設(shè)
24、計》北京:高等教育出版社</p><p> [3] 李龍澍《C++程序設(shè)計實訓(xùn)教程》北京:清華大學(xué)出版社 </p><p> [4] 寧正元《數(shù)據(jù)結(jié)構(gòu)(C語言)》南京:東南大學(xué)出版社。2000年6月</p><p> [5] 嚴蔚敏等 《數(shù)據(jù)結(jié)構(gòu)(C語言版)》 北京:清華大學(xué)出版社,1997年</p><p> [6] 胡學(xué)鋼等《數(shù)據(jù)
25、結(jié)構(gòu)算法設(shè)計指導(dǎo)》 北京:清華大學(xué)出版社,1999年 </p><p> [7] 明日科技 編著《Visual C++程序開發(fā)范例寶典》北京:人民郵電出版社</p><p><b> 附錄</b></p><p> #include<iostream.h></p><p> #include<f
26、stream.h></p><p> #include<string.h></p><p> #include<iomanip.h></p><p> #define LENname 100</p><p> #define LENnode 100</p><p> #defin
27、e LENfname 100</p><p> class DATA</p><p><b> {</b></p><p> int id;//產(chǎn)品編號</p><p> char name[LENname];//產(chǎn)品名稱</p><p> int count;//庫存數(shù)量</p&
28、gt;<p> int saleCount;//已售數(shù)量</p><p> float buy;//進價</p><p> float sale;//售價</p><p> bool delTag;</p><p><b> public:</b></p><p> in
29、t getId()</p><p><b> {</b></p><p> return id;</p><p><b> }</b></p><p> char *getName()</p><p><b> {</b></p>
30、<p> return name;</p><p><b> }</b></p><p> int getCount()</p><p><b> {</b></p><p> return count;</p><p><b> }<
31、/b></p><p> int getSaleCount()</p><p><b> {</b></p><p> return saleCount;</p><p><b> }</b></p><p> float getBuy()</p>
32、<p><b> {</b></p><p> return buy;</p><p><b> }</b></p><p> float getSale()</p><p><b> {</b></p><p> return
33、 sale;</p><p><b> }</b></p><p> bool getDelTag()</p><p><b> {</b></p><p> return delTag;</p><p><b> }</b></p>
34、;<p> //----------------------</p><p> void setId(int n)</p><p><b> {</b></p><p><b> id=n;</b></p><p><b> }</b></p>
35、;<p> void setName(char na[])</p><p><b> {</b></p><p> strcpy(name,na);</p><p><b> }</b></p><p> void setCount(int n)</p><
36、;p><b> {</b></p><p><b> count=n;</b></p><p><b> }</b></p><p> void setSaleCount(int n)</p><p><b> {</b></p>
37、;<p> saleCount=n;</p><p><b> }</b></p><p> void setBuy(float n)</p><p><b> {</b></p><p><b> buy=n;</b></p><p
38、><b> }</b></p><p> void setSale(float n)</p><p><b> {</b></p><p><b> sale=n;</b></p><p><b> }</b></p><
39、;p> //...................</p><p> void Del()</p><p><b> {</b></p><p><b> delTag=1;</b></p><p><b> }</b></p><p>
40、 void unDel()</p><p><b> {</b></p><p><b> delTag=0;</b></p><p><b> }</b></p><p><b> };</b></p><p><
41、b> class WAY</b></p><p><b> {</b></p><p> DATA node[LENnode];</p><p><b> int LEN;</b></p><p> int LenWillDel;</p><p>
42、<b> public:</b></p><p> void newFile()</p><p><b> {</b></p><p><b> int id;</b></p><p> char name[LENname];</p><p>
43、 int count;</p><p> float buy;</p><p> float sale;</p><p><b> if(LEN<0)</b></p><p><b> LEN=0;</b></p><p> LenWillDel=0;<
44、;/p><p><b> int i;</b></p><p> DATA temp;</p><p> for(LEN=1;LEN<3;LEN++)</p><p><b> {</b></p><p> cout<<"id:";
45、</p><p><b> cin>>id;</b></p><p> if(id==-1)</p><p><b> break;</b></p><p> node[LEN].setId(id);</p><p> cout<<"
46、;name:";</p><p> cin>>name;</p><p> node[LEN].setName(name);</p><p> cout<<"count:";</p><p> cin>>count;</p><p> node
47、[LEN].setCount(count);</p><p> cout<<"buy:";</p><p><b> cin>>buy;</b></p><p> node[LEN].setBuy(buy);</p><p> cout<<"sal
48、e:";</p><p> cin>>sale;</p><p> node[LEN].setSale(sale);</p><p> node[LEN].unDel();</p><p> node[LEN].setSaleCount(0);//售出此產(chǎn)品0個</p><p> for
49、(i=0;i<LEN;i++)</p><p><b> {</b></p><p> if(node[i].getId()>node[LEN].getId())</p><p><b> {</b></p><p> temp=node[i];</p><p
50、> node[i]=node[LEN];</p><p> node[LEN]=temp;</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b>
51、; }</b></p><p> void showData(int i)</p><p><b> {</b></p><p> cout<<node[i].getId()</p><p> <<setw(8)<<node[i].getName()</p&
52、gt;<p> <<setw(8)<<node[i].getCount()</p><p> <<setw(8)<<node[i].getSaleCount()</p><p> <<setw(8)<<node[i].getBuy()</p><p> <<se
53、tw(8)<<node[i].getSale()</p><p> <<setw(8)<<node[i].getDelTag()</p><p><b> <<endl;</b></p><p><b> }</b></p><p> void
54、 showData()</p><p><b> {</b></p><p> cout<<"編號"</p><p> <<setw(8)<<"名稱"</p><p> <<setw(8)<<"當(dāng)前量&q
55、uot;</p><p> <<setw(8)<<"已售量"</p><p> <<setw(8)<<"進價"</p><p> <<setw(8)<<"售價"</p><p> <<setw
56、(8)<<"刪否"<<endl;</p><p> for(int i=0;i<LEN;i++)</p><p> if(node[i].getCount()>0 && node[i].getDelTag()==0)</p><p> showData(i);</p><
57、;p><b> }</b></p><p> void save()</p><p><b> {</b></p><p> char fname[LENfname];</p><p> cout<<"fname:";</p><p
58、> cin>>fname;</p><p> fstream f(fname,ios::out|ios::binary);</p><p> for(int i=0;i<LEN;i++)</p><p> if(node[i].getCount()>0 && node[i].getDelTag()==0)<
59、/p><p> f.write((char*)&node[i],sizeof(node[i]));</p><p> f.close();</p><p> cout<<"save success"<<endl;</p><p><b> }</b></p&g
60、t;<p> void open()</p><p><b> {</b></p><p> char fname[LENfname];</p><p> cout<<"fname:";</p><p> cin>>fname;</p>&
61、lt;p><b> LEN=-1;</b></p><p> LenWillDel=0;</p><p> fstream f(fname,ios::in|ios::binary);</p><p> for(LEN=1;LEN<3;LEN++)</p><p><b> {</b&
62、gt;</p><p><b> if(!f)</b></p><p><b> break;</b></p><p><b> LEN++;</b></p><p> f.seekg(LEN*sizeof(node[LEN]));</p><p&g
63、t; f.read((char*)&node[LEN],sizeof(node[LEN]));</p><p><b> }</b></p><p> f.close();</p><p><b> }</b></p><p> int BinSearch()</p>
64、<p><b> {</b></p><p><b> int id;</b></p><p> cout<<"id:";</p><p><b> cin>>id;</b></p><p> int low=0
65、,mid,high=LEN-1;</p><p> while(low<=high)</p><p><b> {</b></p><p> mid=(low+high)/2;</p><p> if(node[mid].getId()==id)</p><p> return m
66、id;</p><p> else if(node[mid].getId()>id)</p><p> high=mid-1;</p><p><b> else</b></p><p> low=mid+1;</p><p><b> }</b></p
67、><p> return -1;</p><p><b> }</b></p><p> float sumSale()//已銷售總額</p><p><b> {</b></p><p> float temp=0.0;</p><p> f
68、or(int i=0;i<LEN;i++)</p><p> if(node[i].getSaleCount()>0 && node[i].getDelTag()==0)</p><p> temp+=node[i].getSale()*node[i].getSaleCount();</p><p> return temp;<
69、;/p><p><b> }</b></p><p> float sumBuy()//(已售產(chǎn)品的)進價總額</p><p><b> {</b></p><p> float temp=0.0;</p><p> for(int i=0;i<LEN;i++)&
70、lt;/p><p> if(node[i].getSaleCount()>0 && node[i].getDelTag()==0)</p><p> temp+=node[i].getBuy()*node[i].getSaleCount();</p><p> return temp;</p><p><b>
71、; } </b></p><p> float sumGain()//(已得)純利潤總額</p><p><b> {</b></p><p> return sumSale()-sumBuy();</p><p><b> }</b></p><p>
72、 float sumSaleAll()//預(yù)銷售總額(包括已售和未售)</p><p><b> {</b></p><p> float temp=0.0;</p><p> for(int i=0;i<LEN;i++)</p><p> if(node[i].getDelTag()==0)</p
73、><p> temp+=node[i].getSale()*(node[i].getSaleCount()+node[i].getCount());</p><p> return temp;</p><p><b> }</b></p><p> float sumBuyAll()//進價成本總額(包括已售和未售)
74、</p><p><b> {</b></p><p> float temp=0.0;</p><p> for(int i=0;i<LEN;i++)</p><p> if(node[i].getDelTag()==0)</p><p> temp+=node[i].getBu
75、y()*(node[i].getSaleCount()+node[i].getCount());</p><p> return temp;</p><p><b> }</b></p><p> void countMenu()</p><p><b> {</b></p>
76、<p> cout<<"1.已售總額 2.已售總進價 3.已得純利潤 4.預(yù)銷售總額 5.進價成本總額 0.返回"<<endl;</p><p><b> int yy;</b></p><p><b> int t;</b></p><p> for(t=1;
77、t<7;t++)</p><p><b> {</b></p><p> cout<<"yy:";</p><p><b> cin>>yy;</b></p><p> switch(yy)</p><p><b
78、> {</b></p><p> case 1:cout<<sumSale()<<endl;break;</p><p> case 2:cout<<sumBuy()<<endl;break;</p><p> case 3:cout<<sumGain()<<endl;
79、break;</p><p> case 4:cout<<sumSaleAll()<<endl;break;</p><p> case 5:cout<<sumBuyAll()<<endl;break;</p><p> case 0:break;</p><p><b> }
80、</b></p><p><b> }</b></p><p><b> }</b></p><p> void sale()</p><p><b> {</b></p><p> cout<<"產(chǎn)品編號&q
81、uot;;</p><p><b> int temp;</b></p><p> temp=BinSearch();</p><p> if(temp==-1)</p><p><b> {</b></p><p> cout<<"not f
82、ind"<<endl;</p><p><b> return;</b></p><p><b> }</b></p><p> if(node[temp].getCount()<=0)</p><p><b> {</b></p>
83、;<p> cout<<"此產(chǎn)品已缺"<<endl;</p><p><b> return;</b></p><p><b> }</b></p><p> int count;</p><p> cout<<&quo
84、t;輸入數(shù)量:";</p><p> cin>>count;</p><p> float money;</p><p> cout<<"輸入收到金額(元):";</p><p> cin>>money;</p><p> if(count&l
85、t;=0 && count>node[temp].getCount())//輸入的是負數(shù)或超出該產(chǎn)品庫存量</p><p> cout<<"數(shù)量輸入不正確"<<endl;</p><p><b> else</b></p><p><b> {</b>
86、</p><p> node[temp].setCount(node[temp].getCount()-count);//當(dāng)前庫存減少count</p><p> node[temp].setSaleCount(node[temp].getSaleCount()+count);//出售量增加count</p><p> cout<<"┌┄
87、┄┄┄┄┄┄┐"<<endl</p><p> <<"┊ 購物小票 ┊"<<endl</p><p> <<"├┄┄┄┄┄┄┄┤"<<endl</p><p> <<"┊名稱:"<<node[temp
88、].getName()<<endl</p><p> <<"┊?dāng)?shù)量:"<<count<<endl</p><p> <<"┊單價:"<<node[temp].getSale()<<"元"<<endl</p><p
89、> <<"┊應(yīng)收:"<<count*node[temp].getSale()<<"元"<<endl</p><p> <<"┊找零:"<<money-count*node[temp].getSale()<<"元"<<endl<
90、;/p><p> <<"└┄┄┄┄┄┄┄┘"<<endl;</p><p><b> }</b></p><p><b> }</b></p><p> void showSale()</p><p><b> {&
91、lt;/b></p><p> for(int i=0;i<LEN;i++)</p><p> if(node[i].getSaleCount()>0 && node[i].getDelTag()==0)</p><p> showData(i);</p><p><b> }</b&
92、gt;</p><p><b> };</b></p><p> inline void menu()</p><p><b> {</b></p><p> cout<<"1.輸入產(chǎn)品信息 2.顯示 3..打開 4.菜單 5.收銀 6.計算 0.返回"&
93、lt;<endl;</p><p><b> }</b></p><p> void main()</p><p><b> {</b></p><p><b> menu();</b></p><p><b> WAY way
94、;</b></p><p><b> int sn;</b></p><p><b> for(;;)</b></p><p><b> {</b></p><p> cout<<" 選擇菜單sn:";</p>
95、<p><b> cin>>sn;</b></p><p> switch(sn)</p><p><b> {</b></p><p> case 1:way.newFile();break;</p><p> case 2:way.showData();break
96、;</p><p> case 3:way.open();break;</p><p> case 4:menu();break;</p><p> case 5:way.sale();break;</p><p> case 6:way.countMenu();break;</p><p> case 0:
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- c++程序設(shè)計語言課程設(shè)計-收銀臺結(jié)算程序
- c++課程設(shè)計--c++程序設(shè)計語言
- 《程序設(shè)計語言(c++)》課程設(shè)計
- 《c++語言程序設(shè)計》課程設(shè)計報告
- 《程序設(shè)計語言c》
- 程序設(shè)計語言c實驗
- c與c++程序設(shè)計語言大作業(yè)項目開發(fā)
- c++程序設(shè)計語言作業(yè)題及解析
- c++課程設(shè)計-- c++面向?qū)ο蟪绦蛟O(shè)計
- c++程序設(shè)計課程設(shè)計報告
- 《c#程序設(shè)計語言》課程標(biāo)準
- 《程序設(shè)計語言(c)》課程教學(xué)大綱
- 高級語言程序設(shè)計c++課程答辯
- c語言程序設(shè)計課程設(shè)計
- 1程序設(shè)計語言1程序設(shè)計語言的分類
- 《c++語言程序設(shè)計》課程輔導(dǎo)二
- 《高級語言程序設(shè)計》c++課程設(shè)計數(shù)值微分
- 重大2016年c++程序設(shè)計語言 ( 第3次 )
- 《c++程序設(shè)計課程設(shè)計——復(fù)數(shù)類》
- 重大2016年c++程序設(shè)計語言 ( 第1次 )
評論
0/150
提交評論