學生宿舍管理系統課程設計說明書

2022-05-17 01:49:12 字數 4237 閱讀 1995

目錄前言 1

正文 1

1 課程設計分析 1

1.1 課程設計的教學目的和任務 1

1.2 課程設計的主要內容 2

2問題描述及基本要求 2

3 可行性分析 3

3.1 技術可行性分析 3

3.2 可用性分析 3

4 系統功能介紹 3

4.1 管理員擁有的功能 3

4.2 學生擁有的功能 3

5 演算法思想 4

6 模組劃分 4

6.1 單鏈表的實現 4

6.2 單鏈表的遍歷操作 5

6.3 單鏈表的查詢操作 5

6.4 單鏈表的插入操作 5

7 演算法的時間複雜度分析 6

8 系統流程圖 6

9 演算法測試 6

10 小結 7

參考文獻 8

在當今這個教育發展迅速的社會上,越來越多新的學校建立起來了。由於學校的地點問題,導致很多的學生不得不住在學校,而學校要想容納那麼多的學生住在學校,就必須建築宿舍,隨著住宿的學生數量增多,學生住宿的問題就出現了,怎樣快速安排學生的宿舍房間與床位,記錄學生的宿舍號還有對應的床位號,這些對於人工來說是特別麻煩的,所以如果有乙個能管理學生宿舍的系統就很好了,這個系統有利於學校管理學生的住宿問題,也有利於宿舍的管理。

這個宿舍管理系統應用的地方有很多,還要有宿舍的單位都可以引進這個系統,宿舍管理系統對於宿舍管理員管理住宿人員的住宿問題很方便,所以這個系統的開發很有必要。

本次設計的「宿舍管理系統」的設計方法是採用c++語言來編寫此系統,此系統的主要內容有檢視宿舍住宿情況、新增住宿人員、刪除住宿人員、修改住宿人員資訊等功能,這些功能基本包括了宿舍管理系統所需要的功能。經過上網蒐集資料、自己動手整理以後此次課程設計終於設計成功。

(1)使學生進一步理解和掌握所學的各種基本抽象資料型別的邏輯結構、儲存結構和操作實現演算法,以及它們在程式中的使用方法。

(2)使學生初步掌握軟體開發過程的問題定義、分析、設計、編碼、測試、除錯等基本方法和基本技能。

(3)使學生掌握查詢計算機資料以及有關參考資料,並提高學生程式設計的基本能力。

(4)使學生能用系統的觀點和軟體開發一般規範進行軟體開發,培養軟體工作者所應具備的科學的工作方法和作風。

(1) 問題分析和任務定義

根據課程設計的要求,充分的分析和理解所要設計題目的問題,明確問題的要求是什麼?限制條件是什麼?

(2) 邏輯設計

對設計題目的問題描述中涉及的物件定義對應的資料型別,並按照以資料結構為中心的原則劃分模組,定義主程式模組和各抽象資料型別。邏輯設計的結果應寫出每個抽象資料型別的定義,各個主要模組的演算法,並畫出模組之間的呼叫關係圖。

(3) 物理設計

定義問題相應的儲存結構並寫出該設計各函式的偽**演算法。在這個過程中,要綜合考慮系統功能,使得系統結構清晰、合理、簡單和易於除錯,抽象資料型別的實現盡可能做到資料封裝,基本操作的規格說明盡可能明確具體。詳細設計的結果是對資料結構和基本操作作出進一步的求精,寫出資料儲存結構的型別定義,寫出函式形式的演算法框架。

(4)程式編碼

把詳細設計的結果進一步求精為程式語言程式。同時加入一些註解和斷言,使語言程式中邏輯概念清楚。

(5) 程式除錯與測試

採用自底向上,分模組進行,即先除錯低層函式。能夠熟練掌握除錯工具的各種功能,設計測試資料確定疑點,通過修改程式來證實它或繞過它。除錯正確後,認真整理源程式及其注釋,形成格式和風格良好的源程式清單和結果。

(6) 結果分析

分析程式執行結果包括正確的輸入及其輸出結果和含有錯誤的輸入及其輸出結果。並且分析演算法的時間、空間複雜性。

由於現在學校學生宿舍管理的工作通常為手工操作,使得工作人員在管理宿舍中耗費時間長,工作效率也很低。因此,為了提高學校學生宿舍管理的效率,減輕學校有關工作人員的工作負擔,決定進行本次課程設計,開發學生宿舍管理系統。本次課程設計的主要目的是為學校學生管理提供快捷方法,為教育人員或工作者節省大量需要手工登記的操作,對學生公寓情況進行及時跟蹤管理,提高管理學生宿舍的效率,推動使學生宿舍管理自動化。

基本要求是以單鏈表的儲存方式儲存學生的學號,姓名、班級、宿舍號等資訊,並且可以用單鏈表的插入、查詢、刪除等操作來實現系統新增新的學生資訊,或者刪除不住宿的學生資訊,也可按照學生的某一項資訊進而查詢這個學生的所有資訊。也可以利用單鏈表的遍歷操作來實現檢視系統中儲存的所有學生的資訊。因為所學知識的限制,所以此系統設計的功能少,這是我們的缺點,這個缺點有待改進。

技術可行性的分析是要考慮到將來可能用到的硬體以及軟體方面的需求是否滿足使用者的需要,由於現在科技發展迅速,計算機網路技術和資料庫技術已發展成熟,並且系統的很多開發技術都已經漸漸走向成熟,加上現在社會上這種類似的系統成功開發案例也有很多,所以,事實證明,此系統的開發是可行的。

「學生宿舍管理系統」對於學校管理學生宿舍是很方便的,可以提高宿舍管理效率,還有這個系統對於學校其他方面的工作不會有影響,而且現在學校的老師們的綜合素質都比較高,所以對於宿舍管理系統的使用不會有任何的阻攔,再加上如果此系統如果真能開發出來,能達到預期的效果,我相信學校的領導也會大力支援此系統在學校範圍內使用,所以綜上所述,宿舍管理系統的是可用的。

可行性分析結論:此系統的成功開發將進一步促進學校管理的現代化與自動化,也為學校能全面自動化管理積累了經驗,更通過一系列的分析,從長遠的立場上看,此系統的開發還是很有必要的。

管理員可以在此系統新增或刪除學生資訊,按姓名、學號、班級、宿舍號查詢學生資訊。

學生只能在此系統中按姓名、學號、班級、宿舍號查詢學生的資訊。

本次課程設計的題目是「學生宿舍管理系統」,此系統的演算法思想是是利用了單鏈表儲存的思想。其中在單鏈表中儲存了學生的多種基本資訊以及利用單鏈表的查詢操作可以使系統按照姓名、學號、班級、宿舍號查詢學生資訊的函式,還有利用單鏈表的遍歷操作使系統輸出學生資訊,利用單鏈表的刪除操作來刪除系統中的學生資訊。這些系統的功能都是在單鏈表的基礎上實現的。

單鏈表是用一組任意的儲存單元存放線性表的元素,這組儲存單元可以連續也可以不連續,甚至可以零散分布在記憶體中的任意位置。為了能正確表示個元素之間的邏輯關係,每個儲存單元在儲存資料元素時,還必須儲存其後級元素所在的位址資訊,這個位址資訊成為指標,這兩部分組成了資料元素的儲存映像,稱為結點。結點的結構如下圖所示:

圖 1 單鏈表的結點結構

其中,data是資料域,用來存放資料元素;next是指標域,用來存放該節點的後繼結點的位址。

單鏈表的基本思想就是用指標表示結點之間的邏輯關係,在單鏈表中,設乙個結點為p,則結點p由兩個域組成:存放資料元素的部分和存放後繼結點位址的指標部分,分別用p->data和p->next來標識,且它們各有各自的值:p->data的值是乙個資料元素,p->next的值是乙個指標。

單鏈表是由頭指標唯一制定,整個單鏈表的操作必須從頭指標開始進行。在本次課程設計的系統中,p->data的值是學生的學號、姓名、班級和宿舍號,p->next的值是下一位同學的基本資訊。

圖 2 指標與結點之間的關係

所謂遍歷單鏈表是指按序號依次訪問單鏈表中的所有結點且僅訪問一次。在此系統中,用單鏈表的遍歷操作來實現系統輸出全部學生的資訊。這裡可以設定乙個工作指標p先指向頭結點,然後依次指向其他學生結點,直到指標指向空為止,當指標p指向某學生結點時輸出該學生結點的資料域。

圖 3 遍歷單鏈表的操作示意圖

單鏈表的查詢操作可以分為兩種方法:乙個是按位查詢,另乙個是按值查詢。本次課程設計中運用的是單鏈表的按值查詢。

按位查詢:在儲存學生資訊的單鏈表中,即使知道被訪問結點的位置i,也不能像順序表那樣直接按序號訪問,只能從頭指標出發順next域逐個結點往下搜尋。當工作指標p指向某結點時判斷是否為第i個結點,若是,則查詢成功;否則,將工作指標p後移。

對每個結點依次執行上述操作,直到p為null時查詢失敗。查詢演算法的基本語句是工作指標p後移,該語句執行的次數與被查結點在表中的位置有關。在查詢成功的情況下,若查詢位置為i(1<=i<=n),則需要執行i-1次,等概率情況下,平均效能為o(n)。

按值查詢:在單鏈表中實現按值查詢操作,需要對單鏈表中的元素依次進行比較,如果查詢成功,返回元素的序號,如果查詢不成功,返回0表示查詢失敗。按值查詢的基本語句是將結點p的資料域與待查值進行比較,具體的比較次數與待查值結點在單鏈表中的位置有關。

在等概率情況下,平均時間效能為o(n)。

其偽**如下:

執行選項2: //按學號查詢

cout<<"請輸入學生的學號:";

輸入學生的學號;

輸入錯誤:

cout << "你輸入的學號不正確,請輸入乙個不超過八位數的學號" << endl;

cout << "學號:";

繼續輸入

輸入正確:

輸入該學生全部資訊

學生宿舍管理系統概要設計說明書

概要設計說明書 學生宿舍管理系統 目錄一 引言 1 二 總體設計 2 2.1系統結構 2 2.2處理流程 3 2.2.1 系統管理模組 3 2.2.2 公寓管理模組 3 2.2.3 資訊查詢模組 3 2.2.4 出入登記模組 4 2.2.5 資訊修改模組 4 2.2.6 關於模組 4 2.3 功能分...

學生宿舍管理系統詳細設計說明

詳細設計說明書 目錄一 引言 1 1.1編寫目的 1 1.2背景 1 1.3定義 1 二 系統效能 2 三 程式系統的結構 2 四 程式設計說明 3 4.1.登入模組 3 4.1.1功能簡介 3 4.1.2功能 3 4.1.3輸人項 4 4.1.4輸出項 4 4.1.5演算法 4 4.1.6邏輯流程...

學生宿舍管理系統課程設計報告

課程設計報告 課程設計名稱資訊系統課程設計 專業資訊管理與資訊系統 班級學號 姓名指導教師 成績年月日資訊系統課程設計 某高校學生宿舍管理系統 目錄一 設計任務與要求 1 1.1 總體目標與任務要求 1 1.2 題目選擇與目的意義 1 1.3 所選題目的主要工作 1 二 需求分析 1 2.1 使用者...