《物件導向程式設計(c++)》
專案名稱:圖書管理系統設計
學校:學院:
班級:姓名學號:
同組成員者:
完成時間:2023年12月28日
成績:指導教師簽名:
時間:一、 問題分析與功能定義
二十一世紀是資訊的社會,資訊作為社會最主要的資源,將成為戰略資源引起人們廣泛的關注。如何獲取資訊?圖書是我們最好的獲取資訊的方式,但由於圖書館圖書收藏量大大增加,使傳統的圖書管理員的工作日益繁重起來。
迫使人們起用新的管理方法來管理圖書,但如何把圖書管理員從繁重的工作中解脫出來呢?
科學技術日新月異的進步,讓人類生活發生了巨大的變化,計算機技術的飛速發展,使各行各業在計算機技術應用方面得到了廣泛的普及和使用。資訊化時代的到來成為不可抗拒的潮流,人類文明正在進入乙個嶄新的時代。因此,圖書管理系統也以方便、快捷、費用低的優點正慢慢地進入人們的生活,將傳統的圖書管理方式徹底的解脫出來,提高效率,減輕工人人員以往繁忙的工作,減小出錯的概率,使讀者可以花更多的時間在選擇書和看書上。
從而使人們有更多時間來獲取資訊、了解資訊、掌握資訊 。
1、設計內容及要求
設計乙個圖書館管理系統,完成圖書管理和讀者管理的功能,並能對借閱資訊進行管理,要求完成一下功能,圖書資料管理,可以新增、修改、刪除、查詢書籍資訊,讀者資料管理,可以新增、修改、刪除、查詢讀者資訊;借書管理,可以進行新增借書資訊;還書管理,可以進行還書資訊;
該專案是在visual c++ 6.0的平台下用c++語言實現,建立物件,程式執行開始,開啟檔案並將其分別鏈入鍊錶之中;程式結束關閉並儲存檔案。整體系統功能全部由鍊錶實現。
2、模組圖
二、物件(類)設計及實現
1、概要設計
reader讀者類、rdatabase 讀者庫類、book 圖書類、bdatabase 圖書庫類
2、詳細設計
1)類的原型描述
3、核心控制設計
1、在主函式中我們要做的操作包括:
(1)建立1個reader讀者類、1個rdatabase 讀者庫類、1個book 圖書類、1個bdatabase 圖書庫類
(2)建立選單介面。完成以下內容:
①進入功能必須開啟選單,然後使用者根據選單選擇相應的操作方式,如檢視資料、編輯圖書資料以及修改圖書資料、維護圖書的採購資訊。新增、刪除、檢視讀者個人資訊,瀏覽圖書資訊。
② 能夠對圖書基本資訊、圖書採購資訊、圖書的借閱人資訊進行統計,統計的結果能夠以**的形式來表示。
(3) 將圖書基本資訊、圖書採購資訊、圖書的借閱人資訊儲存在相應的檔案中。
(4) 系統介面友好,易操作。
2、本程式應具備的功能:
a.新增、借閱、還書功能:
(1)新增讀者和圖書資訊。
2)借閱尚在架的圖書。
3)讀者歸還的圖書。
b.查詢功能
(1) 根據圖書的編號查詢圖書資訊。
(2)根據讀者的編號查詢讀者的資訊。
c.系統的操作
(1) 系統在進入時,要有選單提示;
(2) 系統在使用者退出時,有一定的提示。
3、演算法分析
1)新增操作:(讀者資訊的新增與圖書資訊的新增類似)
包括兩個部分,先通過輸入裝置輸入資訊,系統獲取;然後新增入讀者資料庫read.txt檔案中。
㈠獲取資訊
void reader::addreader(int n,char *na) //增加讀者
int rdatabase::addreader(int n,char *na) //增添讀者資訊
return 0;
}流程圖:
㈡析構函式寫入新讀者的編號跟姓名
rdatabase::~rdatabase
}流程圖:
2)借書操作:利用for語句和if語句,通過判斷圖書的borbook的編號是否為0,來判斷圖書是否未被借走或還沒有被借完。
void reader::borrowbook(int bookid) //借書操作
流程圖:
3)還書操作:利用for語句和if語句,通過判斷圖書的borbook的編號是否為要還書的編號,來判斷是否借出此書。
int reader::retbook(int bookid還書操作
流程圖:
四、測試分析
(一)、此系統存在問題
1) 未設登入密碼保護系統,是整個圖書管理系統失去了一定的安全性;
2) 程式執行介面
此介面執行時選擇4有時會出現記憶體讀取錯誤;
1)當輸入錯的資料型別時可能導致記憶體錯誤;
2)讀者、圖書資訊不完善;
3)命名不是很規範;
4)資訊儲存有限;
五、心得體會
通過這次課程設計讓我逐步學會了如何運用c++物件導向程式設計的設計思想和方法來解決實際問題。
比如這次設計圖書管理系統,首先我考慮是在實際應用時使用者一般進行什麼操作,對哪些物件進行操作。很顯然我需要建立兩個類,包括圖書類和讀者類,同時考慮到圖書和讀者不止乙個,所以還需兩個類,圖書庫類和讀者庫類,這兩個類分別將其資訊傳遞給圖書類和讀者類。確定了類之後,則需要對類的內容進行擴充。
由於我需要這個系統完成對圖書管理和讀者管理的功能,並能對借閱資訊進行管理,要求完成一下功能,圖書資料管理,可以新增、修改、刪除、查詢書籍資訊,讀者資料管理,可以新增、修改、刪除、查詢讀者資訊;借書管理,可以進行新增借書資訊;還書管理,可以進行還書資訊。所以在對應的類下建立相應功能函式。建立功能函式後就是構造主函式。
主函式的作用就是通過向物件傳送資訊、物件接受資訊啟動相應的方法來實現相應的操作。
物件導向圖書管理系統實驗
一 需求調查分析 本系統主要實現對圖書館的資訊進行管理,圖書館的正常運營中總是面對大量的讀者資訊,圖書資訊以及兩者相互作用產生的借書資訊,因此要對讀者資源,圖書資源,借書資訊進行管理。本系統的開發就是在於提高圖書管理的工作效率,加強圖書館的管理。圖書館管理系統是圖書館管理工作中不可缺少的部分,它的內...
《物件導向分析與設計》圖書管理系統
物件導向方法綜合性實驗報告 2015 2016學年第2學期 題目 圖書館圖書管理系統 班級 13電腦科學與技術軟體班學號姓名 1301110104 陳濤完成時間 年月日 目錄第一章簡介 1 1.1簡介 1 第二章需求分析 2 2.1 功能需求 2 2.1.1功能劃分 2 2.1.2功能描述 2 2....
物件導向程式設計 高校學籍管理系統
課程設計報告 課程名稱物件導向程式設計 課題名稱高校學籍管理系統 一 設計內容與設計要求 1.課程設計目的 物件導向程式設計課程設計是集中實踐性環節之一,是學習完 物件導向程式設計 課程後進行的一次全面的綜合練習。要求學生達到熟練掌握c 語言的基本知識和技能 基本掌握物件導向程式設計的思想和方法 能...