




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、課程設(shè)計說明書(論文)題 目 小型超市商品銷售管理系統(tǒng) 課 程 名 稱 面向?qū)ο蟪绦蛟O(shè)計 院(系、部、中心) 專 業(yè) 班 級 學(xué) 生 姓 名 學(xué) 號 設(shè) 計 地 點 指 導(dǎo) 教 師 目 錄課程設(shè)計任務(wù)書21 功能描述72 概要設(shè)計72.1 類的設(shè)計72.2 流程圖83 詳細(xì)設(shè)計114 效果及存在問題234.1 效果截屏234.2 存在問題275 心得體會286 參考文獻(xiàn)28課程設(shè)計任務(wù)書 課 程 名 稱 面向?qū)ο蟪绦蛟O(shè)計 院(系、部、中心) 專 業(yè) 班 級 起 止 日 期指 導(dǎo) 教 師 1課程設(shè)計應(yīng)達(dá)到的目的通過課程設(shè)計加深理解課堂教學(xué)內(nèi)容,熟練掌握C+語言的基本知識和技能;掌握面向?qū)ο蟪绦蛟O(shè)
2、計的基本思路和方法;掌握指針、類的封裝與繼承、文件的打開和保存、鏈表應(yīng)用;利用所學(xué)的基本知識和技能,解決面向?qū)ο蟪绦蛟O(shè)計問題。培養(yǎng)分析、解決問題的能力;提高學(xué)生的科技論文寫作能力。2課程設(shè)計題目及要求題目:小型超市商品銷售管理系統(tǒng)要求:某小型超市銷售的商品有四類:食品、化妝品、生活用品和飲料。每類商品都有商品名和商品利潤。每類商品還有區(qū)別于其他類的特殊信息,例如食品有批發(fā)商,化妝品有品牌,飲料有生產(chǎn)廠家。本系統(tǒng)完成如下功能:(1) 輸入商品的基本信息。(2) 根據(jù)商品名查詢某個商品的情況。(3) 計算并顯示商品的利潤。 3課程設(shè)計任務(wù)及工作量的要求包括課程設(shè)計計算說明書、圖紙、實物樣品等要求(
3、1)分析系統(tǒng)中的各個實體之間的關(guān)系及其屬性和行為。 (2)根據(jù)問題描述,設(shè)計系統(tǒng)的類層次,完成類層次中各個類的描述(包括屬性和方法),完成類中各個成員函數(shù)的定義。(3)完成系統(tǒng)的應(yīng)用模塊,進(jìn)行功能調(diào)試。(4)系統(tǒng)設(shè)計要實用,編程簡練,功能全面。程序中要有異常處理。(5)界面設(shè)計要以用戶為中心,操作方便、美觀大方。(要有選擇性提示)(6)按照課程設(shè)計說明書的格式規(guī)范撰寫課程設(shè)計說明書,其中正文包括: 功能描述:對系統(tǒng)要實現(xiàn)的功能進(jìn)行簡明扼要的描述。 概要設(shè)計:根據(jù)功能描述,建立系統(tǒng)的體系結(jié)構(gòu),即將整個系統(tǒng)分解成若干子功能模塊,并用框圖表示各功能模塊之間的銜接關(guān)系,并簡要說明各模塊的功能。 詳細(xì)設(shè)
4、計:詳細(xì)說明各功能模塊的實現(xiàn)過程,所用到的類的層次圖(包括類成員列表)、算法、技巧等。 效果及存在問題:說明系統(tǒng)的運行效果(附上運行界面圖片)、存在哪些不足以及預(yù)期的解決辦法。 心得體會:談?wù)勛约涸谡n程設(shè)計過程中的心得體會。(7)課程設(shè)計說明書用A4紙統(tǒng)一打印,裝訂按學(xué)校的統(tǒng)一要求完成。(8)課程設(shè)計的程序以軟盤形式上交,文件夾名稱為學(xué)生姓名及學(xué)號的組合。未經(jīng)指導(dǎo)教師許可或無故不到者,缺勤率達(dá)50%的學(xué)生不能參加答辯。 答辯時,設(shè)計者在5分鐘內(nèi)闡述自己的設(shè)計過程和最終結(jié)果,突出設(shè)計中遇到的主要問題和解決方法,然后回答教師提問。每位學(xué)生答辯總時間一般不超過15分鐘。 4主要參考文獻(xiàn)1 譚浩強(qiáng).
5、C+程序設(shè)計M . 北京:清華大學(xué)出版社,2004.2 吳乃陵C+程序設(shè)計實踐教程M北京: 高等教育出版社,2003.3 譚浩強(qiáng). C+程序設(shè)計題解與上機(jī)指導(dǎo)M. 北京:清華大學(xué)出版社,1999.4 廖雷,羅代忠. C語言程序設(shè)計基礎(chǔ)實驗教程. 北京:高等教育出版社,2005.5課程設(shè)計進(jìn)度安排起 止 日 期工 作 內(nèi) 容12 月22日12月23 日12月24 日12月25 日12月26 日12月27 日12月28 日熟悉任務(wù),算法設(shè)計軟件設(shè)計軟件設(shè)計軟件調(diào)試軟件調(diào)試軟件聯(lián)合調(diào)試考核6成績考核辦法課程設(shè)計成績的評定:根據(jù)設(shè)計的完成情況、程序的編制質(zhì)量、獨立設(shè)計能力以及答辯情況綜合衡量,由答辯小
6、組討論決定。原則上按以下公式計算: 課程設(shè)計成績工作表現(xiàn)×30%設(shè)計成果×40%考核測評×30% 工作表現(xiàn):獨立工作能力及設(shè)計過程的表現(xiàn)。占總成績的30%。設(shè)計成果:設(shè)計說明書(計算書、論文)、圖紙、程序、作品等的質(zhì)量。占總成績的40%??己藴y評:課程設(shè)計結(jié)束前,指導(dǎo)教師應(yīng)采用考試或答辯等形式對所指導(dǎo)的學(xué)生進(jìn)行測評。測評成績占總成績的30%。有創(chuàng)新的同學(xué)根據(jù)具體情況適當(dāng)加分。教研室審查意見:教研室主任簽字: 年 月 日院(系、部、中心)意見:主管領(lǐng)導(dǎo)簽字: 年 月 日一 功能描述某小型公司,主要有四類人員:經(jīng)理、兼職技術(shù)人員、銷售經(jīng)理和兼職推銷員?,F(xiàn)在,需要存儲這
7、些人員的姓名、編號、級別、當(dāng)月薪水,計算月薪總額并顯示全部信息。 要求: (1)其中,人員編號在生成人員信息時同時生成,每輸入一個人員信息編號順序加1。 (2)程序?qū)λ腥藛T有提升級別的功能 (3)月薪的計算方法是:經(jīng)理拿固定月薪,兼職技術(shù)人員按工作小時數(shù)領(lǐng)取月薪,兼職推銷員的報酬按該推銷員當(dāng)月銷售額提成 ,銷售經(jīng)理既拿固定月薪也領(lǐng)取銷售提成。 (4)能按姓名或者編號顯示、查找、增加、刪除和保存各類人員的信息 。二 概要設(shè)計2.1 類的設(shè)計2.2 流程圖(1)主函數(shù)流程圖(2)添加函數(shù)(左圖)和刪除函數(shù)(右圖)的流程圖(3)查詢函數(shù)流程圖三 詳細(xì)設(shè)計1. 主函數(shù)設(shè)計#include<io
8、stream.h>#include<conio.h>#include<stdio.h>#include<process.h>#include<fstream.h>#include<string.h>#include<dos.h> void main() system("cls");cout<<"nnnntt*n"<<"tt* *n"<<"tt* *n"<<"tt* 歡迎使用小型超市
9、商品銷售管理系統(tǒng)(HYY) *n"<<"tt* *n"<<"tt* Desined by 韓永揚 206050529 *n"<<"tt* *n"<<"tt* (按任意鍵進(jìn)入) *n"<<"tt* *n"<<"tt* *n"<<"tt*n"<<endl; getch(); food f; makeup m; drink d; live l; while(
10、1) A: system("cls"); int choice; int x; cout<<"nntttt主菜單"<<"nntttt(1)添加商品品種n" <<"ntttt(2)查詢商品n" <<"ntttt(3)刪除商品"<<"nntttt(4)退出"<<"nnn請選擇:" cin>>x; switch(x) case 1: system("cls")
11、; cout<<"nnnnnntt請選擇添加哪一類:"<<"nntttt(1)食品類"<<"ntttt(2)化妝品類"<<"ntttt(3)飲料類"<<"ntttt(4)生活用品類"<<"ntttt(5)返回"<<endl; cin>>choice; switch(choice) case 1: system("cls"); f.addf(); break; c
12、ase 2: system("cls"); m.addm(); break; case 3: system("cls"); d.addd(); break; case 4: system("cls"); l.addl(); break; case 5: system("cls"); break; break; case 2: system("cls"); cout<<"nnnnnntt請選擇查詢哪一類:"<<"nntttt(1)食品類&quo
13、t;<<"ntttt(2)化妝品類"<<"ntttt(3)飲料類"<<"ntttt(4)生活用品類"<<"ntttt(5)返回"<<endl; cin>>choice; switch(choice) case 1: system("cls"); f.searchf(); break; case 2: system("cls"); m.searchm(); break; case 3: system(&qu
14、ot;cls"); d.searchd(); break; case 4: system("cls"); l.searchl(); break; case 5: system("cls"); break; break; case 3: system("cls"); cout<<"nnnnnntt請選擇刪除哪一類:"<<"nntttt(1)食品類"<<"ntttt(2)化妝品類"<<"ntttt(3)飲料類&q
15、uot;<<"ntttt(4)生活用品類"<<"ntttt(5)返回"<<endl; cin>>choice; switch(choice) case 1: system("cls"); f.removef(); break; case 2: system("cls"); m.removem(); break; case 3: system("cls"); d.removed(); break; case 4: system("cls&q
16、uot;); l.removel(); break; case 5: system("cls"); break; break; case 4:system("cls");cout<<"nnnnnntttt謝謝使用!"<<"nntttt再見!n"exit(1);break; default:cout<<"輸入有誤,請重選!" goto A; 上面即為主函數(shù),通過switch語句來選擇操作:添加,查詢,刪除,退出。在每項操作中又用switch語句來選擇對哪一類商品
17、進(jìn)行操作,分別有食品,化妝品,飲料,生活用品四類。該函數(shù)沒有把“顯示商品利潤”作為一項單獨操作,而是把該功能加進(jìn)了“查詢”操作中,查詢的同時直接顯示商品利潤。2. 商品基類設(shè)計class spbasepublic: int t; float oprice; float iprice; float prof; int quantity; char name10; void getdate(); void showdate(); void add(); void search(); void remove(); int gett()return t;void spbase:getdate() /輸
18、入函數(shù)的設(shè)計 cout<<"ntt請輸入商品名稱:" cin>>name; cout<<"ntt請輸入商品售價:" cin>>oprice; cout<<"ntt請輸入商品進(jìn)價:" cin>>iprice; cout<<"ntt請輸入商品庫存量:" cin>>quantity;void spbase:showdate() /輸出函數(shù)的設(shè)計 cout<<"nn商品基本信息如下:" cout&
19、lt;<"nntt商品名稱:" cout<<name; cout<<"nntt商品售價:" cout<<oprice; cout<<"nntt商品進(jìn)價:" cout<<iprice; cout<<"nntt商品庫存量:" cout<<quantity; prof=(oprice-iprice)*quantity; cout<<"nntt商品利潤為 :" cout<<prof;void
20、 spbase:add() /添加函數(shù)的設(shè)計 t=1;ofstream file("HYY.txt",ios:out|ios:ate); if(!file) cout<<"文件打開失敗!" getch(); exit(1); spbase p1; p1.getdate(); file.write(reinterpret_cast<char*>(&p1),sizeof(spbase); / reinterpret_cast強(qiáng)制轉(zhuǎn)換 file.close(); void spbase:search() /查詢函數(shù)的設(shè)計 cha
21、r name410; cout<<"n請輸入生活用品名稱:" cin>>name4; fstream file("HYY.txt",ios:in); if (!file) cout<<"文件打開失??!" getch(); exit(1); char flag='a' /設(shè)標(biāo)志位 spbase p1; file.read(reinterpret_cast<char*>(&p1),sizeof(spbase); while(!file.eof() /正確顯示,指針還沒
22、到末尾繼續(xù) if(strcmp(,name4)=0)&&gett() p1.showdate(); getch(); flag='z' break; file.read(reinterpret_cast<char*>(&p1),sizeof(spbase); if(flag!='z') cout<<("該商品已被刪除!"); getch(); file.close();void spbase:remove() /刪除函數(shù)的設(shè)計 t=0;search();3. 食品類設(shè)計(food)
23、class food:public spbase private: char pfs10; public: void getdatef() spbase:getdate(); cout<<"ntt請輸入商品批發(fā)商:"cin>>pfs; void showdatef() spbase:showdate(); cout<<"nntt商品批發(fā)商:"cout<<pfs; void addf() t=1;ofstream file("HYY1.txt",ios:out|ios:ate); if(!
24、file)cout<<"文件打開失敗!" getch(); exit(1); food f; f.getdatef(); file.write(reinterpret_cast<char*>(&f),sizeof(food); file.close(); void searchf() char name110;cout<<"n請輸入食品名稱:" cin>>name1;fstream file("HYY1.txt",ios:in); if (!file)cout<<&q
25、uot;文件打開失敗!" getch(); exit(1); char flag='a' food f; file.read(reinterpret_cast<char*>(&f),sizeof(food); while(!file.eof() if(strcmp(,name1)=0)&&gett()f.showdatef(); getch(); flag='z' break; file.read(reinterpret_cast<char*>(&f),sizeof(food); if
26、(flag!='z') cout<<("該商品已被刪除!"); getch(); file.close(); void removef() t=0;searchf(); ;4. 化妝品類設(shè)計(makeup)class makeup:public spbase private: char pp10; public: void getdatem() spbase:getdate(); cout<<"ntt請輸入商品品牌:"cin>>pp; void showdatem() spbase:showdate()
27、; cout<<"nntt商品品牌:"cout<<pp; void addm() t=1;ofstream file("HYY2.txt",ios:out|ios:ate); if(!file)cout<<"文件打開失??!" getch(); exit(1); makeup m; m.getdatem(); file.write(reinterpret_cast<char*>(&m),sizeof(makeup); file.close(); void searchm() cha
28、r name210;cout<<"n請輸入化妝品名稱:" cin>>name2;fstream file("HYY2.txt",ios:in); if (!file)cout<<"文件打開失??!" getch(); exit(1); char flag='a' makeup m; file.read(reinterpret_cast<char*>(&m),sizeof(makeup); while(!file.eof() if(strcmp(,name
29、2)=0)m.showdatem(); getch(); flag='z' break; file.read(reinterpret_cast<char*>(&m),sizeof(makeup); if(flag!='z') cout<<("該商品已被刪除!"); getch(); file.close(); void removem() t=0;searchm(); ;5. 飲料類設(shè)計(drink)class drink:public spbase private: char factory10; publi
30、c: void getdated() spbase:getdate(); cout<<"ntt請輸入商品生產(chǎn)廠家:"cin>>factory; void showdated() spbase:showdate(); cout<<"nntt商品生產(chǎn)廠家:"cout<<factory; void addd() t=1;ofstream file("HYY3.txt",ios:out|ios:ate); if(!file)cout<<"文件打開失敗!" getc
31、h(); exit(1); drink d; d.getdated(); file.write(reinterpret_cast<char*>(&d),sizeof(drink); file.close(); void searchd() char name310;cout<<"n請輸入飲料名稱:" cin>>name3;fstream file("HYY3.txt",ios:in); if (!file)cout<<"文件打開失??!" getch(); exit(1); cha
32、r flag='a' drink d; file.read(reinterpret_cast<char*>(&d),sizeof(drink); while(!file.eof() if(strcmp(,name3)=0)d.showdated(); getch(); flag='z' break; file.read(reinterpret_cast<char*>(&d),sizeof(drink); if(flag!='z') cout<<("該商品已被刪除!"
33、;); getch(); file.close(); void removed() t=0;searchd(); ;6. 生活用品類設(shè)計(live)class live:public spbase public: void getdatel() spbase:getdate(); void showdatel() spbase:showdate(); void addl() spbase:add(); void searchl() spbase:search(); void removel() spbase:remove(); ;四效果及存在問題4.1 效果截屏進(jìn)入主界面按任意鍵進(jìn)入主菜單后,選擇“1”,添加商品進(jìn)入”添加商品品種”的自菜單,選擇“3“,添加”飲料類“寫入添加的商品基本信息返回上一層主菜單后,選“2”,查詢商品選擇“3”,查詢“飲料類”輸入查詢的飲料名稱查詢到該商品,基本信息如下:返回主菜單,選“3”,刪除商品選“3”,刪除“飲料類”寫入刪除的商品名稱刪除后查詢顯示:選“4”后,退出4.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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 設(shè)備生產(chǎn)檢修管理制度
- 設(shè)備缺陷異常管理制度
- 設(shè)備驗收安裝管理制度
- 設(shè)計公司薪資管理制度
- 設(shè)計質(zhì)量安全管理制度
- 診所人員消毒管理制度
- 診所科室人員管理制度
- 試劑使用安全管理制度
- 財務(wù)統(tǒng)計部門管理制度
- 財政ukey管理制度
- 中國Linux軟件行業(yè)市場發(fā)展現(xiàn)狀及前景趨勢與投資分析研究報告(2024-2030版)
- 探究大象耳朵秘密:2025年課堂新視角
- 《新能源乘用車二手車鑒定評估技術(shù)規(guī)范 第1部分:純電動》
- 下沉式廣場結(jié)構(gòu)施工方案
- 《加坡的教育制度》課件
- Windows操作系統(tǒng)及應(yīng)用期末測試試題及答案
- 《交通事故車輛及財物損失價格鑒證評估技術(shù)規(guī)范》
- 北師大版二年級數(shù)學(xué)下冊各單元測試卷
- 招生就業(yè)處2025年工作計劃
- 【MOOC】外國文學(xué)經(jīng)典導(dǎo)讀-西北大學(xué) 中國大學(xué)慕課MOOC答案
- 醫(yī)院供電合同
評論
0/150
提交評論