出版物管理系統(tǒng)設(shè)計說明書_第1頁
出版物管理系統(tǒng)設(shè)計說明書_第2頁
出版物管理系統(tǒng)設(shè)計說明書_第3頁
出版物管理系統(tǒng)設(shè)計說明書_第4頁
出版物管理系統(tǒng)設(shè)計說明書_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

實(shí)踐教學(xué)****大學(xué)MMMMMM09MMM學(xué)院**年秋季學(xué)期面向?qū)ο笳n程設(shè)計題目:出版物管理系統(tǒng)專業(yè)班級:計算機(jī)***姓名:**學(xué)號:***指導(dǎo)教師:成績:一直以來人們使用傳統(tǒng)人工的方式管理出版物,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護(hù)都帶來了不少的困難隨著科學(xué)技術(shù)的不斷提高,計算機(jī)科學(xué)日漸成熟,作為計算機(jī)應(yīng)用的一部分,使用計算機(jī)中的C++這一編程語言對出版物信息進(jìn)行管理,有著手工管理所無法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高人事勞資管理的效率,降低企業(yè)的費(fèi)用支出,這些可以充分突出企業(yè)的科學(xué)化、正規(guī)化管理,同時也是世界接軌的重要條件利用面向?qū)ο蟮姆椒ê虲++的編程思想來完成系統(tǒng)的設(shè)計程序設(shè)計方法,構(gòu)建類并創(chuàng)建聯(lián)系人對象,通過構(gòu)造函數(shù),析構(gòu)函數(shù)和創(chuàng)建新的功能函數(shù)以及文件操作實(shí)現(xiàn)書刊信息的、查詢、刪除功能。目錄TOC\o"1-5"\h\z摘要 4\o"CurrentDocument"第一章系統(tǒng)總體設(shè)計 5\o"CurrentDocument"系統(tǒng)功能模塊圖 5\o"CurrentDocument"各類間關(guān)系 6\o"CurrentDocument"第二章詳細(xì)設(shè)計 7\o"CurrentDocument"第三章系統(tǒng)測試 11\o"CurrentDocument"測試方法 11\o"CurrentDocument"測試用例 11\o"CurrentDocument"測試結(jié)果 12\o"CurrentDocument"第四章軟件使用說明書 14總結(jié) 17\o"CurrentDocument"參考文獻(xiàn) 18\o"CurrentDocument"致謝 19\o"CurrentDocument"附錄:源代碼: 21摘要出版物管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),本次課程設(shè)計要求利用面向?qū)ο蟮姆椒ㄒ约癈++的編程思想來完成系統(tǒng)的設(shè)計;并在設(shè)計的過程中,建立清晰的類層次,在系統(tǒng)設(shè)計中要分析和定義各個類,每個類中要有各自的屬性和方法;利用C++的基礎(chǔ)知識,用面向?qū)ο蟪绦蛟O(shè)計的基本思路和方法構(gòu)建的出版物管理系統(tǒng),以菜單方式工作,使用數(shù)組保存出版物的信息,使用循環(huán)來完成,以接受用戶的循環(huán)操作,只要新增了出版物的相關(guān)信息,就可以進(jìn)行查找、刪除等功能。關(guān)鍵詞:C++,面向?qū)ο?,?shù)組,出版物第一章系統(tǒng)總體設(shè)計利用面向?qū)ο蟮姆椒ㄒ约癈++的編程思想來完成系統(tǒng)的設(shè)計,要求建立清晰的類層次,應(yīng)當(dāng)設(shè)計“書,CD,磁帶”三個類,每個類含有名字,作者或演唱者,出版社或唱片社,價格,出版日期等相關(guān)信息。由于這三個類又相關(guān)的相同內(nèi)容,故可設(shè)計一個含有公共信息的父類。以菜單方式工作,交互界面友好;設(shè)定數(shù)組,使用數(shù)組保存出版物的信息;建立循環(huán)機(jī)制,使用循環(huán)來完成,以接受用戶的循環(huán)操作;同時對于不合要求的輸入,給出提示,允許再重新輸入;設(shè)定三個實(shí)體結(jié)構(gòu),允許用戶對選擇的相應(yīng)的出版物進(jìn)行瀏覽、添加、刪除,查找等功能。系統(tǒng)功能模塊圖實(shí)體:實(shí)體:快速查詢:顯示所有信息刪除:刪除錯誤的信息;添加:能書籍,CD和磁帶的儲存信息;瀏覽:能瀏覽查詢所有書刊信息;各類間關(guān)系該系統(tǒng)要求實(shí)現(xiàn)對書籍,CD和磁帶的儲存,查詢和刪除等功能故要求定義三個類。類層次:首先定義一個共有基類basic,包括名字name,作者或演唱者author,出版社或唱片社company,出版日期data,價格prise,以它為父類定義三個子類分別為bookdate,CDdate,tapedate。圖1-2類模塊圖第二章詳細(xì)設(shè)計本系統(tǒng)主要功能包括:快速查詢:顯示所有信息;刪除:刪除錯誤的信息;添加:能書籍,CD和磁帶的儲存信息;classbasic{ //定義父類public:charname[20];charauthor[10];charcompany[20];intprice;intdate;voidinput();voidshow();}};classbookdate:publicbasic{ //定義一個書類public:bookdate(){strcpy(name,"\0");strcpy(author,"\0");strcpy(company,"\0");price=0;date=0;}voidinput(){basic::input();}voidshow(){basic::show();}};classCDdate:publicbasic{ //定義一個CD類public:voidinput(){basic::input();}};classtapedate:publicbasic{ //定義一個磁帶類public:voidinput(){basic::input();}};2.部分成員函數(shù)的實(shí)現(xiàn):voidinput() //錄入函數(shù){coutvv"請輸入名字:"vvendl;cin>>name;coutvv"請輸入作者或演唱者:"vvendl;cin>>author;coutvv"請輸入出版社或唱片:"vvendl;cin>>company;coutvv"請輸入價格:"vvendl;cin>>price;coutvv"請輸入出版日期:"vvendl;cin>>date;}voidshow() //定義顯示信息函數(shù){coutvv"名字"vv"作者或演唱者"vv"出版社或唱片"vv"價格"'<<"出版日期"vvendl;coutvvnamevvauthorvvvcompanyvvpricevvdatevvendl;}price[i]>'price[i]>'9'IIprice[i]<'O'格式錯誤i==len-1&&(price[i]<=9IIprice[i]>=0'格式錯誤,圖2-1添加功能圖查詢:if(n==0很遺憾,沒有找到您所要查詢的信息if(n==0很遺憾,沒有找到您所要查詢的信息)M *p=mwhile(p!=NULL)cout<<"書名,作者,出版社,價格,出版日期"(f=l),CD名”演唱者,唱片社,價格,出版日期(f=2),磁帶名,,演唱者,唱片社,價格,出版日期(f=3)圖2-2查詢功能圖刪除:M*del(M*m,intf)圖2-3刪除功能圖第三章系統(tǒng)測試1.測試方法本階段完成的任務(wù)是對系統(tǒng)框架的編碼有效性進(jìn)行檢驗(yàn)校對,對在程序運(yùn)行的過程中出現(xiàn)的問題及相關(guān)功能運(yùn)行中顯現(xiàn)缺陷,及時對代碼進(jìn)行修改和完善,使程序達(dá)到課程設(shè)計的基本要求。2.測試用例本系統(tǒng)測試所用數(shù)據(jù)為:名字作者或演唱者出版社或唱片價格出版日期1.黑暗小明光明1219992.光明小文新華2120113.天下曹文現(xiàn)代222009

測試結(jié)果該程序可以實(shí)現(xiàn)對出版物信息的添加、瀏覽、刪除、查找等功能1.信息瀏覽界面W."C:\Users\Administrat0r\Documents\C4-4-作業(yè)'我的課設(shè)\DW."C:\Users\Administrat0r\Documents\C4-4-作業(yè)'我的課設(shè)\D呂bug\出皈物管理粟???斗***曰***曰:書藉信,貝瀏疔**********flflfl1A輸字暗字明字下請名黑名光名天層-上回返出版社或唱片光日月出版社或唱片新華出版社或唱片現(xiàn)代價格12

價格21

價格22出版日期1999出版日期2011出版日期2009半:圖3-12.信息查找顯示界面圖3-2信息添加顯示頁面■"E:\360d日 要數(shù)膚扁面\¥Y\Debug\16516.exe"圖3-2信息添加顯示頁面■"E:\360d日 要數(shù)膚扁面\¥Y\Debug\16516.exe"請輸入書籍信息;片唱字名A■■■■,輸Bt輸明輸明輸輸99請里理杲気請0.2請;;圖3-3信息刪除顯示頁面圖3-4第四章軟件使用說明書1、系統(tǒng)運(yùn)行環(huán)境VC++6.02、系統(tǒng)操作提示該程序可以實(shí)現(xiàn)對出版物信息的添加、瀏覽、刪除、查找等功能運(yùn)行程序的初始界面如圖4-1所示:1.系統(tǒng)主菜單顯示界面圖4-1按回車鍵進(jìn)入如4-2圖所示的菜單界面2.信息操作顯示界面

圖4-2該程序在使用時,須按照要求的字符串輸入,否則會產(chǎn)生錯誤,運(yùn)行時規(guī)范操作。輸入5即可退出該系統(tǒng)??偨Y(jié)通過此次VC++編程課程設(shè)計,我了解了VisualC++6的安裝和基本使用方法,進(jìn)一步掌握了運(yùn)用C++及面向?qū)ο笤O(shè)計思想方法。出版物管理系統(tǒng)的設(shè)計基本實(shí)現(xiàn)了老師所要求的功能,同時在設(shè)計過程中,對于遇到的各種實(shí)踐問題進(jìn)行了詳細(xì)的分析,學(xué)到了很多知識,但還有許多便捷功能未能實(shí)現(xiàn),因此還需要更多的設(shè)計來完善。界面風(fēng)格只是使用默認(rèn)的,沒有創(chuàng)新,這個需要在以后的設(shè)計中加以改進(jìn)。相比之前C語言和數(shù)據(jù)結(jié)構(gòu)的課程設(shè)計,此次課程設(shè)計讓自己在編程上的理解更深一層,逐步了解編程在實(shí)際中的運(yùn)用,掌握了更多編程方法和思想,拓寬了知識面,為進(jìn)一步的學(xué)習(xí)繼續(xù)打牢根基。參考文獻(xiàn)陳維興,林小茶.C++面向?qū)ο蟪绦蛟O(shè)計教程?北京:清華大學(xué)出版社,1996.2004.張國峰.C++程序設(shè)計實(shí)用教程.北京:清華大學(xué)出版社,1996.[3]張松梅.C++語言教程.電子科技大學(xué)出版社,1993.閻龍.C程序員的C++指南.北京航空航天大學(xué)出版社,1992.王博.面向?qū)ο蟮慕?、設(shè)計技術(shù)與方法.北京希望電腦公司致謝首先感謝我的指導(dǎo)老師在我的課程設(shè)計過程中提出了指導(dǎo)性的方案和架構(gòu),并指引我閱讀相關(guān)的資料和書籍,使我在面對從書本到實(shí)際應(yīng)用的鴻溝之時有了一座堅固的橋。我的同學(xué)在設(shè)計過程及完成后的測試中起到了相當(dāng)重要的作用,沒有他們,我就不能發(fā)現(xiàn)后期測試過程出現(xiàn)的錯誤和漏洞,在此一并表示感謝。感謝老師對我課程設(shè)計的指導(dǎo)!附錄:源代碼:#include<iostream.h>#include<string.h>#include<stdio.h>#include"stdlib.h"classbasic{ //定義父類public:charname[20];charauthor[10];charcompany[20];intprice;intdate;voidinput() //錄入函數(shù){cout<<"請輸入名字:"<<endl;cin>>name;cout<<"請輸入作者或演唱者:"<<endl;cin>>author;cout<<"請輸入出版社或唱片:"<<endl;cin>>company;cout<<"請輸入價格:"<<endl;cin>>price;cout<<"請輸入出版日期:"<<endl;cin>>date;}voidshow()cout<<'\t'<<"名字"<<'\t'<<"作者或演唱者"<<'\t'<<"出版社或唱片"<<'\t'<<"價格"<<'\t'<<"出版日期

"<<endl;cout<<'\t'<<name<<'\t'<<'\t'<<author<<'\t'<<'\t'<<company<<'\t'<<''<<price<<'\t'<<date<<endl;"<<endl;}};classbookdate:publicbasic{public:bookdate(){strcpy(name,"\0");strcpy(author,"\0");strcpy(company,"\0");price=NULL;date=NULL;}voidinput(){basic::input();}voidshow(){basic::show();}};classCDdate:publicbasic{public:CDdate(){strcpy(name,"\0");strcpy(author,"\0");strcpy(company,"\0");price=NULL;date=NULL;//定義一個書類〃定義一個//定義一個書類〃定義一個CD類{basic::input();}};classtapedate:publicbasic{ //定義一個磁帶類public:tapedate(){strcpy(name,"\0");strcpy(author,"\0");strcpy(company,"\0");price=NULL;date=NULL;}voidinput(){basic::input();}};intmain(){bookdatebook[100];CDdateCD[100];tapedatetape[100];intface();intscreem();//定義書籍?dāng)?shù)組//定義CD數(shù)組//定義磁帶數(shù)組if(face()==1) //書籍{intx,i=0,n=0;charname1;intscreem();if(screem()!=1&&screem()!=2&&screem()!=3&&screem()!=4&&screem()!=0)cout<<"您輸入的命令錯誤"<<endl;if(screem()==1){system("cls");cout<<'\t'<<"請輸入書籍信息:"<<endl?endl;do{book[i].input();cout<<"是否再次輸入數(shù)據(jù)【0.否,1.是】:"<<endl;cin>>x;i++;n++;}while(x==1);}EXEC:intscreem();if(screem()==2) //瀏覽信息{into;system("cls");cout<<'\t'<<'\t'<<"***********書籍信息瀏覽**********"<<endl<<endl<<endl;for(intm=0;m<n;m++)book[m].show();cout<<"返回上一層請輸入1"<<endl;cin>>o;gotoEXEC;}else{if(screem()==3)//刪除信息{intq;system("cls");charname1[20];"<<endl;cout<<"請輸入要刪除的書籍名字:"<<endl;cin>>name1;inti,p=1;for(i=0;i<n;i++)if(strcmp(name1,book[i].name)==0){for(intl=i;l<n;l++){strcpy(book[l].name,book[l+1].name);strcpy(book[l].author,book[l+1].author);strcpy(book[l].company,book[l+1].company);book[l].price=book[l+1].price;book[l].date=book[l+1].date;}p=0;}if(p==1)cout<<"查找不到您輸入的書名"<<endl;cout<<"返回上一層請輸入1"<<endl;cin>>q;{intq;system("cls");charname1[20];"<<endl;cout<<"請輸入要查找的書籍名字:"<<endl;cin>>name1;inti,p=1;for(i=0;i<n;i++)if(strcmp(name1,book[i].name)==0){book[i].show();p=0;}if(p==1)cout<<"查找不到您輸入的書名"<<endl;cout<<"返回上一層請輸入l"?endl;cin>>q;gotoEXEC;}}}else{ if(face()==2) //CD{intx,i=0,n=0;intscreem();if(screem()==1){system("cls");cout<<'\t'<<"請輸入CD信息:"<<endl?endl;do{cout<<endl<<endl;CD[i].input();cout<<"是否再次輸入數(shù)據(jù)【0.否,1.是】:"<<endl;cin>>x;i++;n++;}while(x==1);system("cls");}EXEC1: intscreem();if(screem()==2) //CD信息瀏覽{inte;system("cls");cout<<'\t'<<'\t'<<"***********CD信息瀏覽**********"<<endl<<endl<<endl;for(intm=0;m<n;m++)CD[m].show();cout<<"返回上一層請輸入1"<<endl;cin>>e;{if(screem()==3)//CD信息刪除{intq;system("cls");charname1[20];"<<endl;cout<<"請輸入要刪除的CD名字:"<<endl;cin>>name1;inti,p=1;for(i=0;i<n;i++)if(strcmp(name1,CD[i].name)==0){for(intl=i;l<n;l++){strcpy(CD[l].name,CD[l+1].name);strcpy(CD[l].author,CD[l+1].author);strcpy(CD[l].company,CD[l+1].company);CD[l].price=CD[l+1].price;CD[l].date=CD[l+1].date;}p=0;}if(p==1)cout<<"查找不到您輸入的CD名"<<endl;cout<<"返回上一層請輸入l"?endl;cin>>q;{intk;system("cls");charname1[20];"<<endl;cout<<"請輸入要查找的CD名字:"<<endl;cin>>name1;inti,p=1;for(i=0;i<n;i++)if(strcmp(name1,CD[i].name)==0){CD[i].show();p=0;}if(p==1)cout<<"查找不到您輸入的CD名"<<endl;cout<<"返回上一層請輸入l"?endl;cin>>k;gotoEXECl;}}}else //磁帶{intx,i=0,n=0;intscreem();if(screem()==l)cout<<'\t'<<"請輸入磁帶信息:"<<endl?endl;do{cout<<endl<<endl;tape[i].input();cout<<"是否再次輸入數(shù)據(jù)【0.否,1.是】:"<<endl;cin>>x;i++;n++;}while(x==1);system("cls");}EXEC2: intscreem();if(screem()==2){intu;system("cls");cout<<'\t'<<'\t'<<"***********磁帶信息瀏覽**********"<<endl<<endl<<endl;for(intm=0;m<n;m++)tape[m].show();cout<<"返回上一層請輸入1"<<endl;cin>>u;gotoEXEC2;}else{if(screem()==3)//磁帶信息刪除intq;charname1[20];"<<endl;cout<<"請輸入要刪除的磁帶名字:"<<endl;cin>>name1;inti,p=1;for(i=0;i<n;i++)if(strcmp(name1,tape[i].name)==0){for(intl=i;l<n;l++){strcpy(tape[l].name,tape[l+1].name);strcpy(tape[l].author,tape[l+1].author);strcpy(tape[l].company,tape[l+1].company);tape[l].price=tape[l+1].price;tape[l].date=tape[l+1].date;}p=0;}if(p==1)cout<<"查找不到您輸入的磁帶名"<

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論