




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、惠州學(xué)院HUIZHOU UNIVERSITYC+面向?qū)ο蟪绦蛟O(shè)計(jì)課程報(bào)告 中文題目: 教師信息管理系統(tǒng) 英文題目: Teachers information management system 姓 名:_學(xué) 號(hào):_ 專業(yè)班級(jí):09級(jí)電子信息工程_ 指導(dǎo)教師:_ 提交日期:_2012年5月6日_第一章 課程設(shè)計(jì)內(nèi)容1.1 課程設(shè)計(jì)目的1.2 課程設(shè)計(jì)功能說明1.2.0 功能總概述1.2.1 各項(xiàng)功能說明1.3 各項(xiàng)功能的需求標(biāo)準(zhǔn)第二章 課程設(shè)計(jì)環(huán)境與原理2.1 設(shè)計(jì)環(huán)境與模塊的劃分2.1.1軟件設(shè)計(jì)環(huán)境2.1.2軟件模塊的劃分2.2.3主要流程圖第三章 軟件的設(shè)計(jì)過程3.1 各軟件模塊之間的調(diào)用
2、方式3.2 軟件中實(shí)現(xiàn)各項(xiàng)功能的函數(shù)與程序代碼第四章 設(shè)計(jì)結(jié)果與分析4.1 軟件使用結(jié)果總結(jié)第一章 課程設(shè)計(jì)內(nèi)容1.1 課程設(shè)計(jì)目的 經(jīng)過了對(duì)課本C+面對(duì)對(duì)象程序設(shè)計(jì)這本書中的學(xué)生管理系統(tǒng)綜合應(yīng)用實(shí)例的學(xué)習(xí),為了讓自己能夠?qū)+語言設(shè)計(jì)有更加深入、深刻的理解和掌握,希望通過實(shí)踐設(shè)計(jì)出類似于學(xué)生管理系統(tǒng)的教師管理系統(tǒng)來提升自己對(duì)C+語言的認(rèn)識(shí)。首先定義一個(gè)教師TeacherList類;其次可以對(duì)教師信息進(jìn)行增加,用鏈表來做,所以可以分別從表頭和表尾來增加;然后可以用鏈表來查找和刪除教師的相關(guān)信息;最后可以顯示教師的所有信息并要求用二進(jìn)制文件進(jìn)行讀寫操作。由此來系統(tǒng)化的管理教師的信息,并達(dá)到簡(jiǎn)易操
3、作的目的。在課程設(shè)計(jì)同時(shí),我們應(yīng)學(xué)會(huì)以下幾點(diǎn):1、通過C+語言的課程設(shè)計(jì)進(jìn)一步的了解和掌握C+語言的有關(guān)知識(shí)和相關(guān)語法的使用方法。2、熟練掌握使用C+語言對(duì)一些簡(jiǎn)單常見問題進(jìn)行解決,編譯程序?qū)栴}進(jìn)行解決。3、通過課程設(shè)計(jì),進(jìn)一步掌握C+語言中有關(guān)重要的數(shù)據(jù)結(jié)構(gòu),諸如類、鏈表、結(jié)構(gòu)體、重載、傳輸流、構(gòu)造析構(gòu)函數(shù)、虛函數(shù)、友元類、文件處理等在程序開發(fā)中的應(yīng)用。4、通過課程設(shè)計(jì),能根據(jù)實(shí)際問題的具體情況,結(jié)合面向?qū)ο蟮幕纠碚摵突炯记?,正確分析問題,并能設(shè)計(jì)出解決問題的有效算法與程序。提高程序開發(fā)能力,能運(yùn)用合理的控制流編寫清晰高效的程序。5、通過課程設(shè)計(jì),培養(yǎng)C+語言知識(shí)運(yùn)用和自學(xué)能力,驗(yàn)證自
4、己設(shè)計(jì)的算法和程序的正確性。學(xué)會(huì)有效利用基本調(diào)試方法,迅速找出程序代碼中的錯(cuò)誤并且修改,進(jìn)一步提高程序設(shè)計(jì)水平。獨(dú)立或合作設(shè)計(jì)和開發(fā)一個(gè)中小型系統(tǒng),掌握系統(tǒng)研發(fā)全過程。6、通過此次課程設(shè)計(jì)發(fā)現(xiàn)自己在C+語言編程上的不足并進(jìn)一步掌握C+語言,為以后課程打下基礎(chǔ)。1.2 課程設(shè)計(jì)功能說明 1.2.0 功能總概述 運(yùn)行系統(tǒng)時(shí)使用switch關(guān)鍵字控制主菜單的選擇如下圖所示當(dāng)某一個(gè)被選擇上時(shí),就會(huì)按照文字上所闡述的內(nèi)容進(jìn)行相關(guān)的處理;當(dāng)查找教師時(shí),并且填入的教師存在時(shí),就會(huì)顯示所對(duì)應(yīng)的子菜單用于增加授課的班級(jí);當(dāng)查找班級(jí)時(shí),并且填入的班級(jí)存在時(shí),就會(huì)顯示所對(duì)應(yīng)的子菜單用于增加此班級(jí)授課的科目。程序在各
5、各菜單選項(xiàng)中支持增加、查找、顯示所有、刪除、退出等功能選擇。 通過該程序能夠很好的管理教師的信息,具有很好的可維護(hù)性,保存后的信息可以在下次運(yùn)行程序時(shí)被正確無誤的載入,方便管理人員的操作和建立新的教師檔案。以解決現(xiàn)實(shí)生活中繁瑣、冗余、耗時(shí)間、費(fèi)事、容易丟失的數(shù)據(jù)管理問題,使教師管理信息更加簡(jiǎn)單,易懂,安全性更加強(qiáng)。 注:由于本程序是參照課本上的學(xué)生管理系統(tǒng)應(yīng)用實(shí)例程序而修改過來的,很多程序的命名規(guī)則沒有做過多的改動(dòng),所以經(jīng)修改過后的程序有一定的閱讀難度。1.2.1 各項(xiàng)功能說明主函數(shù)說明: (1)教師信息的增加: 這部分的功能主要是在數(shù)據(jù)文件中加入教師的信息。首先建立一個(gè)指向student.d
6、at文件的指針,若成功建立,則按程序提示輸入教師的相關(guān)信息,包括工號(hào)、姓名、性別、電話以及職位等,并將這些信息分別賦給指針中的相應(yīng)變量,其中包括當(dāng)前所指向的指針和指向;然后把這個(gè)結(jié)點(diǎn)加入到指針中,可以從首地址來增加,計(jì)數(shù)器加一。這樣一個(gè)教師信息就形成了。(2)查找教師信息: 進(jìn)入該功能界面后,可以通過教師的工號(hào)查找出該教師的所有信息。首先開辟一個(gè)指針,并把文件student.dat所指向的頭指針賦給它,根據(jù)輸入的教師工號(hào),逐個(gè)查找文件中與此工號(hào)匹配的教師,找到之后,將此教師的所有信息輸出。(3)刪除教師信息: 進(jìn)入該功能界面后,可以通過教師的工號(hào)對(duì)某個(gè)教師信息進(jìn)行刪除。首先開辟一個(gè)指針,并把文
7、件student.dat所指向的頭指針賦給它,根據(jù)輸入的教師編號(hào),逐個(gè)查找文件中與此工號(hào)匹配的教師指針,找到之后,將此教師的所有信息刪除??梢酝ㄟ^顯示所有的教師信息來看此教師信息是否刪除。(4)保存、載入教師信息: 選擇這個(gè)功能后就會(huì)保存教師的所有信息,以供以后使用程序時(shí)載入之前保存過的信息(5)顯示教師信息: 選擇此功能后可以將當(dāng)前的所有教師信息顯示出來。(6) 退出: 關(guān)閉程序。 各子菜單功能介紹: (1)增加班級(jí): 這部分的功能主要是在數(shù)據(jù)文件中加入教師所對(duì)應(yīng)的班級(jí)的信息。首先建立一個(gè)指向student.dat文件的指針,若成功建立,則按程序提示輸入班級(jí)的相關(guān)信息,包括工號(hào)、姓名等,并將
8、這些信息分別賦給指針中的相應(yīng)變量,其中包括當(dāng)前所指向的指針和指向;然后把這個(gè)結(jié)點(diǎn)加入到指針中,可以從首地址來增加,計(jì)數(shù)器加一。這樣一個(gè)教師對(duì)應(yīng)的班級(jí)信息就形成了。(2) 查找、刪除、顯示、退出班級(jí)信息: 此部分跟主函數(shù)中的查找教師信息、刪除教師信息、顯示教師信息、退出相類似,不同之處就是班級(jí)管理信息是教師管理信息的一個(gè)子菜單,是附屬關(guān)系。班級(jí)信息中的退出只是返回到上一級(jí)菜單,而主函數(shù)中的退出是退出程序。(3) 科目管理子菜單:此部分是班級(jí)菜單中的子菜單,其各部分的功能與班級(jí)管理信息菜單功能相似,其中包括:增加科目、顯示所有科目、刪除科目、退出等選項(xiàng)。其關(guān)系如下圖: 1.3 各項(xiàng)功能的需求標(biāo)準(zhǔn)一
9、、有較為美觀簡(jiǎn)潔大方的菜單,能保證用戶方便、直觀、快捷的熟悉并使用軟件的各項(xiàng)功能。二、有嚴(yán)密正確的數(shù)據(jù)驗(yàn)證功能和數(shù)據(jù)處理功能,可根據(jù)需要增加教師信息,不會(huì)有空間的浪費(fèi),并能按編號(hào)進(jìn)行查找和刪除教師信息,刪除后將空間釋放。三、系統(tǒng)要有一定的可靠性。第二章 課程設(shè)計(jì)環(huán)境與原理2.1 設(shè)計(jì)環(huán)境與模塊的劃分2.1.1軟件設(shè)計(jì)環(huán)境 Microsoft Visual C+ 6.0 2.1.2軟件模塊的劃分該軟件主要組成模塊和各個(gè)模塊之間的調(diào)用關(guān)系如下圖:2.2.3主要流程圖一、從表尾增加教師信息 二、刪除教師信息三、查找教師信息否否是是開始開辟一個(gè)節(jié)點(diǎn)p 表頭=p輸入編號(hào)NP=NULLN=p-N輸出未找到
10、p-next=p輸出該教師信息結(jié)束開始四、顯示教師信息開辟節(jié)點(diǎn)p 表頭=p否否是是結(jié)束無教師信息p-next=p輸出該教師信息P=空表頭=空第三章 軟件的設(shè)計(jì)過程3.1 各軟件模塊之間的調(diào)用方式 程序中各個(gè)模塊之間的調(diào)用方式主要是通過文件的包含和函數(shù)的調(diào)用實(shí)現(xiàn)的,用文件的形式把各個(gè)函數(shù)分開,再用頭文件把它們包含進(jìn)來,使用主函數(shù)進(jìn)行調(diào)用。3.2 軟件中實(shí)現(xiàn)各項(xiàng)功能的函數(shù)與程序代碼 主函數(shù):#includeSchool.hvoid main() cout *endl; cout * 歡迎進(jìn)入教師管理系統(tǒng) *endl; cout *endl; while(sel) coutn請(qǐng)選擇你的操作:endl
11、; cout 1.增加教師endl; cout 2.查找教師endl; cout 3.顯示所有教師信息endl; cout 4.刪除教師endl; cout 5.保存endl; cout 6.載入endl; cout 0.退出endl; coutsel; cout=0&sel=6) switch(sel) case 1: coutPno; coutendl; coutPname; coutendl;coutPsex;coutendl;coutPold;coutendl;coutPwork;coutendl;coutPmoney;coutendl;coutPoldd;coutendl;coutP
12、call;coutendl;coutPaddres;coutendl; shiyou.AddDept(Pno,Pname,Psex,Pold,Pwork,Pmoney,Poldd,Pcall,Paddres); break; case 2: Department *find; coutPno; find=shiyou.FindDept(Pno); if(find!=NULL) cout教師工號(hào):Pnoendl; cout教師姓名:Pnameendlendl; cout1.進(jìn)入此系endl; cout其他數(shù)返回上級(jí)菜單depsel; if(depsel=1) /系里菜單 shiyou.DepMe
13、nu(find); else break; break; case 3: cout所有教師信息為:endl; shiyou.DispAll(); break; case 4: coutPno; shiyou.DeleteDept(Pno); break; case 5: shiyou.save(); break; case 6: shiyou.load(); break; case 0: break; else cout1000#pragma once#endif /_MSC_VER1000#include Department.hclass Schoolpublic: void DepMen
14、u(Department *depType); void DispAll(); Department *root; int DeptCount; School(); virtual School(); bool AddDept(char *pno,char *pname,char *psex,char *pold,char *pwork,char *pmoney,char *poldd,char *pcall,char *paddres); bool DeleteDept(char *no); Department *FindDept(char *no); void save(); /將班級(jí)記
15、錄存入指定文件 void load(); /從指定文件裝載班級(jí)記錄;#endif二、定義一個(gè)班級(jí)類#if!defined (AFX_DEPANTMENT_H_A6895DC1_C3F3_4737_88EC_AE2DA280272E_INCLUDED_)#define AFX_DEPANTMENT_H_A6895DC1_C3F3_4737_88EC_AE2DA280272E_INCLUDED_#if _MSC_VER1000#pragma once#endif /_MSC_VER1000#include Class.hclass Departmentpublic: void ClaMenu(Cl
16、ass *ClaType); void DispAll(); char Pname10; char Pno5;char Psex5;char Pold4;char Pwork6;char Pmoney10;char Poldd10;char Paddres50;char Pcall20; int ClaCount; Department *next; Class *Cla; Department(); Department(char *Pno1,char *Pname1,char *Psex1,char *Pold1,char *Pwork1,char *Pmoney1,char *Poldd
17、1,char *Pcall1,char *Paddres1) next=NULL; Cla=NULL; ClaCount=0; strcpy(Pno,Pno1); strcpy(Pname,Pname1);strcpy(Psex,Psex1);strcpy(Pold,Pold1); strcpy(Pwork,Pwork1);strcpy(Pmoney,Pmoney1);strcpy(Poldd,Poldd1);strcpy(Pcall,Pcall1);strcpy(Paddres,Paddres1); virtual Department(); bool AddClass(char *cno,
18、char *cname,char *pno); bool DeleteClass(char *no); Class *FindsClass(char *no); friend ostream &operator(istream &ic,Department &obj);#endif 第四章 設(shè)計(jì)結(jié)果與分析 4.1 軟件使用結(jié)果 在此,我們將把軟件使用過程寫出,并對(duì)此程序的一些細(xì)節(jié)的具體的操作方法加以說明,說明如下:1.進(jìn)入程序菜單,界面如下:2.增加教師信息 3.根據(jù)教師編號(hào)查找教師信息4.班級(jí)管理子菜單:5.科目管理子菜單:總結(jié)經(jīng)過了一周的課程設(shè)計(jì),我感到編程并不是那么困難和枯燥,我對(duì)C+語言編程又重新有了濃厚的興趣。我經(jīng)過這次編程,對(duì)程序的結(jié)構(gòu)有了更加深科的認(rèn)識(shí),回憶起并熟悉掌握了C+語言的一些基礎(chǔ)而重要的知識(shí),對(duì)程序的調(diào)試能力也有了進(jìn)一步的提高。本次我圓滿的完成了程序的編寫與調(diào)試,所編寫的程序能夠順利運(yùn)行,并能夠解決一些實(shí)際問題,我感到非常高興和欣慰,對(duì)自己也充滿了信心。 關(guān)于這次課程設(shè)計(jì)中,我們?cè)O(shè)計(jì)了一個(gè)對(duì)教師信息進(jìn)行管理的系統(tǒng),它基本滿足了
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 批發(fā)業(yè)務(wù)中的版權(quán)合作與版權(quán)輸出考核試卷
- 其他調(diào)味品發(fā)酵制品制造考核試卷
- 智能照明在博物館展品照明中的應(yīng)用考核試卷
- 企業(yè)知識(shí)管理與知識(shí)分享考核試卷
- 年金保險(xiǎn)投資渠道選擇考核試卷
- 有機(jī)肥料在育苗中的應(yīng)用考核試卷
- 冰球場(chǎng)冰面修整與保養(yǎng)考核試卷
- 智能無人機(jī)飛行控制系統(tǒng)考核試卷
- 小學(xué)生簡(jiǎn)單律動(dòng)課件圖片
- 廣州鋪位租賃合同范本
- 醫(yī)療機(jī)構(gòu)臨床基因擴(kuò)增檢驗(yàn)實(shí)驗(yàn)室管理辦法
- ABB工業(yè)機(jī)器人編程-第五章
- 風(fēng)力發(fā)電機(jī)組安裝與調(diào)試第二版 課件全套 情境1-5 裝配基礎(chǔ)知識(shí) -風(fēng)力發(fā)電機(jī)組的吊裝
- Office辦公軟件應(yīng)用(Office2010)中職全套教學(xué)課件
- 幼兒園餐前播報(bào)
- “雙減”政策下的小學(xué)數(shù)學(xué)創(chuàng)新型作業(yè)設(shè)計(jì)
- 正確對(duì)待青春期交友-課件
- 部編版語文四年級(jí)下冊(cè) 教材解讀
- 全北京市29處建筑垃圾消納場(chǎng)所一覽表
- 佳龍食品人力資源招聘方案0720
- GB/T 19879-2023建筑結(jié)構(gòu)用鋼板
評(píng)論
0/150
提交評(píng)論