




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 面向?qū)ο蟪绦蛟O(shè)計課程設(shè)計報告書 設(shè) 計 題 目:書店圖書管理系統(tǒng) 18目 錄第1章 選 題21.1 題目背景21.2系統(tǒng)實現(xiàn)的具體分工21.2.1 標(biāo)題21.3開發(fā)環(huán)境2第2章 設(shè)計內(nèi)容32.2 概要設(shè)計(系統(tǒng)流程圖)32.3 設(shè)計與分工42.3.1 結(jié)構(gòu)設(shè)計42.3.2 類設(shè)計4第3章 系統(tǒng)實現(xiàn)53.1 涉及知識點53.2 系統(tǒng)運行(主要運行界面抓圖)63.3 源程序清單(書庫管理模塊)7第4章 結(jié)束語16 參考文獻(xiàn)18第1章 選 題1.1 題目背景 隨著信息時代的到來和全社會信息化、網(wǎng)絡(luò)化建設(shè)的興起,傳統(tǒng)的書店圖書管理模式和操作方法越來越不能滿足用戶的需要.智能化、網(wǎng)絡(luò)化、信息化的書店圖
2、書管理系統(tǒng)應(yīng)用勢在必行。電子時代的到來,很多網(wǎng)購盛行,網(wǎng)上的購物很流行,知識分子的網(wǎng)上購書,當(dāng)然也是潮流的前沿,網(wǎng)上的書店圖書管理系統(tǒng)也是應(yīng)運而生,實現(xiàn)買賣雙方的交流,與書庫的自動化管理,便于書店老板的經(jīng)營。1.2系統(tǒng)實現(xiàn)的具體分工系統(tǒng)分為顧客購書類、訂單類、收銀類、圖書庫類以及主函數(shù)等幾大模塊,其中顧客購書類實現(xiàn)顧客對圖書的選購,訂單類實現(xiàn)對顧客訂單的管理及查詢,收銀類實現(xiàn)對訂單的收銀,圖書庫類實現(xiàn)對書店圖書庫圖書信息的描述及管理,main() 函數(shù)實現(xiàn)對程序主界面的引導(dǎo)。 1.2.1 標(biāo)題書店圖書管理系統(tǒng)的設(shè)計與實現(xiàn)1.3開發(fā)環(huán)境 開發(fā)軟件: visual c+ 6.0 處理器名稱:pen
3、tium(r)dual-core cpu e6500 2.94ghz 2.94ghz 硬盤驅(qū)動器:wdc wd1600aajs-22waao 系統(tǒng)內(nèi)存:金士頓內(nèi)存2gb 顯示卡:nvidia geforce 9400 gt 顯示器:lg gsm4eb3操作系統(tǒng):microsoft windows xp professional 第2章 設(shè)計內(nèi)容2.1實現(xiàn)功能系統(tǒng)主要包括書店顧客對圖書的選購,書店工作人員對訂單的收銀以及對本店書庫圖書信息的管理。顧客只需進(jìn)入圖書選購模塊便可對圖書進(jìn)行選購、下單。書店工作人員輸入相應(yīng)模塊密碼后可實現(xiàn)收銀以及對本店圖書信息的管理。2.2 概要設(shè)計(系統(tǒng)流程圖)圖 2
4、-1 系統(tǒng)結(jié)構(gòu)圖2.3 設(shè)計與分工在這次書店管理系統(tǒng)開發(fā)過程中,我主要負(fù)責(zé)書庫管理模塊的設(shè)計與開發(fā)。作為整個系統(tǒng)的核心,其他模塊都是圍繞這個模塊進(jìn)行的,所以只有做好了這個模塊,才能確保其他模塊的功能實現(xiàn)。本模塊才用二進(jìn)制文件存儲圖書信息,不僅方便,而且保證了書庫數(shù)據(jù)的安全。另外,因為書庫管理模塊為書店工作人員管理圖書所用,所以顧客或者其他人是沒有權(quán)限進(jìn)入的。為此,我設(shè)置了管理員密碼(adminster)。只有輸入密碼,才能進(jìn)行操作。 2.3.1 結(jié)構(gòu)設(shè)計結(jié)構(gòu)設(shè)計也稱概念設(shè)計 (conceptual design),是界面設(shè)計的骨架。該書店管理系統(tǒng)運行時界面上的目錄體系和詞語定義易于用戶理解和操
5、作,例如主界面的目錄體系包括1.顧客選購模塊 2.收銀模塊 3.報表模塊 4.書庫管理模塊 0.退出程序。其中書庫管理模塊又下分目錄1.顯示所有圖書 2.查找書 3.修改書 4.增加書 5.刪除書 6.返回主菜單。顯示所有圖書一欄中詳細(xì)列出了書庫中所存書本的isbn號、書名、作者、售價、庫存量等信息,使管理者對圖書信息一目了然,充分體現(xiàn)了結(jié)構(gòu)化、簡明化的界面設(shè)計理念。 2.3.2 類設(shè)計書庫管理模塊開發(fā)過程中采用類封裝技術(shù),讓程序更能清晰的表達(dá)出其含義,類豐富了語言的自定義數(shù)據(jù)類型以及含義。而且,面向?qū)ο缶幊谈菀紫到y(tǒng)的維護(hù)和擴展,同時避免本模塊數(shù)據(jù)與其他模塊數(shù)據(jù)混淆參雜,使程序代碼簡單明了,
6、增強了程序的穩(wěn)定性,可塑性。本模塊共設(shè)計兩個類,分別為圖書信息類(bookdata)、圖書管理類(bookbase)。其中,圖書信息類存儲圖書的各種信息,包括isbn(isbn)、書名(booktitle)、出版社(publisher)、作者(author)、庫存量(qtyonhand)、進(jìn)書日期(dateadded)、批發(fā)價(wholesale)、零售價(retail)等信息。圖書管理類實現(xiàn)對書庫的各種操作,包括顯示所有圖書信息(showallbook)、查找書(searchbook)、修改書(amendbook)、增加書(addbook)、刪除書(deletebook)以及本模塊操作菜單(
7、menubook)等。本模塊的類關(guān)系圖如下頁圖2-2所示: 書名 booktitleisbn isbn 圖書信息類 bookdata出版社 publisher作者 author進(jìn)書日期 dateadded 庫存量 qtyonhand批發(fā)價 wholesale圖書管理模塊零售價 retail顯示所有圖書 showallbook查找書 searchbook 圖書管理類 bookbase修改書 amendbook增加書 addbook刪除書 deletebook操作菜單 menubook圖 2-2 圖書管理模塊結(jié)構(gòu)圖第3章 系統(tǒng)實現(xiàn)3.1 涉及知識點類封裝、面向?qū)ο蟪绦蛟O(shè)計、文件的讀取操作、循環(huán)語句
8、的使用、過程化設(shè)計的思想等。3.2 系統(tǒng)運行(主要運行界面抓圖)下面的幾個圖為系統(tǒng)運行的主要運行界面,界面清晰,結(jié)構(gòu)鮮明。圖 3-2 書庫管理模塊菜單 圖 3-1 主菜單圖 3-3 顯示所有圖書信息圖 3-4 返回主菜單3.3 源程序清單(書庫管理模塊)主菜單main.cpp#include<iostream>using namespace std;#include<fstream>#include<cstring>#include<iomanip>#include"bookdata.h"#include"cash.
9、h"#include"bookbase.h"#include"booklist.h"#include"shop.h"int main()bookbase base;booklist list;cash cash;shop shop;int choice;char c; cout << " 歡迎使用書店管理系統(tǒng) n" <<endl;docout<<"nt=" << endl;cout<<"nt *主菜單*"&
10、lt;<endl;cout << "nttt1:顧客選購模塊 nnttt2:收銀模塊 nnttt3:報表模塊nnttt4:書庫管理模塊 nnttt0:退出程序" <<endl;cout << "t=" << endl;cout << "nt輸入選擇:"cin >> choice;switch(choice) case 1: shop.search();/顧客選購模塊break; case 2: cash.cashoperate();/收銀模塊break; c
11、ase 3: list.menubooklist();/報表模塊break; case 4: base.menubook();/書庫管理模塊break; case 0: exit(0);while(1);return 0;書庫管理模塊圖書信息類 bookdata.h#ifndef bookdata_h#define bookdata_hclass bookdataprotected:char isbn31;/isbn號char booktitle100;/書名char author51;/作者char publisher100;/出版社char dateadded11;/進(jìn)書日期int qty
12、onhand;/庫存量double wholesale;/批發(fā)價double retail;/零售價int flag;/刪除標(biāo)記 1:未刪除 0:刪除public:void setinfo(char *is,char *bo,char *au,char *pu,char *da,int qt,double wh,double re)/設(shè)置書的信息strcpy(isbn,is);strcpy(booktitle,bo);strcpy(author,au);strcpy(publisher,pu);strcpy(dateadded,da);qtyonhand=qt;wholesale=wh;ret
13、ail=re;void showinfo()/顯示書的信息cout<<"tisbn號:"<<isbn<<endl;cout<<"t書名:"<<booktitle<<endl;cout<<"t作者:"<<author<<endl;cout<<"t出版單位:"<<publisher<<endl;cout<<"t進(jìn)書日期:"<<date
14、added<<endl;cout<<"t庫存量:"<<qtyonhand<<endl;cout<<"t批發(fā)價:"<<wholesale<<endl;cout<<"t零售價:"<<retail<<endl;void setflag(int f=1)/設(shè)置刪除標(biāo)記flag=f;int getflag()return flag;char *getisbn()return isbn;char *getbooktitle()r
15、eturn booktitle;char *getauthor()return author;char *getpublisher()return publisher;char *getdateadded()return dateadded;int getqtyonhand()return qtyonhand;double getwholesale()return wholesale;double getretail()return retail;void setqtyonhand(int num)/設(shè)置庫存量qtyonhand = num;#endif圖書管理類 bookbase.h#ifn
16、def bookbase_h#define bookbase_h#include"bookdata.h"class bookbase:public bookdataprotected:int top;bookdata book100;public:bookbase ()/構(gòu)造函數(shù),打開書庫信息bookdata s;top=-1;fstream file;file.open("bookinfo.dat",ios:in|ios:binary);while(!file.eof()file.read(char *)&s,sizeof(s);if(file
17、.fail()break;top+;booktop=s;file.close();void updatedat()/刷新書庫信息fstream file("bookinfo.dat",ios:out|ios:binary);for(int i=0;i<=top;i+)if(booki.getflag()=1)file.write(char *)&booki,sizeof(booki);file.close();void showallbook()/顯示所有圖書信息cout<<"n下面顯示所有圖書信息:"<<endl;
18、for(int i=0;i<=top;i+)booki.showinfo();cout<<endl;void addbook()/增加圖書int i,n;char is31, bo100, au51, pu100,da11;int qt;double wh,re;cout<<"請輸入要增加書的數(shù)量:"cin>>n;cout<<"請輸入下列信息:"<<endl;for(i=0;i<n;i+)cout<<"isbn:"cin>>is;cout&
19、lt;<"書名:"cin>>bo;cout<<"作者:"cin>>au;cout<<"出版社:"cin>>pu;cout<<"進(jìn)書日期(請按年月日順序輸入,如:2011年1月1日請輸入20110101):"cin>>da;cout<<"庫存量:"cin>>qt;cout<<"批發(fā)價:"cin>>wh;cout<<"零售
20、價:"cin>>re;top+;booktop.setinfo(is,bo,au,pu,da,qt,wh,re); booktop.setflag(1);updatedat();cout<<"增加完成!"<<endl;void searchbook()/查找圖書int x=1;char name100,again;docout<<"請輸入要查找書的isbn號或書名:"cin>>name;for(int i=0;i<=top;i+)if(!strcmp(booki.getisbn(
21、),name)|!strcmp(booki.getbooktitle(),name)cout<<"n書的信息已找到,下面輸出該書信息:n"booki.showinfo();x=0;if(x)cout<<"n未找到該書信息!n"cout<<"還要再查找一本書的信息嗎?(y/n):"cin>>again;while(again='y');void amendbook()/修改圖書信息int x=1;char choice, name100,again;char is31, b
22、o100, au51, pu100,da11;int qt;double wh,re;docout<<"請輸入要修改書的isbn號或書名:"cin>>name;for(int i=0;i<=top;i+)if(!strcmp(booki.getisbn(),name)|!strcmp(booki.getbooktitle(),name)cout<<"n書的信息已找到,下面輸出該書信息:n"booki.showinfo();x=0;cout<<"t確定要修改該書信息?(y/n):"c
23、in>>choice;if(choice='y') cout<<"請輸入下列信息:"<<endl; cout<<"isbn:" cin>>is; cout<<"書名:"cin.ignore(); cin.getline(bo,100); cout<<"作者:" cin.getline(au,51); cout<<"出版社:" cin.getline(pu,100); cout<&
24、lt;"進(jìn)書日期(請按年月日順序輸入,如:2011年1月1日請輸入20110101):" cin>>da; cout<<"庫存量:" cin>>qt; cout<<"批發(fā)價:" cin>>wh; cout<<"零售價:" cin>>re;booki.setinfo(is,bo,au,pu,da,qt,wh,re);booktop.setflag(1);updatedat();cout<<"修改完成!"
25、<<endl;if(x)cout<<"n未找到該書信息,是否將該書信息增加到書庫?(y/n):"/將未找到的圖書信息添加到書庫cin>>choice;if(choice='y') cout<<"請輸入下列信息:"<<endl; cout<<"isbn:" cin.getline(is,51); cout<<"書名:" cin.getline(bo,100); cout<<"作者:" c
26、in.getline(au,51); cout<<"出版社:" cin.getline(pu,100); cout<<"進(jìn)書日期(請按年月日順序輸入,如:2011年1月1日請輸入20110101):" cin>>da; cout<<"庫存量:" cin>>qt; cout<<"批發(fā)價:" cin>>wh; cout<<"零售價:" cin>>re;booki.setinfo(is,bo,a
27、u,pu,da,qt,wh,re);booktop.setflag(1); updatedat();cout<<"增加完成!"<<endl;cout<<"還要再修改一本書的信息嗎?(y/n):" cin>>again;while(again='y');void deletebook()/刪除圖書int x=1; char name100,choice,again;do cout<<"請輸入要刪除的書的isbn或書名:" cin>>name;for(
28、int i=0;i<=top;i+) if(!strcmp(booki.getisbn(),name)|!strcmp(booki.getbooktitle(),name) cout<<"n書的信息已找到,下面輸出該書信息:n" booki.showinfo(); x=0; cout<<"是否確認(rèn)刪除該書的信息?(y/n):" cin>>choice; if(choice='y') booki.setflag(0);/設(shè)置刪除標(biāo)記 updatedat();cout<<"t刪除
29、成功!n" if(x)cout<<"n未找到有關(guān)該書的信息!n" cout<<"還要再刪除一本書的信息嗎?(y/n):"cin>>again;while(again='y');void menubook()/書庫管理模塊主菜單 int choice,a;bookbase book1;char adminster51,code="tianweitao",again;cout<<"n*此模塊只有管理員才能進(jìn)入,請輸入管理員密碼:"cin>&
30、gt;adminster;a=strcmp(adminster,code);while(a!=0) cout<<"密碼錯誤,請重新輸入:" cin>>adminster; a=strcmp(adminster,code);docout<<"nt=" << endl;cout<<"nt *書庫管理模塊*"<<endl;cout<<"nnttt1.顯示所有圖書nn"<<"ttt2.查找書nn"<&l
31、t;"ttt3.修改書nn"<<"ttt4.增加書nn"<<"ttt5.刪除書nn"<<"ttt6.返回主菜單n" cout<<"nt="<< endl;cout<<"t請輸入你的選擇:"cin>>choice;switch(choice)case 1:showallbook();break;case 2:searchbook();break;case 3:amendbook();break;
32、case 4:addbook();break;case 5:deletebook();break;case 6:return;cout<<"還要繼續(xù)操作嗎?(y/n):"cin>>again;while(again='y');#endif第4章 結(jié)束語一周的課程設(shè)計結(jié)束了,在這次的課程設(shè)計中不僅檢驗了我所學(xué)習(xí)的知識,也培養(yǎng)了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在設(shè)計過程中,與同學(xué)分工設(shè)計,和同學(xué)們相互探討,相互學(xué)習(xí),相互監(jiān)督。學(xué)會了合作,學(xué)會了運籌帷幄,學(xué)會了寬容,學(xué)會了理解,也學(xué)會了做人與處世。 課程設(shè)計是我們專業(yè)課程知識綜合應(yīng)用的實踐訓(xùn)練,著是我們邁向社會,從事職業(yè)工作前一個必不少的過程”千里之行始于足下”,通過這次課程設(shè)計,我深深體會到這句千古名言的真正含義我今天認(rèn)真的進(jìn)行課程設(shè)計,學(xué)會腳踏實地邁開這一步,就是為明天能穩(wěn)健地在社會大潮中奔跑打下堅實的基礎(chǔ) 對于此次課程設(shè)計,我感慨頗多,起初在選題時,做出決定是非常困難的,若選擇簡單的題目,很有可能會很早就做完了,那樣豈不是浪費了許多寶貴的時間;若選擇比較難的題目,感覺自己的能力可能不夠,不能完成課程設(shè)計,最后,在我們組的商量之下選了書店圖書管理系統(tǒng)這個課
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 歷史●重慶卷丨2021年重慶市普通高中學(xué)業(yè)水平選擇性考試歷史試卷及答案
- 投標(biāo)比選邀請書
- 開標(biāo)會簽到表
- 共面雙裂隙砂巖力學(xué)性質(zhì)及破壞特征的規(guī)律研究
- Brand KPIs for neobanking Groww in India-英文培訓(xùn)課件2025.4
- 汽車傳感器與檢測技術(shù)電子教案:車速傳感器
- 單極世界的變數(shù)
- 惠州奧視通電子有限公司 廠房A、廠房B、宿舍工程施工組織設(shè)計
- 圖書倉儲公司管理制度
- 單位運行維護(hù)管理制度
- 汽車電工電子基礎(chǔ)教案
- 油氣田集輸管道工程檢驗批表格十張表格
- 2023-2024學(xué)年四川省樂山市小學(xué)數(shù)學(xué)四年級下冊期末高分題
- GB/T 6188-2017螺栓和螺釘用內(nèi)六角花形
- GA/T 461-2019居民身份證制證用數(shù)字相片技術(shù)要求
- 材料的光學(xué)性質(zhì) 1213課件
- 有害物質(zhì)分拆作業(yè)指引
- 婦幼保健院重點學(xué)科帶頭人選拔與考核激勵機制
- 城市建筑垃圾分類及處理培訓(xùn)PPT課件
- 耗差分析在火電廠指標(biāo)管控中的運用
- 一年級看圖寫話范文
評論
0/150
提交評論