版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、i=r刀、謀程設(shè)計(jì)報(bào)告報(bào)告題目:高校人員信息管理系統(tǒng)作者所在系部:經(jīng)濟(jì)與管理系作者所在專業(yè):電子商務(wù)作者所在班級:作者姓名:指導(dǎo)教師姓名:完成時(shí)間:C+程序設(shè)計(jì)課程設(shè)計(jì)任務(wù)書一、課程設(shè)計(jì)目的1、鞏固并加深學(xué)生對C+語言程序設(shè)計(jì)知識的理解;2、培養(yǎng)學(xué)生面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,使學(xué)生認(rèn)識面向過程和面向?qū)ο髢煞N設(shè)計(jì)方法的區(qū)別;3、進(jìn)一步掌握和應(yīng)用VC+6.0集成開發(fā)環(huán)境;4、提高運(yùn)用C+語言'解決實(shí)際問題的能力;5、初步掌握開發(fā)小型實(shí)用軟件的基本方法,能獨(dú)立設(shè)計(jì)、實(shí)現(xiàn)具有實(shí)際功能的小系統(tǒng);6、掌握書寫程序設(shè)計(jì)開發(fā)文檔的能力(書寫課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告)。二、課程設(shè)計(jì)要求1、根據(jù)分組情況對規(guī)定的課程
2、設(shè)計(jì)題目要求進(jìn)行分析、設(shè)計(jì);2、利用VisualC+獨(dú)立編寫程序代碼,并調(diào)試程序使其能正確運(yùn)行;3、源程序要有適當(dāng)?shù)淖⑨專钩绦蛉菀组喿x;4、設(shè)計(jì)完成的軟件要便于操作和使用,采用模塊化設(shè)計(jì)方法;5、要求系統(tǒng)的用戶界面盡量簡單、合理,鼓勵學(xué)生自動增加新功能模塊(視情況可另行加分);6、完成并提交課程設(shè)計(jì)報(bào)告,具體要求見相關(guān)說明文檔。三、課程設(shè)計(jì)內(nèi)容每個學(xué)生根據(jù)分組情況,從教師提供的課程設(shè)計(jì)題目中選擇題目,獨(dú)立完成,不可任意更換題目0前言需求分析1問題描述某高校有四類員工:教師、實(shí)驗(yàn)員、行政人員,教師兼行政人員;共有的信息包括:編號、姓名、性別、年齡等。其中,教師還包含的信息有:所在系部、專業(yè)、職
3、稱;實(shí)驗(yàn)員還包含的信息由:所在實(shí)驗(yàn)室、職務(wù);行政人員還包含的信息有:政治面貌、職稱2功能要求(1)基本功能1)添加功能:程序能夠任意添加上述四類人員的記錄,可提供選擇界面供用戶選擇所要添加的人員類別,要求員工的編號要唯一,如果添加了重復(fù)編號的記錄時(shí),則提示數(shù)據(jù)添加重復(fù)并取消添加。2)查詢功能:可根據(jù)編號、姓名等信息對已添加的記錄進(jìn)行查詢,如果未找到,給出相應(yīng)的提示信息,如果找到,則顯示相應(yīng)的記錄信息。3)顯示功能:可顯示當(dāng)前系統(tǒng)中所有記錄,每條記錄占據(jù)一行。4)編輯功能:可根據(jù)查詢結(jié)果對相應(yīng)的記錄進(jìn)行修改,修改時(shí)注意編號的唯一性。5)刪除功能:主要實(shí)現(xiàn)對已添加的人員記錄進(jìn)行刪除。如果當(dāng)前系統(tǒng)中
4、沒有相應(yīng)的人員記錄,則提示“記錄為空!”并返回操作;否則,輸入要刪除的人員的編號或姓名,根據(jù)所輸入的信息刪除該人員記錄,如果沒有找到該人員信息,則提示相應(yīng)的記錄不存。6)統(tǒng)計(jì)功能:能根據(jù)多種參數(shù)進(jìn)行人員的統(tǒng)計(jì)。例如,統(tǒng)計(jì)四類人員數(shù)量以及總數(shù),或者統(tǒng)計(jì)男、女員工的數(shù)量,或者統(tǒng)計(jì)某年齡段人員的數(shù)量等。7)保存功能:可將當(dāng)前系統(tǒng)中各類人員記錄存入文件中,存入方式任意。8)讀取功能:可將保存在文件中的人員信息讀入到當(dāng)前系統(tǒng)中,供用戶進(jìn)行使用。(2)擴(kuò)展功能在完成以上基本功能的基礎(chǔ)上,可自行進(jìn)行擴(kuò)展或完善,例如:1)添加人員記錄時(shí),考慮各種數(shù)據(jù)的有效性。2)組合查詢功能的實(shí)現(xiàn)。3)可按人員的某些信息進(jìn)行
5、排序。4)對文件的讀寫使用二進(jìn)制信息。3問題的解決方案根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟:1)應(yīng)用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計(jì);2)分析系統(tǒng)中的各個實(shí)體及它們之間的關(guān)系;3)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次;4)完成類層次中各個類的描述;5)完成類中各個成員函數(shù)的定義;6)完成系統(tǒng)的應(yīng)用模塊;7)功能調(diào)試;8)完成系統(tǒng)總結(jié)報(bào)告。第一章概要設(shè)計(jì)4.1.1系統(tǒng)流程圖4.1.2函數(shù)模塊圖4.第二章詳細(xì)設(shè)計(jì)2.1類設(shè)計(jì)9.2.2函數(shù)設(shè)計(jì)1.1第三章源程序活單與結(jié)果3.1類實(shí)現(xiàn)6.3.2函數(shù)實(shí)現(xiàn)6.3.3主函數(shù)實(shí)現(xiàn).6.第四章調(diào)試與測試234.1模塊測試234.2課程設(shè)
6、計(jì)過程中遇到的問題32參考文獻(xiàn)35第一章概要設(shè)計(jì)1.2函數(shù)模塊圖第二章詳細(xì)設(shè)計(jì)2.1類設(shè)計(jì)此系統(tǒng)共設(shè)計(jì)了九個類:基類(classPerson,實(shí)驗(yàn)員類(classExperimenter,教師類(classTeacher,行政人員類(classStaff,教師兼行政人員類(classTea_Sta基類中有intnum;公用數(shù)據(jù)成員用丁記錄類成員的編號intage;公用數(shù)據(jù)成員用丁記錄類成員的年齡stringname;stringsex;virtualvoidInput();virtualvoidOutput();intGetNum();stringGetName();實(shí)驗(yàn)員類中添加了strin
7、glibrary;stringzw;intchoice2;教師類中添加了stringdepart;stringspec;stringtitle;intchoice1;intchoice2;行政人員類中添加了stringzzmm;stringzc;intchoice2;教師兼行政人員類添加了公用數(shù)據(jù)成員用于記錄類成員的姓名公用數(shù)據(jù)成員用于記錄類成員的性別公有數(shù)據(jù)成員函數(shù)用于輸入成員信息公有數(shù)據(jù)成員函數(shù)用于輸出成員信息公有數(shù)據(jù)成員函數(shù)用于獲得成員編號公有數(shù)據(jù)成員函數(shù)用于獲得成員姓名公有數(shù)據(jù)成員用于記錄類成員的實(shí)驗(yàn)室公有數(shù)據(jù)成員用于記錄類成員的職務(wù)公有數(shù)據(jù)成員用于選擇成員的性別公有數(shù)據(jù)成員用于記錄類
8、成員的部門公有數(shù)據(jù)成員用于記錄類成員的專業(yè)公有數(shù)據(jù)成員用于記錄類成員的職稱公有數(shù)據(jù)成員用于選擇成員的部門公有數(shù)據(jù)成員用于選擇成員的性別公有數(shù)據(jù)成員用于記錄類成員的政治面貌公有數(shù)據(jù)成員用于記錄類成員的任職職稱公有數(shù)據(jù)成員用于選擇成員的性別intchoice1;intchoice2;公有數(shù)據(jù)成員用于選擇成員的部門公有數(shù)據(jù)成員用于選擇成員的性別還有四個功能相同的功能函數(shù)類,其中有Exp_Manage類Tea_Manage類Staf_Manage類Tea_Staf_Manag歐。分別實(shí)現(xiàn)不同的相應(yīng)功能。Tea_StaTeaTMAX;inttop;TMAX為常量,為數(shù)組中可存儲的教師記錄的最大數(shù);top
9、表小當(dāng)前系統(tǒng)中存儲的記錄個數(shù);Tea_Staf_Manage()(top=0;初始時(shí)記錄的個數(shù)為0,所以設(shè)置top=0;voidAdd();voidShow();voidSearch();voidEdit();voidDelete();voidTotal();voidSave();實(shí)現(xiàn)該類記錄的添加;實(shí)現(xiàn)該類所有記錄的顯示;實(shí)現(xiàn)該類記錄的查詢;實(shí)現(xiàn)該類記錄的修改;實(shí)現(xiàn)該類記錄的刪除;實(shí)現(xiàn)該類記錄的統(tǒng)計(jì);將該類記錄保存到文件;voidRead();可從文件中將記錄讀取到該類的數(shù)組中;實(shí)驗(yàn)員、教師、行政人員管理類中函數(shù)都相同,在此略。2.2函數(shù)設(shè)計(jì)在四個管理類中定義了以下相同函數(shù),功能如其后所說v
10、oidAdd();voidShow();voidSearch();voidEdit();voidDelete();voidTotal();voidSave();voidRead();實(shí)現(xiàn)該類記錄的添加;實(shí)現(xiàn)該類所有記錄的顯示;實(shí)現(xiàn)該類記錄的查詢;實(shí)現(xiàn)該類記錄的修改;實(shí)現(xiàn)該類記錄的刪除;實(shí)現(xiàn)該類記錄的統(tǒng)計(jì);將該類記錄保存到文件;可從文件中將記錄讀取到該類的數(shù)組中第三章源程序清單和結(jié)果3.1類實(shí)現(xiàn)對于基類的定義classPersonpublic:intnum;/公用數(shù)據(jù)成員用于記錄類成員的編號intage;/公用數(shù)據(jù)成員用于記錄類成員的年齡stringname;公用數(shù)據(jù)成員用于記錄類成員的姓名st
11、ringsex;/公用數(shù)據(jù)成員用于記錄類成員的性別public:Person(intn=0,stringnm="",strings="",inta=0):num(n),name(nm),sex(s),age(a);virtualvoidInput();virtualvoidOutput();intGetNum()(returnnum;/公有數(shù)據(jù)成員函數(shù)用于獲得成員編號stringGetName()(returnname;/公有數(shù)據(jù)成員函數(shù)用于獲得成員姓名;對實(shí)驗(yàn)員派生類的定義classExperimenter:publicPerson(public:st
12、ringlibrary;公有數(shù)據(jù)成員用于記錄類成員的實(shí)驗(yàn)室stringzw;/公有數(shù)據(jù)成員用于記錄類成員的職務(wù)intchoice2;/公有數(shù)據(jù)成員用于選擇成員的性別public:Experimenter(intn=0,stringnm="",strings="男",inta=0,stringl="",stringz=""):Person(num,name,sex,age),library(l),zw(z)(;voidInput()/成員函數(shù)用于輸入成員信息voidOutput()/成員函數(shù)用于輸出成員信息;對于教師
13、派生類的定義classTeacher:virtualpublicPerson(public:stringdepart;公有數(shù)據(jù)成員用于記錄類成員的部門stringspec;公有數(shù)據(jù)成員用于記錄類成員的專業(yè)stringtitle;公有數(shù)據(jù)成員用于記錄類成員的職稱intchoice1;公有數(shù)據(jù)成員用于選擇成員的部門intchoice2;公有數(shù)據(jù)成員用于選擇成員的性別public:Teacher(intn=0,stringnm="",strings="男",inta=0,stringd="電子系",stringsp=""
14、,stringt=""):Person(n,nm,s,a),depart(d),spec(sp),title(t)(;voidInput()成員函數(shù)用于輸入成員信息voidOutput()成員函數(shù)用于輸出成員信息對于行政人員派生類的定義classStaff:virtualpublicPerson(public:stringzzmm;stringzc;intchoice2;公有數(shù)據(jù)成員用于記錄類成員的政治面貌/公有數(shù)據(jù)成員用于記錄類成員的任職職稱/公有數(shù)據(jù)成員用于選擇成員的性別public:Staff(intn=0,stringnm="",strings=
15、"男",inta=0,stringz="",stringzc=""):Person(n,nm,s,a),zzmm(z),zc(zc)(;voidInput()成員函數(shù)用于輸入成員信息voidOutput()成員函數(shù)用于輸出成員信息;classTea_Sta:publicTeacher,publicStaff(public:intchoice1;對于教師兼行政人員類的定義/公有數(shù)據(jù)成員用于選擇成員的部門intchoice2;公有數(shù)據(jù)成員用于選擇成員的性別Tea_Sta(intn=0,stringnm="",strin
16、gs="男",inta=0,stringd="電子系",stringsp="",stringt="",stringz="",stringzc=""):Person(n,nm,s,a),Teacher(n,nm,s,a,sp,t),Staff(n,nm,s,a,z,zc)(;voidInput()成員函數(shù)用于輸入成員信息voidOutput()成員函數(shù)用于輸出成員信息;對于在四個管理類中函數(shù)功能都相同,以教師類為例classTea_Manage(/TMAX為常量,為數(shù)組中可存儲
17、的教師記錄的最大數(shù);/top表示當(dāng)前系統(tǒng)中存儲的記錄個數(shù);TeacherTeaTMAX;inttop;初始時(shí)記錄的個數(shù)為0,所以設(shè)置top=0;實(shí)現(xiàn)該類記錄的添加;實(shí)現(xiàn)該類所有記錄的顯示;實(shí)現(xiàn)該類記錄的查詢;/實(shí)現(xiàn)該類記錄的修改;實(shí)現(xiàn)該類記錄的刪除;/實(shí)現(xiàn)該類記錄的統(tǒng)計(jì);public:Tea_Manage()top=0;voidAdd();voidShow();voidSearch();voidEdit();voidDelete();voidTotal();voidSave();將該類記錄保存到文件;voidRead();可從文件中將記錄讀取到該類的數(shù)組中;3.2函數(shù)實(shí)現(xiàn)對于在四個管理類中定義
18、了相同的函數(shù),以教師類為例添加功能:程序能夠任意添加上述四類人員的記錄,可提供選擇界面供用戶選擇所要添加的人員類別,要求員工的編號要唯一,如果添加了重復(fù)編號的記錄時(shí),則提示數(shù)據(jù)添加重復(fù)并取消添加voidTea_Manage:Add()(if(top>=TMAX)(cout<<”用戶已滿"<<endl;return;Teachert;cout<<"輸入新添加的人員的信息"<<endl;t.Input();for(inti=0;i<top;i+)if(t.GetNum()=Teai.GetNum()(cout
19、<<"該編號的人員已存在"<<endl;return;Teatop=t;top=top+1;cout<<"添加成功!"<<endl;顯示功能:可顯示當(dāng)前系統(tǒng)中所有記錄,每條記錄占據(jù)一行。voidTea_Manage:Show()(if(top=0)(cout<<"無數(shù)據(jù)!"<<endl;return;cout<<setw(10)<<"編號"<<setw(10)<<"姓名"<
20、;<setw(10)<<"性別”<<setw(10)<<"年齡"<<setw(10)<<"系部”<<setw(10)<<”專業(yè)"<<setw(10)<<"職稱"<<endl;for(inti=0;i<top;i+)Teai.Output();查詢功能:可根據(jù)編號、姓名等信息對已添加的記錄進(jìn)行查詢,如果未找到,給出相應(yīng)的提示信息,如果找到,則顯示相應(yīng)的記錄信息。voidTea_Manage:Sea
21、rch()if(top=0)cout<<"當(dāng)前系統(tǒng)中沒有存儲記錄"<<endl;return;intchoice;cout<<"請選擇查找方式:1.按編號查找2.按姓名查找."<<endl;cin>>choice;switch(choice)case1:cout<<"請輸入要查找的編號:"<<endl;intnum;cin>>num;for(inti=0;i<top;i+)if(Teai.GetNum()=num)(Teai.Outp
22、ut();return;cout<<"查無此人!"<<endl;break;case2:cout<<"請輸入要查找的姓名"<<endl;stringname;cin>>name;for(inti=0;i<top;i+)if(Teai.GetName()=name)Teai.Output();for(i=0;i<top;i+)if(Teai.GetName()=name)return;cout<<"查無此人!"<<endl;break;def
23、ault:cout<<"無此選項(xiàng)!請重試!"<<endl;break;voidTea_Manage:Edit()if(top=0)cout<<"當(dāng)前系統(tǒng)中沒有存儲記錄!"<<endl;return;intnum;cout<<"請輸入要查找的教編號:"<<endl;cin>>num;for(inti=0;i<top;i+)(if(Teai.GetNum()=num)(cout<<”對對這位教師的信息進(jìn)行修改:"<<
24、endl;Teai.Input();cout<<"修改成功"<<endl;return;cout<<"查無此人"<<endl;刪除功能:主要實(shí)現(xiàn)對已添加的人員記錄進(jìn)行刪除。如果當(dāng)前系統(tǒng)中沒有相應(yīng)的人員記錄,則提示“記錄為空!”并返回操作;否則,輸入要刪除的人員的編號或姓名,根據(jù)所輸入的信息刪除該人員記錄,如果沒有找到該人員信息,則提示相應(yīng)的記錄不存。voidTea_Manage:Delete()(if(top=0)(cout<<"當(dāng)前系統(tǒng)中沒有存儲記錄!"<<en
25、dl;return;cout<<"1、按編號查找刪除2、按姓名查找刪除"<<endl;intchoice;cin>>choice;switch(choice)(case1:(cout<<"請輸入編號:"intnum;cin>>num;for(inti=0;i<top;i+)if(num=Teai.num)cout<<"是否確認(rèn)刪除?1、是2、否"<<endl;intchoice;cin>>choice;switch(choice)(c
26、ase1:(for(intj=i;j<top-1;j+)Teaj=Teaj+1;cout<<"刪除成功!"<<endl;top-;break;case2:return;default:cout<<"無此項(xiàng),失?。?quot;<<endl;break;return;cout<<"無此人!"<<endl;break;case2:(cout<<"請輸入姓名:"stringname;cin>>name;for(inti=0;i<
27、;top;i+)(if(name=T)(cout<<"是否確認(rèn)刪除?1、是2、否"<<endl;intchoice;cin>>choice;switch(choice)(case1:(for(intj=i;j<top-1;j+)Teaj=Teaj+1;cout<<"刪除成功!"<<endl;top-;break;case2:return;default:cout<<"無此項(xiàng),失敗!"<<endl;break;return;cout
28、<<"無此人!"<<endl;break;default:cout<<"沒有此項(xiàng),失?。?quot;<<endl;break;統(tǒng)計(jì)功能:能根據(jù)多種參數(shù)進(jìn)行人員的統(tǒng)計(jì)。例如,統(tǒng)計(jì)類中人員數(shù)量以及總數(shù),或者統(tǒng)計(jì)男、女員工的數(shù)量,不同部門員工數(shù)量等。voidTea_Manage:Total()(cout<<"1按人數(shù)統(tǒng)計(jì)2按性別統(tǒng)計(jì)3按系別統(tǒng)計(jì)"<<endl;intchoice;cout<<"請輸入你的選擇"<<endl;cin>
29、>choice;switch(choice)(case1:cout<<'教師類人數(shù)為:"<<top<<endl;break;case2:(inta=0,b=0;for(inti=0;i<top;i+)(if(Teai.sex="男")a+;if(Teai.sex="女”)b+;cout<<"男教師人數(shù)為"<<a<<endl;cout<<"女教師人數(shù)為"<<b<<endl;break;cas
30、e3:inta1=0,a2=0,a3=0,a4=0,a5=0,a6=0,a7=0,a8=0,a9=0;for(inti=0;i<top;i+)if(Teai.depart="電子系")a1+;if(Teai.depart="機(jī)械系")a2+;if(Teai.depart="經(jīng)管系")a3+;if(Teai.depart="建工系")a4+;if(Teai.depart="計(jì)算機(jī)系")a5+;if(Teai.depart="外語系")a6+;if(Teai.depart=
31、"財(cái)會系")a7+;if(Teai.depart="材料系")a8+;if(Teai.depart="文法系")a9+;cout<<"電子系教師人數(shù)為"<<a1<<endl;cout<<"機(jī)械系教師人數(shù)為"<<a2<<endl;cout<<"經(jīng)管系教師人數(shù)為"<<a3<<endl;cout<<"建工系教師人數(shù)為"<<a4<
32、;<endl;cout<<"計(jì)算機(jī)系教師人數(shù)為"<<a5<<endl;cout<<"外語系教師人數(shù)為"<<a6<<endl;cout<<"財(cái)會系教師人數(shù)為"<<a7<<endl;cout<<"材料系教師人數(shù)為"<<a8<<endl;cout<<"文法系教師人數(shù)為"<<a9<<endl;break;default:
33、cout<<"輸入錯誤。請重新輸入"<<endl;break;保存功能:可將當(dāng)前系統(tǒng)中各類人員記錄存入文件中,存入方式任意voidTea_Manage:Save()ofstreamout("D:ying2.txt",ios:out);if(!out)(cout<<"打開失敗!"<<endl;return;cout<<"打開成功!"<<endl;for(inti=0;i<top;i+)(out<<Teai.num<<
34、""<<T<<""<<Teai.sex<<""<<Teai.age<<""<<Teai.depart<<""<<Teai.spec<<""<<Teai.title<<endl;cout<<"寫入成功!"<<endl;out.close();讀取功能:可將保存在文件中的人員信息
35、讀入到當(dāng)前系統(tǒng)中,供用戶進(jìn)行使用。voidTea_Manage:Read()(ifstreamin("D:ying2.txt",ios:in);if(!in)(cout<<"打開失敗!"<<endl;return;inti=0;while(in>>Teai.num>>T>>Teai.sex>>Teai.age>>Teai.depart>>Teai.spec>>Teai.title)(Teai.Output();i+;top+;in.
36、close();教師函數(shù)主界面的定義voidTeaMenu()(Tea_Managet;intchoice;while(choice!=0)(cout<<"n*教帥管理*"<<endl;cout<<"+"<<endl;cout<<"|"<<endl;cout<<"|1.添加2.查找3.修改4.刪除5.顯示6.保存7.讀取8.統(tǒng)計(jì)0=>退出|"<<endl;cout<<"|"<&
37、lt;endl;cout<<"+"<<endl;cout<<"n輸入您操作的選項(xiàng):"cin>>choice;switch(choice)(case1:t.Add();break;case2:t.Search();break;case3:t.Edit();break;case4:t.Delete();break;case5:t.Show();break;case6:t.Save();break;case7:t.Read();break;case8:t.Total();break;case0:cout<&
38、lt;"退出成功!"<<endl;break;default:cout<<"無此選項(xiàng)!請重試!"<<endl;break;系統(tǒng)主菜單函數(shù)定義,根據(jù)不同人選擇不同的子系統(tǒng)intmain()cout<<"*歡迎進(jìn)入北華航天工業(yè)學(xué)院人員管理系統(tǒng)*"<<endl;intchoice;*主菜單*n"<<endl;docout<<"cout<<"<<<<<<<<<<
39、;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"<<endl;cout<<"|"<<endl;cout<<"|1=>實(shí)驗(yàn)員管理2=>教師管理3=>行政管理4=教師行政管理0=>退出
40、系統(tǒng)|"<<endl;cout<<"|"<<endl;cout<<">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"<
41、<endl;cout<<"n請輸入您的選擇:"cin>>choice;switch(choice)case1:ExpMenu();break;case2:TeaMenu();break;case3:StafMenu();break;case4:Tea_StafMenu();break;case0:cout<<"n您已安全退出系統(tǒng)."<<endl;break;default:cout<<"n沒有此選項(xiàng).請重選."<<endl;break;while(choic
42、e!=0);cout<<"n*歡迎您下次再使用本系統(tǒng)!*"<<endl;return0;3.3主函數(shù)實(shí)現(xiàn)#include<iostream>#include<string>#include<fstream>#include<iomanip>constintTMAX=50;usingnamespacestd;intmain()cout<<"*歡迎進(jìn)入北華航天工業(yè)學(xué)院人員管理系統(tǒng)*"<<endl;intchoice;docout<<"*主菜單
43、*n"<<endl;cout<<"<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"<<endl;cout<<"|"&
44、lt;<endl;cout<<"|1=>實(shí)驗(yàn)員管理2=>教師管理3=>行政管理4=教師行政管理0=>退出系統(tǒng)|"<<endl;cout<<"|"<<endl;cout<<">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
45、>>>>>>>>>>>>>>>>>"<<endl;cout<<"n請輸入您的選擇:";cin>>choice;switch(choice)case1:ExpMenu();break;case2:TeaMenu();break;case3:StafMenu();break;case4:Tea_StafMenu();break;case0:cout<<"n您已安全退出系統(tǒng)."<<endl;
46、break;default:cout<<"n沒有此選項(xiàng).請重選."<<endl;break;*歡迎您下次再使用本系統(tǒng)!*"<<endl;while(choice!=0);cout<<"nreturn0;第四章調(diào)試與測試4.1模塊測試(由丁實(shí)驗(yàn)員類,教師類,行政人員類,教師兼行政人員類系統(tǒng)功能一樣,在此以教帥類為例)1.添加模塊(輸入正確添加信息)圖41正確添加界面2.查找模塊正確編號查找2正確編號查找界面3.刪除模塊(正確編號刪除)顯示模塊m*F:LY、課Debugzhangxiangyine-exe*教師
47、言理!L添加2-查找3.修改4,刪除S,顯示&_保存謨職&統(tǒng)計(jì)退出:S名;3.,姓項(xiàng)選女女性122隼系系系子胃電圖45顯示信息界面4. 保存模塊5. 圖46保存信息界面讀取模塊*F:LDebugzhangxiangying.exe*一教師管理*+*+$#*+*+#*I!添加2.查找3.修改4-刪除5.顯示6保存7.謨?nèi)?.統(tǒng)計(jì)®=>退出iII|>+前入您操作的選項(xiàng):?122系系系子黑1221226. 統(tǒng)計(jì)模塊(類內(nèi)人數(shù)統(tǒng)計(jì))W-F:LY、課DEbugzhangxiangying*cxe*教師管理*哥!L添加2-查找3.修改4,刪除S,顯示保存謨職&
48、統(tǒng)計(jì)退出:爐瓢項(xiàng)肩孺入你的選桂2技性別統(tǒng)計(jì)3技系別統(tǒng)計(jì)散師類人數(shù)為,3圖4-8類內(nèi)人數(shù)統(tǒng)計(jì)界面(性別統(tǒng)計(jì))圖4-9性別統(tǒng)計(jì)界面(系別統(tǒng)計(jì))寂'F:LY課設(shè)DebuezhangxiaiiEyinE.exe*教師管理e+#+#+4-+*+*+#+#+L添加2-查找3,修改4,刪除八顯示6-保存Li夷取8.統(tǒng)計(jì)0=>M出+<<<-+<+*+*+*<<+*-*#+技性別統(tǒng)計(jì)3技系別統(tǒng)計(jì)0120W?0000為為為為數(shù)為為為為數(shù)數(shù)數(shù)數(shù)人數(shù)數(shù)數(shù)數(shù)人人人人師人人人人師巾頁幣系系系系機(jī)系系系系孑藥5幕科往圖5-10系別統(tǒng)計(jì)界面4.2課程設(shè)計(jì)過程中遇到的問題遇到的
49、問題:1. 開始編寫程序時(shí),不知道如何將這些功能進(jìn)行實(shí)現(xiàn);2. 添加新成員時(shí)未考慮到編號能否重復(fù);3. 查詢時(shí)未考慮到進(jìn)行多條件查詢;4. 完成讀取函數(shù)后,不知道如何調(diào)用;5. 應(yīng)用數(shù)組形式編寫程序時(shí),應(yīng)考慮盡量大的分配空間;解決辦法:通過參考大量資料和老師的輔導(dǎo),函數(shù)功能的實(shí)現(xiàn)通過switch語句在主菜單進(jìn)行操作來實(shí)現(xiàn);添加新成員時(shí)首先通過編號進(jìn)行查詢,來說明編號不重復(fù),查詢后若編號存在則提示“該人員已存在”若不存在則進(jìn)行添加;查詢時(shí)可以通過編號和姓名兩種途徑實(shí)現(xiàn);讀取函數(shù)編寫完畢后,可通過主菜單的操作來實(shí)現(xiàn)信息的讀??;參考文獻(xiàn)耿祥義,張躍平.JSP實(shí)用教程.北京:活華大學(xué)出版社,2003王
50、珊,薩帥炫.數(shù)據(jù)庫系統(tǒng)概論.北京:高等教育出版社,2006李春葆.C+語言一一習(xí)題與解析.北京:活華大學(xué)出版社,2001張?jiān)佬?VisualC+程序設(shè)計(jì)基礎(chǔ).蘇州:蘇州大學(xué)出版社,2000陳活華,朱紅.VisualC+玳序設(shè)計(jì)案例精選與編程指導(dǎo).南京:東南大學(xué)出版社,2003祁云嵩.VisualC+程序設(shè)計(jì).南京:東南大學(xué)出版社,2003周靄如,林偉健.C+程序設(shè)計(jì)基礎(chǔ).北京:電子工業(yè)出版社,2003譚浩強(qiáng).C程序設(shè)計(jì).北京:活華大學(xué)出版社,2005譚浩強(qiáng).C+面向?qū)ο蟪绦蛟O(shè)計(jì).北京:活華大學(xué)出版社,2006Decoder.C/C+程序設(shè)計(jì).北京:中國鐵道出版社,2002附錄代碼#includ
51、e<iostream>#include<string>#include<fstream>#include<iomanip>constintTMAX=50;usingnamespacestd;classPersonpublic:intnum;stringname;stringsex;intage;public:Person(intn=0,stringnm="",strings="",inta=0):num(n),name(nm),sex(s),age(a);virtualvoidInput();virtual
52、voidOutput();intGetNum()returnnum;stringGetName()(returnname;;classTeacher:virtualpublicPerson(public:stringdepart;stringspec;stringtitle;intchoice1;intchoice2;public:Teacher(intn=0,stringnm="",strings="男",inta=0,stringd="電子系",stringsp="”,stringt=""):Pers
53、on(n,nm,s,a),depart(d),spec(sp),title(t)(;voidInput()(cout<<"inputthenum"<<endl;cin>>num;cout<<"inputthename"<<endl;cin>>name;cout<<"inputthesex"cout<<"(1.男2.女)"<<endl;cout<<”請輸入你的選擇"<<endl
54、;cin>>choice2;switch(choice2)(case1:sex="break;case2:sex=c"break;default:cout<<"輸入錯誤。"<<endl;break;cout<<"inputtheage"<<endl;cin>>age;cout<<"inputthedepart"<<endl;cout<<setw(10)<<”1.電子系”<<setw(1
55、0)<<”2.機(jī)械系”<<setw(10)<<”3.經(jīng)管系"<<setw(10)<<"4.建工系"<<setw(10)<<"5.計(jì)算機(jī)系"<<setw(10)<<"6.外語系"<<setw(10)<<"7.財(cái)會系"<<setw(10)<<"8.材料系<<setw(10)<<"9.文法系"<&l
56、t;endl;cout<<"請輸入你的選擇"<<endl;cin>>choice1;switch(choice1)case1:depart=咆子系"break;case2:depart=機(jī)械系"break;case3:depart=經(jīng)管系"break;case4:depart=建工系"break;case5:depart=算機(jī)系"break;case6:depart=外語系"break;case7:depart=財(cái)會系"break;case8:depart=材料系&qu
57、ot;break;case9:depart=義法系"break;default:cout<<"輸入錯誤。"<<endl;break;cout<<"inputthespec"<<endl;cin>>spec;cout<<"inputthetitle"<<endl;cin>>title;voidOutput()cout<<setw(10)<<num<<setw(10)<<name<
58、<setw(10)<<sex<<setw(10)<<age<<setw(10)<<depart<<setw(10)<<spec<<setw(10)<<title<<endl;classStaff:virtualpublicPerson(public:stringzzmm;stringzc;intchoice2;public:Staff(intn=0,stringnm="",strings="男",inta=0,stringz=&q
59、uot;",stringzc=""):Person(n,nm,s,a),zzmm(z),zc(zc)(;voidInput()(cout<<"inputthenum"<<endl;cin>>num;cout<<"inputthename"<<endl;cin>>name;cout<<"inputthesex"cout<<"(1.男2.女)"<<endl;cout<<”
60、請輸入你的選擇"<<endl;cin>>choice2;switch(choice2)(case1:sex="break;case2:sex=c"break;default:cout<<"輸入錯誤。"<<endl;break;cout<<"inputtheage"<<endl;cin>>age;cout<<"inputthezzmm"<<endl;cin>>zzmm;cout<&l
61、t;"inputthezc"<<endl;cin>>zc;voidOutput()(cout<<setw(10)<<num<<setw(10)<<name<<setw(10)<<sex<<setw(10)<<age<<setw(10)<<zzmm<<setw(10)<<zc<<endl;;classExperimenter:publicPerson(public:stringlibrary;str
62、ingzw;intchoice2;public:Experimenter(intn=0,stringnm="",strings="男",inta=0,stringl="",stringz=""):Person(num,name,sex,age),library(l),zw(z)(;voidInput()(cout<<"inputthenum"<<endl;cin>>num;cout<<"inputthename"<<
63、endl;cin>>name;cout<<"inputthesex"cout<<"(1.男2.女)"<<endl;cout<<”請輸入你的選擇"<<endl;cin>>choice2;switch(choice2)(case1:sex="break;case2:sex=c"break;default:cout<<"輸入錯誤。"<<endl;break;cout<<"inputt
64、heage"<<endl;cin>>age;cout<<"inputthelibrary"<<endl;cin>>library;cout<<"inputthezw"<<endl;cin>>zw;voidOutput()cout<<setw(10)<<num<<setw(10)<<name<<setw(10)<<sex<<setw(10)<<age<
65、<setw(10)<<library<<setw(10)<<zw<<endl;classTea_Sta:publicTeacher,publicStaffpublic:intchoice1;intchoice2;Tea_Sta(intn=0,stringnm="",strings="男",inta=0,stringd="電子系",stringsp="",stringt="",stringz="",stringzc=&quo
66、t;"):Person(n,nm,s,a),Teacher(n,nm,s,a,sp,t),Staff(n,nm,s,a,z,zc);voidInput()cout<<"inputthenum"<<endl;cin>>num;cout<<"inputthename"<<endl;cin>>name;cout<<"inputthesex"cout<<"(1.男2.女)"<<endl;cout<&l
67、t;”請輸入你的選擇"<<endl;cin>>choice2;switch(choice2)case1:sex="break;case2:sex=c"break;default:cout<<"輸入錯誤。"<<endl;break;cout<<"inputtheage"<<endl;cin>>age;cout<<"inputthedepart"<<endl;cout<<setw(10)&l
68、t;<"1.電子系"<<setw(10)<<"2.機(jī)械系"<<setw(10)<<"3.經(jīng)管系<<setw(10)<<"4.建工系"<<setw(10)<<"5.計(jì)算機(jī)系"<<setw(10)<<"6.外語系"<<setw(10)<<"7.財(cái)會系"<<setw(10)<<"8.材料系&
69、lt;<setw(10)<<"9.文法系"<<endl;cout<<"請輸入你的選擇"<<endl;cin>>choice1;switch(choice1)case1:depart=咆子系"break;case2:depart=機(jī)械系"break;case3:depart=經(jīng)管系"break;case4:depart=建工系"break;case5:depart算機(jī)系"break;case6:depart=外語系"break;ca
70、se7:depart=財(cái)會系"break;case8:depart=材料系"break;case9:depart=義法系"break;default:cout<<"輸入錯誤。"<<endl;break;cout<<"inputthespec"<<endl;cin>>spec;cout<<"inputthetitle"<<endl;cin>>title;cout<<"inputthezzmm
71、"<<endl;cin>>zzmm;cout<<"inputthezc"<<endl;cin>>zc;voidOutput()(cout<<setw(10)<<num<<setw(10)<<name<<setw(10)<<sex<<setw(10)<<age<<setw(10)<<depart<<setw(10)<<spec<<setw(10)<
72、<title<<setw(10)<<zzmm<<setw(10)<<zc<<endl;classExp_Manage(ExperimenterTeaTMAX;/TMAX為常量,為數(shù)組中可存儲的教師記錄的最大數(shù);inttop;/top表示當(dāng)前系統(tǒng)中存儲的記錄個數(shù);public:Exp_Manage()top=0;/初始時(shí)記錄的個數(shù)為0,所以設(shè)置top=0;voidAdd();實(shí)現(xiàn)該類記錄的添加;voidShow();實(shí)現(xiàn)該類所有記錄的顯示;voidSearch();實(shí)現(xiàn)該類記錄的查詢;voidEdit();實(shí)現(xiàn)該類記錄的修改;vo
73、idDelete();實(shí)現(xiàn)該類記錄的刪除;voidTotal();實(shí)現(xiàn)該類記錄的統(tǒng)計(jì);voidSave();將該類記錄保存到文件;voidRead();可從文件中將記錄讀取到該類的數(shù)組中;;voidExp_Manage:Add()if(top>=TMAX)cout<<"用戶已滿"<<endl;return;Experimentert;cout<<"輸入新添加的人員的信息"<<endl;t.Input();for(inti=0;i<top;i+)if(t.GetNum()=Teai.GetNum(
74、)cout<<"該編號的人員已存在"<<endl;return;Teatop=t;top=top+1;cout<<"添加成功!"<<endl;voidExp_Manage:Show()if(top=0)cout<<"無數(shù)據(jù)!"<<endl;return;cout<<setw(10)<<"編號"<<setw(10)<<"姓名"<<setw(10)<<"性別”<<setw(10)<<"年齡"<<s
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 44860-2024面向工業(yè)應(yīng)用的邊緣計(jì)算應(yīng)用指南
- 浙江省溫州市新希望聯(lián)盟2024-2025學(xué)年上學(xué)期八年級期中考試數(shù)學(xué)試卷
- 高中生物 第6章 第4節(jié) 細(xì)胞的癌變教案 新人教版必修1
- 廣東省肇慶市高中數(shù)學(xué) 第二章 隨機(jī)變量及其分布 2.4 正態(tài)分布教案 新人教A版選修2-3
- 八年級生物上冊 7.19.2植物的生長發(fā)育教案 (新版)蘇科版
- 2023六年級數(shù)學(xué)上冊 五 完美的圖形-圓信息窗3 圓的面積第1課時(shí)教案 青島版六三制
- 湖南省醴陵市七年級地理上冊 5.2 國家經(jīng)濟(jì)合作教案 (新版)湘教版
- 2023一年級數(shù)學(xué)上冊 8 20以內(nèi)的進(jìn)位加法第6課時(shí) 解決問題(2)教案 新人教版
- 2024-2025學(xué)年高中歷史 第3單元 古代中國的科學(xué)技術(shù)與文學(xué)藝術(shù)單元小結(jié)與測評教案 新人教版必修3
- 租用空調(diào)合同模板(2篇)
- 江西省南昌市2024-2025學(xué)年八年級上學(xué)期11月期中語文試題(含答案)
- 道德與法治八上八上8.2《堅(jiān)持國家利益至上》教學(xué)設(shè)計(jì)
- GB/T 42455.2-2024智慧城市建筑及居住區(qū)第2部分:智慧社區(qū)評價(jià)
- 2024年認(rèn)證行業(yè)法律法規(guī)及認(rèn)證基礎(chǔ)知識
- 2024廣西專業(yè)技術(shù)人員繼續(xù)教育公需科目參考答案(97分)
- YYT 0653-2017 血液分析儀行業(yè)標(biāo)準(zhǔn)
- 江蘇省建筑與裝飾工程計(jì)價(jià)定額(2014)電子表格版
- 新時(shí)代中小學(xué)思政課一體化建設(shè)探究
- 刑事受害人授權(quán)委托書范本
- 《文明上網(wǎng)健康成長》的主題班會
- 電工基礎(chǔ)(周紹敏主編)-參考答案
評論
0/150
提交評論