C++商品銷售管理系統(tǒng)_第1頁
C++商品銷售管理系統(tǒng)_第2頁
C++商品銷售管理系統(tǒng)_第3頁
免費預(yù)覽已結(jié)束,剩余14頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、軟件學(xué)院軟件工程專業(yè)20121班一、課程設(shè)計(論文)題目小型商品銷售管理系統(tǒng)二、課程設(shè)計(論文)工作自2013年6月17日起至2013年6月21日止。三、課程設(shè)計(論文)地點:軟件學(xué)院創(chuàng)新大樓四、課程設(shè)計(論文)內(nèi)容要求:1. 本課程設(shè)計的目的(1) 使學(xué)生掌握系統(tǒng)各功能模塊的基本工作原理;(2) 掌握C+的基本編程原理和及基本的編程方法;(3) 使學(xué)生學(xué)會系統(tǒng)調(diào)試;(4) 培養(yǎng)學(xué)生分析、解決問題的能力;(5) 提高學(xué)生的軟件文檔寫作能力。1) 課程設(shè)計的任務(wù)及要求基本要求:(1) 分析系統(tǒng)各功能模塊的工作原理;(2) 至少有查找,排序、插入、刪除等功能;(3) 提出系統(tǒng)的設(shè)計方案;(4) 對

2、所進行編程、調(diào)試、修改。2) 創(chuàng)新要求:在基本要求達到后,可進行創(chuàng)新設(shè)計.3) 課程設(shè)計論文編寫要求(1) 要按照書稿的規(guī)格打印譽寫課設(shè)論文(2) 論文包括設(shè)計目的和要求、設(shè)計內(nèi)容、流程圖、程序?qū)崿F(xiàn)、程序調(diào)試、設(shè)計小結(jié)、參考文獻等4) 畢業(yè)論文裝訂按學(xué)校的統(tǒng)一要求完成答辯與評分標準:(1) 完成原理分析:20分;(2) 完成設(shè)計過程:25分;(3) 完成調(diào)試運行結(jié)果正確:40分;(4)答辯:15分。5)參考文獻:(1)譚浩強.C+程序設(shè)計實踐指導(dǎo)清華大學(xué)出版社(2)譚浩強.C+程序設(shè)計清華大學(xué)出版社(3)6)課程設(shè)計進度安排內(nèi)容天數(shù)地點總體需求與分析構(gòu)思及收集資料1圖書館各模塊的編程實現(xiàn),調(diào)試

3、與修改3機房撰寫論文與答辯1圖書館,學(xué)生簽名:2013年6月17日課程設(shè)計(論文)評審意見(1)完成原理分析(20分):優(yōu)()、良()、中()、一«()、差();(2)設(shè)計分析(25分)優(yōu))良()、中()、一«()、差();(3)完成調(diào)試(20分):優(yōu)()、良()、中()、一«()、差();(4)運行結(jié)果(20分):優(yōu)()、良()、中()、一«()、差();(5)答辯(15分):優(yōu)()、厚1()、中()、f()、差();(6)格式規(guī)范性及考勤是否降等級:是()評閱人簽名:職稱:講師2013年6月22日目錄一:設(shè)計目的和要求四二:設(shè)計內(nèi)容五三.流程圖八四:

4、程序?qū)崿F(xiàn).九五. 程序調(diào)試.十六六. 設(shè)計小結(jié).十九七:參考文獻.十九1. :設(shè)計目的和要求設(shè)計目的課程設(shè)計的目的是培養(yǎng)應(yīng)用C+柚向?qū)ο蟪绦蛟O(shè)計設(shè)計方法及思想解決實際問題的能力,掌握使用面向?qū)ο笤O(shè)計語言'C+,熟悉面向?qū)ο箝_發(fā)平臺VisualC+6.0,提高調(diào)查研究、查閱技術(shù)資料以及編寫技術(shù)文獻的能力。2. 設(shè)計要求用C+S寫一系統(tǒng),實現(xiàn)商品銷售管理:1)商品基本信息的鍵盤錄入,刪除,修改,磁盤導(dǎo)入和保存;2)商品庫存信息的鍵盤錄入,刪除,修改,磁盤導(dǎo)入和保存;A)輸入一個商品編號,能自動搜索并在屏幕上輸出商品的庫存信息B)輸入一個商品編號和新增庫存,能更新商品的庫存信息。如商品001

5、,輸入新增庫存4單位,若商品001原來的庫存為3單位,則更新其庫存為7單位,并保存至磁盤;3) 銷售記錄的鍵盤錄入和磁盤保存。要求在輸入一條銷售記錄時,只能手動錄入商品編號和銷售數(shù)量,其他相關(guān)信息自動生成后,將完整的(包含商品基本信息,價格,銷售數(shù)量,銷售金額,銷售日期,以及庫存數(shù)量)銷售記錄和商品庫存信息在屏幕上輸出,并保存在指定的磁盤文本中,不得覆蓋之前的銷售記錄和庫存信息。4) 輸入一個銷售日期,如201212,能自動計算出2012年12月份的冏品總銷售額。二:設(shè)計內(nèi)容1.主要類設(shè)計對丁整個商品銷售管理系統(tǒng)來說,首先,定義個Ware類作為基類:classWare/基本信息類(public

6、:Ware()num=0;name0='N'price=0;)Ware(intn1,charname!doubleprice1)num=n1;name0=name1price=price1;voidinput();voidoutput();intnum;charname10;doubleprice;然后我們再定義兩個派生類:Stock類,即商品庫存信息類;Sell類,即商品銷售信息類;具體實現(xiàn)如下:classStock:publicWare/庫存類public:Stock()(number=0;)Stock(intn):number(n)();voidinput();voido

7、utput();intnumber;);classSell:publicWare/銷售類(public:Sell()numb=0;count=0;sale=0;time0='N'voidinput();voidoutput();intsell();intnumb;doublecount;doublesale;chartime64;2.其它各函數(shù)的主要功能實現(xiàn),業(yè)乙十r.nr/、-nr*r.-II-i=r-r-r.-rm4)閨釵故刃盹米刀K尖,晝一足刃盹頭圳尖,件用足實現(xiàn)題目要求的各種功能,如商品基本信息的鍵盤錄入,刪除,修改,磁盤導(dǎo)入和保存;商品庫存信息的鍵盤錄入,刪除,修改,

8、和保存等。intinputware();/輸入商品基本信息并且存至文件intoware();/輸出商品基本信息intcware();/修改Ware數(shù)據(jù)intinquire();/查詢庫存信息intcstock();/修改庫存信息intsell();/輸入商品銷售信息intsalecase();/查看商品銷售信息intsum();/查看特定時段的銷售額磁盤導(dǎo)入intsalesum();/總銷售額voidDelete()/刪除函數(shù)另一類是導(dǎo)航菜單類,主要作用是鏈接程序的各個模塊,并且給使用者做部分導(dǎo)航,是使用者更活晰明了的使用本系統(tǒng)。它們有:voidwelcome();/歡迎函數(shù),作為主菜單鏈接以

9、下四個函數(shù)voidWARE();/調(diào)用和商品基本信息有關(guān)的函數(shù)voidSTOCK();/調(diào)用和商品庫存有關(guān)的函數(shù)voidSALE();/調(diào)用和商品銷售有關(guān)的函數(shù)voidExit();/退出函數(shù)3. 主函數(shù)main()主函數(shù)main()中用了switch語句,可實現(xiàn)選擇個功能,即選擇對商品的哪些性質(zhì)進行操作,1,對商品的基本信息進行操作。2,對商品的庫存進行操作。3,對商品的銷售進行操作。0為退出程序。進入程序后,可選擇執(zhí)行的功能;流程圖1中簡單介紹了該商品管理系統(tǒng)的主要功能,在后面會對各部分進行分析。3.以下具體功能具體分析.在Ware()函數(shù)中,用了switch語句,可實現(xiàn)5個功能,即1.信

10、息輸入2.信息查詢3.修改信息4.返回菜單0.退出。1) 在Sell()函數(shù)中,用了switch語句,可實現(xiàn)6個功能,即1.輸入銷售信息2.銷售信息查詢3.查詢總銷售額4.查詢特定時刻的銷售額5.返回菜單0.退出。2) 在Stock()函數(shù)中,用了switch語句,可實現(xiàn)4個功能,即1.庫存信息輸入2.庫存信息查詢3.庫存修改信息4.返回菜單0.退出。3) 在Delete()函數(shù)中,用了switch語句,可實現(xiàn)5個功能,即1.信息輸入2.信息查詢3.修改信息4.返回菜單0.退出。4) Exit()函數(shù)作為退出函數(shù)。三.流程圖Welcome®數(shù)四:程序?qū)崿F(xiàn)1.在主函數(shù)中調(diào)用了welco

11、me函數(shù),使用了Sleep函數(shù)和cout函數(shù)使程序更加美觀;intmain()(inti;cout<<"*”<<endl<<endl<<endl;cout<<歡迎使用<<endl<<endl<<endl;cout<<*"<<endl;for(i=0;i<20;i+)(cout<<”.”;Sleep(120);)welcome();return0;)2.Welcome的功能實現(xiàn)如下所示voidwelcome()(intm;system(&q

12、uot;cls");cout<<"*,<<endl;cout<<"1商品基本信息操作'<<endl<<endl<<endl;cout<<"2商品庫存操作'<<endl<<endl<<endl;cout<<"3銷售情況記錄'<<endl<<endl<<endl;cout<<"4刪除商品信息'<<endl<<

13、;endl<<endl;cout<<"cout<<"0退出程序"<<endl<<endl<<endl;*"<<endl;cin>>m;switch(m)(case1:WARE();break;case2:STOCK();break;case3:SALE();break;case4:Delete();break;case0:Exit();break;);)在該函數(shù)中使用是Switch語句,通過switch()語句可選擇各功能,為了使界面更美觀,也使用了cout函

14、數(shù)作為顯示菜單;voidDelete()intnum,i;StockstockNWarewareN;fstreaminstock(fstreaminware("stock.dat",ios:in|ios:out|ios:app);"ware.dat",ios:in|ios:out|ios:binary);3.刪除函數(shù),本函數(shù)是將文件中保存的商品數(shù)據(jù)導(dǎo)出至商品類的對象數(shù)組中,然后通過商品編號來進行判斷,如果符合條件,刪除該商品所有數(shù)據(jù),并且重新讀入文件,覆蓋舊數(shù)據(jù)。check(instock);check(inware);for(i=0;i<N;i+

15、)instock>>stocki.number;inware.read(char*)&warei,sizeof(warei);)cout<<"請輸入要刪除的商品編號cin>>num;for(i=0;i<N;i+)if(num=warei.num)warei.output();stocki.output();for(intm=i;m<Nm+)(warem=warem+1;stockm=stockm+1;)break;)inware.close();instock.close();for(i=0;i<N;i+)(fstream

16、instock1("stock.dat",ios:in|ios:out);instock1.seekp(i*sizeof(stocki.number),ios:beg);instock<<stocki.number<<""fstreaminware("ware.dat",ios:in|ios:out|ios:binary);inware.seekp(i*sizeof(warei),ios:beg);inware.write(char*)&warei,sizeof(ware);instock.close(

17、);inware.close();cout<<"返回上一級請按1,退出程序請按0;"cin>>i;if(i)welcome();elseExit();商品銷售函數(shù)通過switch來鏈接各個功能函數(shù)switch(m)(case1:oware();break;case2:inputware();break;case3:cware();break;case4:welcome();case0:Exit();break;4. ;商品庫存函數(shù)switch(m)(case1:inquire();break;case2:cstock();break;case3:we

18、lcome();case0:Exit();break;5. ;商品銷售函數(shù)switch(m)(case1:sell();break;case2:salecase();break;case3:sum();break;case4:salesum();break;case5:welcome();case0:Exit();break;退出函數(shù)voidExit()(system("cls");cout<<*"<<endl<<endl<<endl<<endl;cout<<謝謝使用<<endl&

19、lt;<endl<<endl<<endl;cout<<<<endl;)8.修改商品基本數(shù)據(jù)。首先通過文件操作讀取已存的商品數(shù)據(jù),然后輸入商品編號,然后進行判斷,若符合條件,則調(diào)用輸入函數(shù),使用文件指針,然后對原來的數(shù)據(jù)進行輸出,覆蓋舊數(shù)據(jù)。intcware()(inti,num;WarewareN;fstreaminware("ware.dat",ios:in|ios:out|ios:binary);check(inware);cout<<”修改數(shù)據(jù)"<<endl;for(i=0;i&l

20、t;Ni+)(inware.read(char*)&warei,sizeof(warei);if(warei.num=0)continue;if(inware.eof()break;)cout<<"num:"cin>>num;for(i=0;i<N;i+)(if(num=warei.num)(warei.input();inware.seekp(i*sizeof(warei),ios:beg);inware.write(char*)&warei,sizeof(ware);break;)inware.close();cout<

21、;<-返回上一級請按1,退出程序請按0;"cin>>i;if(i)WARE()elseExit();return0;)9.Sum是查詢某一段時間銷售額的函數(shù),首先定義了兩個字符串用來存儲時間的頭尾,然后從文件中讀取數(shù)據(jù)進行判斷,如果符合第一個條件,就開始疊加銷售額,知道第二個條件滿足時,停止循環(huán)并且輸出銷售額。intsum()Sellsell;chartime164,time264;doubleSale=0;inti=0;fstreaminsell("sell.dat",ios:in|ios:out|ios:app|ios:binary);che

22、ck(insell);cout<<"輸入時間1:"cin>>time1;cout<<"輸入時間2:"cin>>time2;doinsell.seekg(0,ios:cur);insell.read(char*)&sell,sizeof(sell);_|if(strcmp(time1,sell.time)=0)|Sale+=sell.sale;)while(!strcmp(time2,sell.time)=0);cout<<Sale;insell.close();cout<<"返回上一級請按1,退出程序請按0;cin>>i;if(i)SALE();elseExit();return0;)五.程序調(diào)試Hl輸入商品銷售信息12)查看商品銷售信息133查看特定時段的銷莒額4查看總銷售額151返回上一級103退出程序220521編裁6/品品/9有有213入入n:潤nu2813/86/21nane:qeprice:2返回上一

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論