C++課設高校人員信息管理系統(tǒng)_第1頁
C++課設高校人員信息管理系統(tǒng)_第2頁
C++課設高校人員信息管理系統(tǒng)_第3頁
C++課設高校人員信息管理系統(tǒng)_第4頁
C++課設高校人員信息管理系統(tǒng)_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、C+課設高校人員信息管理系統(tǒng)BigWork設計報告報告題目: 高校人員信息管理系統(tǒng) 作者所在系部: 計算機科學與工程系 作者 所在專業(yè): 計算機科學與技術 作者所在班級: 作 者 姓 名 :指導教師姓名: 完 成 時 間 : 2013-6-201一(目的與要求1、目的要求學生能夠熟練掌握C+語言的基本知識和技能。基本掌握面向?qū)ο蟪绦蛟O計的基本思路和方法。能夠利用所學的基本知識和技能,解決簡單的面向?qū)ο蟪绦蛟O計問題。2、基本要求(1)要求利用面向?qū)ο蟮姆椒ㄒ约癈+的編程思想來完成系統(tǒng)的設計。(2)在系 統(tǒng)的設計中,要求運用面向?qū)ο蟮臋C制(繼承、派生及多態(tài)性)來實現(xiàn)系統(tǒng)功能,并 且要建立清晰的類層

2、次關系。在系統(tǒng)設計中要分析和定義各個類,每個類中要有各自的數(shù)據(jù)成員和成員 函數(shù)。主函數(shù)中提供菜單選項,并給出足夠的選擇信息以及提示信息。 (5) 程序 具有一定的健壯性,不會因為用戶的輸入錯誤引起程序運行錯誤而中斷執(zhí)行。3、創(chuàng)新要求 在基本要求達到后,可根據(jù)實際情況進行創(chuàng)新設計,如根據(jù)查找結果進行修改的功能及設計出比較友好的界面等。二(驗收方式未定。三(課設報告在完成驗收之后,提交課設報告。其中報告中需包括系統(tǒng)設計要求,設計思 路,系統(tǒng)功能模塊圖,系統(tǒng)流程圖,類的層次圖(包括類成員列表),調(diào)試過程,關 鍵程序代碼,總結,參考書目等。另外,課設報告要嚴格遵守模板文件的格式要 求,思路清晰,內(nèi)容詳

3、實豐富。四(成績評定占期末成績的20%五(說明1、每位同學在以下的題目中任選一個來完成。2、學生應嚴格遵守課堂秩序,按時上機,認真完成各項任務。3、上機前做好充分的準備,包括事先寫好主要程序代碼,以保證充分利用上 機的時間調(diào)試程序。4、每位同學各自獨立完成自己的題目,禁止抄襲或拷貝。5、必須按規(guī)定時間上交課設報告。2六(課設題目題目1 “高校人員信息管理系統(tǒng)”、問題描述 1某高校,主要人員有:領導、教師和學生,共有的信息包括:編號、姓名、性 別、年齡。其中領導還應包含的信息有:任職部門(學院、各系部)、職稱;教師還應包含的信息有:職稱、任職時間、專業(yè);學生還應包含的信息有:所在班級、所在宿某高

4、校有四類員工:教師、實驗員、行政人員,教師兼行政人員;共有的信息包 括:編號、姓名、性別、年齡等。其中,教師還包含的信息有:所在系部、專業(yè)、職 稱;實驗員還包含的信息由:所在實驗室、職務;行政人員還包含的信息有:政治面 貌、職稱等。2、功能要求基本功能添加功能:程序能夠任意添加上述四類人員的記錄,可提供選擇界面供用戶 選擇所要添加的人員類別,要求員工的編號要唯一,如果添加了重復編號的記錄 時,則提示數(shù)據(jù)添加重復并取消添加。查詢功能:可根據(jù)編號、姓名等信息對已添加的記錄進行查詢,如果未找 到,給出相應的提示信息,如果找到,則顯示相應的記錄信息。顯示功能:可顯示當前系統(tǒng)中所有記錄,每條記錄占據(jù)一行

5、。編輯功能:可根據(jù)查詢結果對相應的記錄進行修改,修改時注意編號的唯一 性。刪除功能:主要實現(xiàn)對已添加的人員記錄進行刪除。如果當前系統(tǒng)中沒有相 應的人員記錄,則提示“記錄為空”并返回操作;否則,輸入要刪除的人員的編 號或姓名,根據(jù)所輸入的信息刪除該人員記錄,如果沒有找到該人員信息,則提示 相應的記錄不存。統(tǒng)計功能:能根據(jù)多種參數(shù)進行人員的統(tǒng)計。例如,統(tǒng)計四類人員數(shù)量以及 總數(shù),或者統(tǒng)計男、女員工的數(shù)量,或者統(tǒng)計某年齡段人員的數(shù)量等。保存功能:可將當前系統(tǒng)中各類人員記錄存入文件中,存入方式任意。8)讀取功能:可將保存在文件中的人員信息讀入到當前系統(tǒng)中,供用戶進行使 用。3摘要在當前的學校人員管理體

6、制下,高等學校不但要有濃厚的學風氣息、雄厚的師 資力量、先進精良硬件設備,與此同時,作為先進科學技術和優(yōu)秀文化的承載者和傳播 者,更需要有一個執(zhí)行效率高并且便于操作的現(xiàn)代信息化管理系統(tǒng),以實現(xiàn)對高校各類人 員進行添加、查找、修改、刪除、統(tǒng)計、保存、讀取等動態(tài)管理的目的。本文利用Microsoft Visual C+6. 0的ADO編寫程序,實現(xiàn)了高校對實驗員、 教師、行政人員、教師兼行政人員的管理操作。本系統(tǒng)主要有四個管理模塊實驗員管理系統(tǒng)、教師管理系統(tǒng)、行政人員管 理系統(tǒng)、教師兼行政人員管理系統(tǒng)。已經(jīng)過全面的系統(tǒng)測試,能夠很好的運行,達到了 預期的效果。關鍵詞:系統(tǒng)設計 類 信息目錄摘要 第

7、1章 緒 1課程設計的目的 1課程設計的背景和意義 1課程設計的背景 1課程設計的意義 11.3 課程設計環(huán)境 1第2章 需求分析 2問題描述 功能需求 2問題的解決方案 3第3章 系統(tǒng)設計 4數(shù)據(jù)設計 4類設計 4類之間關系 53.2結構設計 系統(tǒng)流程圖 63.2.2 界面設計 6第4章 系統(tǒng)實現(xiàn) 94.1 類實現(xiàn) 94.2 函數(shù)實現(xiàn) .114.3 主函數(shù) 實現(xiàn) 21第1章 緒論課程設計的目的要求學生能夠熟練掌握C+語言的基本知識和技能?;菊莆彰嫦?qū)ο蟪绦蛟O計的基本思路和方法。能夠利用所學的基本知識和技能,解決簡單的面向?qū)ο蟪绦蛟O計問題課程設計的背景和意義1.2.1課程設計的背景理論研究基

8、礎綜合C+編程知識,結合實際加以應用。參考課本對課本熟悉,應用類、數(shù)組等內(nèi)容。技術層面的支持安裝Microsoft Visual C+ 6.0集成開發(fā)環(huán)境。課程設計的意義綜合復習C+面向?qū)ο蟪绦蛟O計的所有知識點,進一步熟練面向?qū)ο蟪绦?的開發(fā)方法和流程,提高學生獨立分析問題和解決問題的能力,培養(yǎng)學生的中、小型實 踐項目開發(fā)能力。讓我們提前感受到編寫軟件的過程和解決問題的方法。5課程設計環(huán)境軟件環(huán)境:Microsoft Visual C+ 6.0集成開發(fā)環(huán)境。硬件環(huán)境:圖書館五樓機房,筆記本電腦。第2章 需求分析問題描述 某高校有四類員工:教師、實驗員、行政人員,教師兼行政人員;共有的信息包 括

9、:編號、姓名、性別、年齡等。其中,教師還包含的信息有:所在系部、專業(yè)、職 稱;實驗員還包含的信息由:所在實驗室、職務;行政人員還包含的信息有:政治面 貌、職稱等 2.2 功能要求基本功能添加功能:程序能夠任意添加上述四類人員的記錄,可提供選擇界面供用戶 選擇所要添加的人員類別,要求員工的編號要唯一,如果添加了重復編號的記錄時, 則提示數(shù)據(jù)添加重復并取消添加。查詢功能:可根據(jù)編號、姓名等信息對已添加的記錄進行查詢,如果未找 到,給出相應的提示信息,如果找到,則顯示相應的記錄信息。顯示功能:可顯示當前系統(tǒng)中所有記錄,每條記錄占據(jù)一行。編輯功能:可根據(jù)查詢結果對相應的記錄進行修改,修改時注意編號的唯

10、一 性。刪除功能:主要實現(xiàn)對已添加的人員記錄進行刪除。如果當前系統(tǒng)中沒有相 應的人員記錄,則提示“記錄為空”并返回操作;否則,輸入要刪除的人員的編號 或姓名,根據(jù)所輸入的信息刪除該人員記錄,如果沒有找到該人員信息,則提示相 應的記錄不存。統(tǒng)計功能:能根據(jù)多種參數(shù)進行人員的統(tǒng)計。例如,統(tǒng)計四類人員數(shù)量以及 總數(shù),或者統(tǒng)計男、女員工的數(shù)量,或者統(tǒng)計某年齡段人員的數(shù)量等。保存功能:可將當前系統(tǒng)中各類人員記錄存入文件中,存入方式任意。讀取功能:可將保存在文件中的人員信息讀入到當前系統(tǒng)中,供用戶進行使 用。問題的解決方案 根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟: )應用系統(tǒng)分析,建立該系統(tǒng)的功能模

11、塊框圖以及界面的組織和設計; 1分析系統(tǒng)中的各個實體及它們之間的關系;根據(jù)問題描述,設計系統(tǒng)的類層次;完成類層次中各個類的描述;完成類中各個成員函數(shù)的定義;完成系統(tǒng)的應用模塊;功能調(diào)試;完成系統(tǒng)總結報告。 第3章系統(tǒng)設計 3.1 數(shù)據(jù)設計類設計此系統(tǒng)共設計了九個類:基類(class CCommon),實驗員類(class Cassis tan t), 教師類(class Cteacher),行政人員類(class Cexecution),教師兼行政人 員類(class Ct ea_exe )基類中有int number;/編號st ring name;/姓名st ring sex;/性別int

12、 age;/年齡 實驗員類中添加了 st ring labora to ry;/所在實驗室st ring posi tio n;/職稱public:void set(int _number,string _name,string _sex,int _age,string laboratory,string _position)number = _number;name = _name;sex = _sex;age = _age;laboratory = _laboratory;position = _position;/輸入實i驗員數(shù)據(jù)void output();Cassistant()/析構

13、函數(shù)friend int find_nu(Cassistant assistant, int _nu, int &t);friend int find_na(Cassistant assistant, string _na, int &t);friend void add(Cassistant assistant, int _fa);friend void dele(Cassistant assistant, int _fa);friend void closefile(Cassistant assistant ,int &t);8教師類中添加了st ring depar tment;/所在系

14、部st ring profession;/專業(yè)st ring posi tio n;/職稱public:void set(int _number,string _name,string _sex,int _age,string department,string _profession,string _position)number = _number;name = _name;sex = _sex;age = _age;department = _department;profession = _profession;position = _position;/輸入教師數(shù)據(jù)void outp

15、ut();/輸出教師數(shù)據(jù)Cteacher()/析構函數(shù)9friend int find_nu(Cteacher teacher, int _nu, int &t);friend int find_na(Cteacher teacher, string _na, int &t);friend void add(Cteacher teacher, int _fa);friend void dele(Cteacher teacher, int _fa);friend void closefile(Cteacher teacher ,int &t);friend void _statistics(Ct

16、eacher teacher, int &t);行政人員類中添加了st ring politi cs;/政治面貌st ring posi tio n;/職稱void set(int _number,string _name,string _sex,int _age,string_politics,string _position)number = _number;name = _name;sex = _sex;age = _age;politics = _politics;position = _position;/輸入行政人員數(shù)據(jù)void output();10Cexecution()/析構

17、函數(shù)friend int find_nu(Cexecution execution, int _nu, int &t);friend int find_na(Cexecution execution, string _na, int &t);friend void add(Cexecution execution, int _fa);friend void dele(Cexecution execution, int _fa);friend void closefile(Cexecution execution ,int &t);friend void _statistics(Cexecuti

18、on execution, int &t); 教師兼行政人員類添加了st ring politi cs;/政治面貌st ring depar tment;/所在系部st ring profession;/專業(yè)st ring posi tio n;/職稱void set(int _number,string _name,string _sex,int _age,string _politics,string _department,string _profession,string _position)number = _number;name = _name;sex = _sex;age =

19、_age;politics = _politics;department = _department;11profession = _profession;position = _position;/輸行政人員兼教師數(shù)據(jù)void output();Ct ea_exe()/析構函數(shù)friend int find_nu(Ctea_exe tea_exe, int _nu, int &t);friend int find_na(Ctea_exe tea_exe, string _na, int &t);friend void add(Ctea_exe tea_exe, int _fa);friend

20、 void dele(Ctea_exe tea_exe, int _fa);friend void closefile(Ctea_exe tea_exe ,int &t);friend void _statistics(Ctea_exe tea_exe, int &t); 3.1.2 類之間的 關系基 基類(class CCommon):實驗員類(class Cassis tan t),教師類(classCteacher),行政人員類(class Cexecution),教師兼行政人員類(class Ctea_exe )3.1.3 函數(shù)設計 在四個管理類中定義了以下相同函數(shù),功能如其后所說 _

21、add(); 實現(xiàn)該類記錄的添加;_query(); 實現(xiàn)該類記錄的查詢_display(); 實現(xiàn)該類所有記錄的顯示;_edit(); 實現(xiàn)該類記錄的修改;12_delete();實現(xiàn)該類記錄的刪除;_statistics(); 實現(xiàn)該類記錄的統(tǒng)計;XX_put(); 退出Opef ile()讀出Closefile()寫入3.2 結構設計3.2.1 系統(tǒng)流程圖人員類教師類 行政人員類 實驗員類教師兼行政人員類圖3 13.2.2 界面設計第4章系統(tǒng)實現(xiàn) 4.1 類實現(xiàn)對于基類的定義class CCommon/公有類13protected:int number;/編號st ring name;/

22、姓名st ring sex;/性別int age;/年齡;class Ct eacher:public CCommon/教師類protected:st ring depar tment;/所在系部st ring profession;/專業(yè)st ring posi tio n;/職稱public:void set(int _number,string _name,string _sex,int _age,string_department,string _profession,string _position)number = _number;name =name;sex =sex;age =

23、 _age;department = _department;profession = _profession;14position = _position;/輸入教師數(shù)據(jù)void output();Cteacher()/析構函數(shù)friend int find_nu(Cteacher teacher, int _nu, int &t);friend int find_na(Cteacher teacher, string _na, int &t);friend void add(Cteacher teacher, int _fa);friend void dele(Cteacher teach

24、er, int _fa);friend void closefile(Cteacher teacher ,int &t);friend void _statistics(Cteacher teacher, int &t); ;class Cassis tant: public CCommon/實驗員類protected:st ring labora to ry;/所在實驗室st ring posi tio n;/職稱public:void set(int _number,string _name,string _sex,int _age,string_laboratory,string _po

25、sition)15number = _number;name = _name;sex = _sex;age = _age;laboratory = _laboratory;position = _position;/輸入實驗員數(shù)據(jù)void output();Cassistant()/析構函數(shù)friend int find_nu(Cassistant assistant, int _nu, int &t);friend int find_na(Cassistant assistant, string _na, int &t);friend void add(Cassistant assistan

26、t, int _fa);friend void dele(Cassistant assistant, int _fa);friend void closefile(Cassistant assistant ,int &t);friend void _statistics(Cassistant assistant, int &t); ;class Cexec utio n:public CCommon/行政人員類protected:st ring politi cs;/政治面貌16st ring posi tio n;/職稱public:void set(int _number,string _

27、name,string _sex,int _age,string_politics,string _position)number = _number;name = _name;sex = _sex;age = _age;politics = _politics;position = _position;/輸入行政人員數(shù)據(jù)void output();Cexecution()/析構函數(shù)friend int find_nu(Cexecution execution, int _nu, int &t);friend int find_na(Cexecution execution, string _

28、na, int &t);friend void add(Cexecution execution, int _fa);friend void dele(Cexecution execution, int _fa);friend void closefile(Cexecution execution ,int &t);17friend void _statistics(Cexecution execution, int &t); ;class Ct ea_exe:public CCommon/行政人員兼教師類protected:st ring politi cs;/政治面貌st ring dep

29、ar tment;/所在系部st ring profession;/專業(yè)st ring posi tio n;/職稱public:void set(int _number,string _name,string _sex,int _age,string_politics,string _department,string _profession,string _position) number = _number;name = _name;sex = _sex;age = _age;politics = _politics;department = _department;profession

30、 = _profession;position = _position;/輸入行政人員兼教師數(shù)據(jù)18void output();Ctea_exe() /析構函數(shù) friend int find_nu(Ctea_exe tea_exe, int _nu, int &t);friend int find_na(Ctea_exe tea_exe, string _na, int &t); friend void add(Ctea_exe tea_exe, int _fa);friend void dele(Ctea_exe tea_exe, int _fa);friend void closefil

31、e(Ctea_exe tea_exe ,int &t);friend void _statistics(Ctea_exe tea_exe, int &t); ;4.2 函數(shù)實現(xiàn) 對于在四個管理類中定義了相同的函數(shù),以教師類為例 添加功能:void _add(Cteacher *teacher, int &t)/l 添加信息int number,age;string name,sex,department,profession,position;cou t 請輸入:endl;while(1)number=t+1;coutname;if(0 = name)19break;cou tsex;if(s

32、ex = M|sex = W)cou tage;cou tdepartment;coutprofession;cou tposition;teachert.set(number,name,sex,age,department,profession,position)7+t;break;elsecou t輸入性別錯誤,請重新輸入!endl;display(Cteacher teacher, int &t)/3 顯示功能 int i;coutendl;cout編號t姓名t性別t年齡t系部t專業(yè)t職稱endl;for(i=0;it;i+)teacheri.output();20coutendlend

33、l;查詢功能:可根據(jù)編號、姓名等信息對已添加的記錄進行查詢,如果未找到 給出相應的提示信息,如果找到,則顯示相應的記錄信息。void _query(Cteacher teacher, int &t)/2 查詢信息int choice;int flag,nu;string na;cou tl編號,2姓名flag;if(1 = flag|2 = flag)break;elsecou t輸入錯誤,請重新輸入:!endl;switch(flag)case 1:/編號查詢docou t請輸入編號!nu;if(find_nu(teacher,nu,t) t)teacherfind_nu(teacher,n

34、u,t).output(); elsecou t查無此人!endl;cout是否繼續(xù)(1 是,2 否)choice;if(choice = 2)21break;while(choice = 1);break;case 2:/姓名查詢docout請輸入姓名!na;if(find_na(teacher,na,t)t)teacher find_na(teacher,na,t) .output();elsecou t查無此人!endl;c o u t 是否繼續(xù)(1是,2否) choice;if(choice = 2)break;while(choice = 1);break;int find_nu(C

35、 teacher t eacher, int _nu, int &t)/編號查詢方式 int i;for(i=0;it;i+)if(teacheri.number=_nu)return i;return t;int find_na(C teacher t eacher, st ring _na, int &t)/姓名查詢方式 int i;for(i=0;it;i+)22if(=_na)return i;return t;刪除功能:主要實現(xiàn)對已添加的人員記錄進行刪除。如果當前系統(tǒng)中沒有相應 的人員記錄,則提示“記錄為空”并返回操作;否則,輸入要刪除的人員的編號或 姓名,

36、根據(jù)所輸入的信息刪除該人員記錄,如果沒有找到該人員信息,則提示相應的記錄不 存。 void Tea_Manage:Delete()if(top=0)cou t當前系統(tǒng)中沒有存儲記錄!endl;return;cou t 1、按編號查找刪除2、按姓名查找刪除choice;switch(choice)case 1:cou tnum;for(int i=0;itop;i+)if(num=Teai.num)cou t是否確認刪除,1、是2、否choice;switch(choice)case 1:for(int j=i;jtop-1;j+)23Teaj=Teaj+1;cou t刪除成功endl;top-

37、;break;case 2:return;defaul t: cou t無此項,失敗endl;break; return;cou t無此人endl; ;break;case 2:coutname;for(int i=0;itop;i+)if(name=T)否 endl;cou t是否確認刪除,1、是2否 choice;switch(choice)case 1:for(int j=i;jtop-1;j+)Teaj=Teaj+1;cou t刪除成功endl;top-;break;case 2:return;defaul t:cou t無此項,失敗endl;break;24retur

38、n;cou t無此人endl; break;defaul t: cou t沒有此項,失敗:endl;break;統(tǒng)計功能:對男女人數(shù)進行統(tǒng)計。oid _statisti cs(C teacher t eacher, int &t)/統(tǒng)計數(shù)據(jù) vint i,boy=0,girl=0,sum=0;for(i=0;it;i+)if(teacheri.sex = W)girl+;if(teacheri.sex=M)boy+;sum = girl+boy;cou t教師總共有sumendl;cout男有boy人女有girl人endl; void statist ics _t eacher()/教師統(tǒng)計函

39、數(shù)int t;Cteacher teacherMax;t = openfile(teacher);_statistics(teacher,t); 保存功能:可將當前系統(tǒng)中各類人員記錄存入文件中。 voidclosef il e(C teacher t eacher, int &t)/ 向文件中寫入數(shù)據(jù)int i,number,age;string name,sex,department,profession,position;25ofstream fout(teacher.txt);for(i=0;it;i+)number=teacheri.number;name=;

40、sex=teacheri.sex;age=teacheri.age;department=teacheri.department;profession=fession;position=teacheri.position;if(number!=0)fout numbert namet sextaget departmentt professiont positionendl; fout.close();讀取功能:可將保存在文件中的人員信息讀入到當前系統(tǒng)中,供用戶進行使 用。 void Tea_Manage:Read()ifstream in(D:ying2.txt,ios:in);if(!in)cou t打開失??!Teai.numTTeai.sexTeai.ageTeai.departTeai.specTeai.title)Teai.Output();i+;top+;in.close();教師函數(shù)主界面的定義void TeaMenu()Tea_Manage t;int choice;wh

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論