學(xué)生宿舍管理系統(tǒng)設(shè)計(jì)(C語言).doc
《學(xué)生宿舍管理系統(tǒng)設(shè)計(jì)(C語言).doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《學(xué)生宿舍管理系統(tǒng)設(shè)計(jì)(C語言).doc(24頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
______________________________________________________________________________________________________________ 計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)(C語言)課程設(shè)計(jì) 題目:學(xué)生宿舍管理系統(tǒng)設(shè)計(jì) 班 級(jí): 計(jì) 121 學(xué) 號(hào): 120502 120504 120506 120505 姓 名: 賈 文 超 楊 曉 紅 張 永 康 陸 秀 和 指導(dǎo)教師 : 劉 喜 梅 孫 強(qiáng) 范 周 瑜 2013 年 7 月 1 日·北京 信息工程學(xué)院 信息技術(shù)教學(xué)與實(shí)驗(yàn)中心 學(xué)生宿舍管理系統(tǒng)設(shè)計(jì) 功能:實(shí)現(xiàn)簡(jiǎn)單的學(xué)生宿舍基本信息管理,宿舍的基本信息包括樓號(hào)、房間號(hào)、面積、所容納人數(shù)、已入住人數(shù)等。 基本要求: 1.設(shè)計(jì)簡(jiǎn)單的菜單,能夠進(jìn)行系統(tǒng)功能選擇。 2.實(shí)現(xiàn)信息的錄入功能。 3.在已有信息的基礎(chǔ)上添加新的紀(jì)錄。 4.刪除指定房間號(hào)的記錄。 5.修改指定房間號(hào)的記錄。 6.實(shí)現(xiàn)信息的瀏覽功能。 7.按房間號(hào)查詢功能。 8.按已入住人數(shù)排序功能。 1.學(xué)生宿舍管理系統(tǒng)概述………………………………………………………… 4 1.1需求分析 ……………………………………………………………………4 1.2基本功能 ……………………………………………………………………4 2.學(xué)生宿舍管理系統(tǒng)總體設(shè)計(jì)…………………………………………………… 5 1.1管理流程圖 …………………………………………………………………5 1.2管理員操作 …………………………………………………………………5 3.模塊劃分…………………………………………………………………………6 1.1第一選擇模塊 ………………………………………………………………6 1.2第二錄入模塊 ………………………………………………………………7 1.3第三添加模塊 ………………………………………………………………8 1.4第四刪除模塊 ………………………………………………………………8 1.5第五修改模塊 ………………………………………………………………9 1.6第六瀏覽模塊 ………………………………………………………………9 1.7第七查詢模塊 ………………………………………………………………10 1.8第八排序模塊……………………………………………………………… 11 4.算法說明…………………………………………………………………………11 5.各函數(shù)模塊功能…………………………………………………………………11 1.1各自定義函數(shù)功能………………………………………………………… 11 6.程序測(cè)試…………………………………………………………………………12 7.結(jié)論………………………………………………………………………………14 1.1對(duì)調(diào)試中主要問題進(jìn)行總結(jié)………………………………………………14 8.體會(huì)及建議………………………………………………………………………14 1.1對(duì)自己設(shè)計(jì)進(jìn)行評(píng)價(jià),指出合理和不足之處,提出改進(jìn)的方案 ………14 9.學(xué)生宿舍管理系統(tǒng)設(shè)計(jì)參與者…………………………………………………14 1.1 小組成員信息………………………………………………………………14 1.學(xué)生宿舍管理系統(tǒng)概述 1.1需求分析 高校學(xué)生宿舍管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。對(duì)于前端應(yīng)用程序的開發(fā)則要求應(yīng)用程序能提供強(qiáng)大的數(shù)據(jù)操縱功能,界面友好、使用簡(jiǎn)單方便等特點(diǎn)。舊的手工紀(jì)錄的宿舍管理方式已經(jīng)不能適應(yīng)高速發(fā)展的信息化時(shí)代,新的宿舍管理系統(tǒng)開發(fā)出來之后,學(xué)校的現(xiàn)有的宿舍信息管理將有很大的改觀,由過去的人工方式轉(zhuǎn)變?yōu)橛?jì)算機(jī)方式,由效率低、數(shù)據(jù)冗余、易產(chǎn)生錯(cuò)誤轉(zhuǎn)變?yōu)闄z索迅速、查找方便、可靠性高、存儲(chǔ)量大。這些優(yōu)點(diǎn)能夠極大地提高效率,也是學(xué)校科學(xué)化、正規(guī)化管理的重要條件。 學(xué)生宿舍管理系統(tǒng)對(duì)于一個(gè)學(xué)校來說是必不可少的組成部分。對(duì)于學(xué)生信息量比較龐大,需要記錄存檔的數(shù)據(jù)比較多的高校來說,人工記錄是相當(dāng)麻煩的,而且當(dāng)查找某條記錄時(shí),只能靠人工去一條條地查找,這樣不但麻煩而且效率非常低。當(dāng)今社會(huì)是飛速進(jìn)步的世界,計(jì)算機(jī)化管理正是適應(yīng)時(shí)代的產(chǎn)物。21世紀(jì)的今天,信息社會(huì)占著主流地位,計(jì)算機(jī)在各行各業(yè)中的運(yùn)用已經(jīng)得到普及。我們針對(duì)此,設(shè)計(jì)了一套學(xué)生宿舍管理系統(tǒng)。學(xué)生宿舍管理系統(tǒng)采用的是計(jì)算機(jī)化管理,系統(tǒng)做的盡量人性化,使用者會(huì)感到操作非常方便,管理人員需要做的就是將數(shù)據(jù)輸入到系統(tǒng)的數(shù)據(jù)庫中去。由于數(shù)據(jù)庫存儲(chǔ)容量相當(dāng)大,而且比較穩(wěn)定,適合較長(zhǎng)時(shí)間的保存,也不容易丟失。這無疑是為信息存儲(chǔ)量比較大的學(xué)校提供了一個(gè)方便、快捷的操作方式。本系統(tǒng)具有運(yùn)行速度快、安全性高、穩(wěn)定性好的優(yōu)點(diǎn),還具有修改功能,能夠快速的查詢學(xué)校所需的住宿信息。 1.2基本功能 高校學(xué)生宿舍管理系統(tǒng)的開發(fā)主要包括后臺(tái)數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面,但本課題要實(shí)現(xiàn)的是前端應(yīng)用程序的開發(fā)。在設(shè)計(jì)該系統(tǒng)時(shí),會(huì)盡可能地貼近我們學(xué)生,便于管理者操作。系統(tǒng)在實(shí)現(xiàn)上具有如下功能: 1. 設(shè)計(jì)簡(jiǎn)單的菜單,能夠進(jìn)行系統(tǒng)功能選擇。 2. 實(shí)現(xiàn)信息的錄入功能。 3. 在已有信息的基礎(chǔ)上添加新的記錄。 4. 刪除指定房間號(hào)的記錄。 5. 修改指定房間號(hào)的記錄 6. 實(shí)現(xiàn)信息的瀏覽功能 7. 按房間號(hào)查詢功能 8. 按已入住人數(shù)排序功能 2.學(xué)生宿舍管理系統(tǒng)總體設(shè)計(jì) 1.1管理流程圖 對(duì)系統(tǒng)可劃分為三層流程圖: 第一層流程圖: 輸入宿舍信息(房間號(hào)、樓號(hào)、容納人數(shù)、手機(jī)號(hào)等) 學(xué)生宿舍 管理系統(tǒng) 第二層流程圖: 添加 宿舍管理 系統(tǒng)記錄 刪除 選擇操作 修改 第三層流程圖: 房間號(hào)對(duì)應(yīng)的宿舍信息 學(xué)生宿舍 管理系統(tǒng) 選擇查詢信息原則 按已入住 人數(shù)排序 3.模塊劃分 1.1選擇功能模塊圖 輸入 插入 錄入存儲(chǔ) 刪除 修改 主 函數(shù) 數(shù)據(jù)操作 查詢 統(tǒng)計(jì) 輸出信息 排序 顯示 1.2第二錄入模塊 開始 輸入宿舍信息 p->livenumber p->area p->room count2++ count3++ count1++ end 開始 1.3第三添加模塊 插入宿 舍信息 用sort() 函數(shù)排序 輸入宿 舍信息 將其入棧 結(jié)束 開始 1.4第四刪除模塊 輸入刪 除房間號(hào) for循環(huán),掃描存儲(chǔ)學(xué)生信息 p->room:roomm != = 刪除對(duì)應(yīng) 學(xué)生信息 結(jié)束 1.5第五修改模塊 開始 輸入修改 房間號(hào)room for循環(huán),掃描 存儲(chǔ)學(xué)生信息 p->room; room = != 修改對(duì)應(yīng) 學(xué)生信息 結(jié)束 1.6第六瀏覽模塊(與下圖1.7類似) 開始 1.7第七查詢模塊 按宿舍 長(zhǎng)查詢 選擇查 詢方式 按宿舍號(hào)查詢 輸入要查找 宿舍長(zhǎng)姓名 開始循環(huán),掃描 存儲(chǔ)的宿舍信息 輸入查找 的宿舍號(hào) p->dormitoryleader: dormitoryleader p->room: room != != = = 輸出宿舍信息 輸出宿舍信息 結(jié)束 1.8第八排序模塊 開始 開始循環(huán),掃描存儲(chǔ)信息 選出居住人數(shù)最小的宿舍與第一個(gè)宿舍交換 在余下居住人數(shù)中選出最少的與第二個(gè)宿舍交換 以此類推,直至排序完成 結(jié)束 4.算法說明 數(shù)據(jù)類型(整形、實(shí)型、字符型、指針、數(shù)組、結(jié)構(gòu)等);運(yùn)算類型(算術(shù)運(yùn)算、邏輯運(yùn)算、自增自減運(yùn)算、賦值運(yùn)算等);程序結(jié)構(gòu)(順序結(jié)構(gòu)、判斷選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu));大程序的功能分解方法(即函數(shù)的調(diào)用與使用)等,利用數(shù)組對(duì)宿舍的記錄進(jìn)行循環(huán)輸入輸出,利用冒泡法記錄進(jìn)行排序,利用循環(huán)查找數(shù)組中某個(gè)數(shù)據(jù),對(duì)其進(jìn)行顯示,刪除,讀入和寫入文檔等操作。 5.各函數(shù)模塊功能 1.1各自定義函數(shù)功能 1、void insert()(錄入系統(tǒng)所需的數(shù)據(jù);將錄入的數(shù)據(jù)存儲(chǔ)在文件中) 2、void seek()(按要求對(duì)數(shù)據(jù)進(jìn)行查詢) 3、void modify()(對(duì)數(shù)據(jù)進(jìn)行更新操作) 4、void del()(對(duì)數(shù)據(jù)進(jìn)行刪除操作) 5、void save()(對(duì)指定數(shù)據(jù)進(jìn)行統(tǒng)計(jì)并輸出) 6、void sort()(對(duì)指定數(shù)據(jù)排序并輸出) 7、void reveal()(對(duì)指定數(shù)據(jù)產(chǎn)生報(bào)表輸出) 8、void menu()(功能目錄) 6.程序測(cè)試 顯示 請(qǐng)選擇菜單編號(hào) 請(qǐng)輸入待增加的宿舍數(shù) 請(qǐng)輸入第1個(gè)宿舍的房間號(hào) 輸入 4 1 1316 ……………………………………………………………………………………………………… 請(qǐng)輸入第1個(gè)宿舍的宿舍長(zhǎng) 請(qǐng)輸入第1個(gè)宿舍的樓號(hào) 請(qǐng)輸入第1個(gè)宿舍的宿舍面積 賈文超 1 40 ………………………………………………………………………………………… 請(qǐng)輸入第1個(gè)宿舍的房間容納人數(shù) 請(qǐng)輸入第1個(gè)宿舍的宿舍成員 6 賈文超/陸秀和/楊曉紅/張永康/李正明/偉力 ………………………………………………………………………………………… 請(qǐng)輸入第1個(gè)宿舍的手機(jī)號(hào) 請(qǐng)輸入第1個(gè)宿舍的居住人數(shù) ……………………………………………………………………………………………………… 13476731421 6 ……………………………………………………………………………………………………… 錄入完畢! 請(qǐng)選擇菜單編號(hào) 6 ………………………………………………………………………………………… 結(jié)果:所有宿舍信息為: 房間號(hào) 宿舍長(zhǎng) 樓號(hào) 宿舍面積 房間容納人數(shù) ………………………………………………………………………………………… 1316 賈文超 1 40 6 ******************************************************************** 宿舍成員 手機(jī)號(hào) 居住人數(shù) ………………………………………………………………………………………… 賈文超/陸秀和/楊曉紅/張永康/李正明/偉力 13476731421 6 顯示 請(qǐng)選擇菜單編號(hào) 輸入 2 ………………………………………………………………………………………… --------------1.按房間號(hào)查詢-------------- --------------2.按宿舍長(zhǎng)查詢-------------- --------------3.退出本菜單---------------- 請(qǐng)選擇子菜單編號(hào): 1 ………………………………………………………………………………………… 請(qǐng)輸入要查詢的宿舍的房間號(hào): 1316 ………………………………………………………………………………………… 結(jié)果: 房間號(hào) 宿舍長(zhǎng) 樓號(hào) 宿舍面積 房間容納人數(shù) ………………………………………………………………………………………… 1316 賈文超 1 40 6 ******************************************************************** 宿舍成員 手機(jī)號(hào) 居住人數(shù) ………………………………………………………………………………………… 賈文超/陸秀和/楊曉紅/張永康/李正明/偉力 13476731421 6 顯示 請(qǐng)選擇菜單編號(hào) 請(qǐng)輸入要修改的宿舍的房間號(hào) 輸入 3 1316 ……………………………………………………………………………………………………… ------------------------------ 請(qǐng)輸入新的宿舍面積 1.修改宿舍長(zhǎng) 2.修改樓號(hào) 3.修改宿舍面積 4.修改房間容納人數(shù) 5.修改宿舍成員 6.修改手機(jī)號(hào)號(hào)碼 7.修改居住人數(shù) 8.退出本菜單 ------------------------------- 請(qǐng)選擇子菜單編號(hào): 3 50 ………………………………………………………………………………………… 請(qǐng)選擇子菜單編號(hào): 請(qǐng)選擇菜單編號(hào) 8 6 ………………………………………………………………………………………… 結(jié)果: 房間號(hào) 宿舍長(zhǎng) 樓號(hào) 宿舍面積 房間容納人數(shù) ………………………………………………………………………………………… 1316 賈文超 1 50 6 ******************************************************************** 宿舍成員 手機(jī)號(hào) 居住人數(shù) ………………………………………………………………………………………… 賈文超/陸秀和/楊曉紅/張永康/李正明/偉力 13476731421 6 7.總結(jié) 1.1對(duì)調(diào)試中主要問題進(jìn)行總結(jié) 調(diào)試過程中,經(jīng)常會(huì)出現(xiàn)輸入或顯示為亂碼的情況,這往往是上下定義的數(shù)據(jù)類型不同或定義數(shù)組長(zhǎng)度不夠所造成的。有時(shí)候程序中還會(huì)出現(xiàn)錄入五個(gè)數(shù)據(jù)而只顯示四個(gè)的情況,這也往往是由于定義的結(jié)構(gòu)體數(shù)組長(zhǎng)度過低所造成的。像這類問題只要把數(shù)據(jù)類型都定義成字符型,并且定義一個(gè)合理的數(shù)組長(zhǎng)度往往都能解決。在調(diào)試過程中我遇到最大的問題出現(xiàn)在刪除模塊。在運(yùn)用“dormitory.txt”打開文件并對(duì)某一數(shù)據(jù)進(jìn)行刪除后,往往顯示會(huì)多顯示一行數(shù)據(jù)。這是由于“dormitory.txt”寫數(shù)據(jù)時(shí)只會(huì)覆蓋數(shù)據(jù)而不會(huì)清除原文件數(shù)據(jù),因此文件最后一行數(shù)據(jù)總會(huì)保留在原文件中。后來我先用“dormitory.txt”打開文件并讀取文件中的數(shù)據(jù),然后再用“r”打開原文件將刪除后的數(shù)據(jù)重新寫入文件,最終檢測(cè)運(yùn)行成功。 8.體會(huì)及建議 1.1對(duì)自己設(shè)計(jì)進(jìn)行評(píng)價(jià),指出合理和不足之處,提出改進(jìn)的方案 本程序擁有很多的優(yōu)點(diǎn):第一,它具有作為一個(gè)宿舍管理系統(tǒng)的各個(gè)功能,包括錄入信息、添加信息、修改信息、刪除信息、查詢信息、統(tǒng)計(jì)信息六大主要功能??梢苑奖愕倪M(jìn)行住宿學(xué)生信息的管理。第二,它的各個(gè)功能模塊在實(shí)現(xiàn)時(shí)非常方便,例如:錄入和添加學(xué)生信息可以自己控制錄入和添加的人數(shù);統(tǒng)計(jì)學(xué)生信息可以分學(xué)號(hào)、班級(jí)、專業(yè)等進(jìn)行統(tǒng)計(jì)等等。。 “萬事開頭難”這句話在我編寫程序的過程中得到了真正的體現(xiàn)。在最初編寫的幾天里出現(xiàn)了這樣那樣的錯(cuò)誤一大堆,這主要是由于我對(duì)基礎(chǔ)知識(shí)掌握不扎實(shí)所造成的。但是隨后幾天里,我對(duì)課本知識(shí)進(jìn)行了回顧并不時(shí)的向老師和同學(xué)進(jìn)行請(qǐng)教,慢慢的對(duì)編寫程序也開始得心應(yīng)手起來。程序的編寫總歸是一件費(fèi)時(shí)費(fèi)力的事情,但只要我們認(rèn)真編寫和調(diào)試最后總能成功。 短短的兩周實(shí)習(xí)時(shí)間我收獲頗多,我相信經(jīng)過這次實(shí)習(xí)必將為我以后的深入學(xué)習(xí)打下扎實(shí)的基礎(chǔ)。 9.學(xué)生宿舍管理系統(tǒng)設(shè)計(jì)參與者 1.1小組成員信息 姓名 院系 班級(jí) 學(xué)號(hào) 賈文超 信息工程學(xué)院 機(jī)121 120502 陸秀和 信息工程學(xué)院 機(jī)121 120506 楊曉紅 信息工程學(xué)院 機(jī)121 120504 張永康 信息工程學(xué)院 機(jī)121 120505 參考文獻(xiàn):1.《軟件工程導(dǎo)論》 第四版 清華大學(xué)出版 2.《C#開發(fā)實(shí)戰(zhàn)寶典》 王小科 編著 清華大學(xué)出版社 3.《C#開發(fā)大全》 劉麗霞 編著 清華大學(xué)出版 4.百度知道 5.C#與.net開發(fā)網(wǎng) http://developer.51cto.com/net/ 附錄:源程序清單 #include- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
32 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 學(xué)生宿舍 管理 系統(tǒng) 設(shè)計(jì) 語言
鏈接地址:http://m.appdesigncorp.com/p-1587947.html