




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、xx大學(xué) 軟件設(shè)計(jì)基礎(chǔ)-C+課程設(shè)計(jì)報(bào)告設(shè)計(jì)名稱: 高校人事管理系統(tǒng) 姓 名: 學(xué) 號(hào): 專業(yè)班級(jí): 學(xué) 院: 設(shè)計(jì)時(shí)間: 設(shè)計(jì)地點(diǎn): 成績(jī):指導(dǎo)教師評(píng)語(yǔ): 指導(dǎo)教師簽字: 年 月 日軟件設(shè)計(jì)基礎(chǔ)-C+課程設(shè)計(jì)報(bào)告 第 PAGE 18 頁(yè),共 NUMPAGES 18 頁(yè)目 錄1.課程設(shè)計(jì)目的32.課程設(shè)計(jì)任務(wù)與要求33.課程設(shè)計(jì)說(shuō)明書44.課程設(shè)計(jì)成果75.程序調(diào)試過(guò)程146.設(shè)計(jì)問(wèn)題的不足和改進(jìn)方案157.課程設(shè)計(jì)心得168.參考文獻(xiàn)171課程設(shè)計(jì)目的軟件設(shè)計(jì)基礎(chǔ)-C+課程設(shè)計(jì)是這門課程的實(shí)踐性教學(xué)環(huán)節(jié)之一,本次設(shè)計(jì)結(jié)合實(shí)際應(yīng)用的要求,使課程設(shè)計(jì)既覆蓋C+的知識(shí)點(diǎn),又接近工程實(shí)際需要。目的是
2、通過(guò)課程設(shè)計(jì)的綜合訓(xùn)練,培養(yǎng)學(xué)生實(shí)際分析問(wèn)題、解決問(wèn)題的能力,以及編程和動(dòng)手能力,最終目標(biāo)是通過(guò)課程設(shè)計(jì)這種形式,幫助學(xué)生系統(tǒng)掌握C+這門課程的主要內(nèi)容,養(yǎng)成良好的編程習(xí)慣,更好的完成教學(xué)任務(wù)。2課程設(shè)計(jì)任務(wù)與要求:要求:本次課程設(shè)計(jì)利用軟件設(shè)計(jì)基礎(chǔ)-C+課程中所學(xué)到的編程知識(shí)和編程技巧,完成具有一定難度和工作量的程序設(shè)計(jì)題目,幫助學(xué)生掌握編程、調(diào)試的基本技能,獨(dú)立完成所布置的任務(wù)。要求:1、對(duì)系統(tǒng)進(jìn)行功能需求分析2、設(shè)計(jì)合理的數(shù)據(jù)結(jié)構(gòu)和系統(tǒng)框架3、編程簡(jiǎn)練,程序功能齊全,能正確運(yùn)行4、說(shuō)明書、流程圖要清楚5、課題完成后必須按要求提交課程設(shè)計(jì)報(bào)告任務(wù):某高校,主要人員有:在職人員(行政人員、教
3、師、一般員工)、退休人員、返聘人員和臨時(shí)工。現(xiàn)在,需要存儲(chǔ)這些人員的人事檔案信息:編號(hào)、姓名、性別、年齡、職務(wù)、職稱、政治面貌、最高學(xué)歷、任職時(shí)間、來(lái)院時(shí)間。(1)添加刪除功能:能根據(jù)高校人事的變動(dòng)情況,添加刪除記錄;(2)查詢功能:能根據(jù)編號(hào)和姓名進(jìn)行查詢;(3)編輯功能(高級(jí)):根據(jù)查詢對(duì)相應(yīng)的記錄進(jìn)行修改,并存儲(chǔ);(4)統(tǒng)計(jì)功能:能根據(jù)多種參數(shù)進(jìn)行人員的統(tǒng)計(jì)(在職人數(shù)、黨員人數(shù)、女工人數(shù)、高學(xué)歷人數(shù));(5)保存功能:能對(duì)輸入的數(shù)據(jù)進(jìn)行相應(yīng)的存儲(chǔ),要求重載插入和提取符以完成數(shù)據(jù)的保存和打開。(6)人員編號(hào)在生成人員信息時(shí)同時(shí)生成,每輸入一個(gè)人員信息編號(hào)順序加1。3課程設(shè)計(jì)說(shuō)明書 = 1
4、* GB2 概要設(shè)計(jì)模塊說(shuō)明:高校人事管理系統(tǒng)的設(shè)計(jì)程序共包括七個(gè)模塊,分別是添加并保存模塊、刪除模塊、修改模塊、查詢模塊、統(tǒng)計(jì)模塊、顯示模塊、退出系統(tǒng)模塊。我所做的是前三個(gè)模塊,通過(guò)程序中數(shù)據(jù)類型和函數(shù)用類來(lái)實(shí)現(xiàn),人員類person,定義了相應(yīng)的構(gòu)造函數(shù)和構(gòu)造函數(shù)的重載以及一些成員函數(shù)。此外還利用switch語(yǔ)句、if函數(shù)、while循環(huán)等。模塊結(jié)構(gòu)圖:高校人士管理系統(tǒng)刪除人員信息修改人員信息查詢?nèi)藛T信息統(tǒng)計(jì)人員信息顯示所有信息 退出添加人員并保存 = 2 * GB2 詳細(xì)設(shè)計(jì) 總體流程圖:選擇要修改的人員信息運(yùn)行選擇要?jiǎng)h除的人員信息管理系統(tǒng)主頁(yè)面分別輸入要輸入的人員信息刪除之后添加完最后一
5、項(xiàng)之后修改完之后各功能模塊流程圖:(1)添加人員信息功能:能根據(jù)人事的變動(dòng)情況,添加記錄;姓名人員類型1添加人員信息并保存并保存bibingbaocun職務(wù)性別年齡職稱政治面貌最高學(xué)歷任職時(shí)間來(lái)院時(shí)間主頁(yè)面(2)刪除人員信息功能:能根據(jù)人事的變動(dòng)情況,刪除記錄;2刪除人員信息主頁(yè)面刪除信息人員的編號(hào)(3)編輯功能:根據(jù)查詢對(duì)相應(yīng)的記錄進(jìn)行修改,并存儲(chǔ);修改的項(xiàng)目的代號(hào)修改的人的編號(hào)3修改人員信息并保存bibingbaocun人員的新的信息修改完畢主頁(yè)面4課程設(shè)計(jì)成果源程序代碼#include#include/文件流,數(shù)據(jù)流輸入輸出#include #include/參數(shù)化輸入輸出是setw()
6、函數(shù)的頭文件using namespace std;int k;class person /人員基本信息/人員類 似有數(shù)據(jù)成員private: char num10; /序號(hào)/ char type20; /編號(hào)/ char name20; /姓名/ char sex10; /性別/ char age10; /年齡/ char zhiwu20; /職務(wù)/ char zhichen20; /職稱/ char zzmm20; /政治面貌/ char zgxl20; /最高學(xué)歷/ char rzsj20; /任職時(shí)間/ char lysj30; /來(lái)院時(shí)間/ static int bianhao;pu
7、blic:/構(gòu)造函數(shù)一 void setperson(char *type1,char *name1,char *sex1,char *age1,char *zhiwu1, char *zhichen1,char *zzmm1,char *zgxl1,char *rzsj1,char *lysj1); static int& getbianhao() return bianhao; char * gettype() return type; char * getname() return name; char * getsex() return sex; char * getage() ret
8、urn age; char * getzhiwu() return zhiwu; char * getzhichen() return zhichen; char * getzzmm() return zzmm; char * getzgxl() return zgxl; char * getrzsj() return rzsj; char * getlysj() return lysj; char * getnum() return num; void tjry(); void find(); /查找匹配信息/ void output(); /輸出/ void shancu(); /刪除/
9、void xiugai(); /修改/ void tongji(); /統(tǒng)計(jì)/;person p100;person pp100;int k1;int person:bianhao=0;/構(gòu)造函數(shù)二void person:setperson(char *type1,char *name1,char *sex1,char *age1,char *zhiwu1, char *zhichen1,char *zzmm1,char *zgxl1,char *rzsj1,char *lysj1)/*某高校,主要人員有:在職人員(行政人員、教師、一般員工)、退休人員、返聘人員和臨時(shí)工。 現(xiàn)在,需要存儲(chǔ)這些人
10、員的人事檔案信息:編號(hào)、姓名、性別、年齡、職務(wù)、職稱、政治面貌、最高學(xué)歷、任職時(shí)間、來(lái)院時(shí)間。 int static j=1; strcpy(type,type1); /字符串的拷貝 strcpy(name,name1); strcpy(sex,sex1); strcpy(age,age1); strcpy(zhiwu,zhiwu1); strcpy(zhichen,zhichen1); strcpy(zzmm,zzmm1); strcpy(zgxl,zgxl1); strcpy(rzsj,rzsj1); strcpy(lysj,lysj1); bianhao+; ofstream file(
11、添加人員.txt,ios_base:app); filepj.getbianhao()endl; filepj.gettype()endl; filepj.getname()endl; filepj.getsex()endl; filepj.getage()endl; filepj.getzhiwu()endl; filepj.getzhichen()endl; filepj.getzzmm()endl; filepj.getzgxl()endl; filepj.getrzsj()endl; filepj.getlysj()ppk.getnum(); filemppk.gettype(); f
12、ilemppk.getname(); filemppk.getsex(); filemppk.getage(); filemppk.getzhiwu(); filemppk.getzhichen(); filemppk.getzzmm(); filemppk.getzgxl(); filemppk.getrzsj(); filemppk.getlysj(); k+; filem.close(); cout請(qǐng)輸入要被刪除信息的人的編號(hào):z; while(zbianhao) cout沒(méi)有找到你要?jiǎng)h除的人,請(qǐng)重新輸入:z; for(k=1;k=bianhao;k+) if(z=k) continue
13、; ofstream file2(添加人員.txt,ios_base:trunc); file2ppk.getnum()endl; file2ppk.gettype()endl; file2ppk.getname()endl; file2ppk.getsex()endl; file2ppk.getage()endl; file2ppk.getzhiwu()endl; file2ppk.getzhichen()endl; file2ppk.getzzmm()endl; file2ppk.getzgxl()endl; file2ppk.getrzsj()endl; file2ppk.getlysj
14、()endl; file2.close(); cout刪除記錄完畢ppk.getnum(); filemppk.gettype(); filemppk.getname(); filemppk.getsex(); filemppk.getage(); filemppk.getzhiwu(); filemppk.getzhichen(); filemppk.getzzmm(); filemppk.getzgxl(); filemppk.getrzsj(); filemppk.getlysj(); k+; filem.close(); cout請(qǐng)輸入要修改的人的編號(hào):x; cout請(qǐng)輸入編號(hào)為x的人
15、需要修改的項(xiàng)目的代號(hào):endl; cout1:編號(hào)-2:人員類型-3:姓名-4:性別-5:年齡-6:職務(wù)-7:職稱-8:政治面貌-9:最高學(xué)歷-10:任職時(shí)間-11:來(lái)院時(shí)間y; switch(y) case 1: coutppx.getnum() ; break; case 2: coutppx.gettype(); break; case 3: coutppx.getname(); break; case 4: coutppx.getsex(); break; case 5: coutppx.getage(); break; case 6: coutppx.getzhiwu(); brea
16、k; case 7: coutppx.getzhichen(); break; case 8: coutppx.getzzmm(); break; case 9: coutppx.getzgxl(); break; case 10: coutppx.getrzsj(); break; case 11: coutppx.getlysj(); break; ofstream file1(添加人員.txt,ios_base:trunc); for(k=1;k=bianhao;k+) file1ppk.getnum()endl; file1ppk.gettype()endl; file1ppk.get
17、name()endl; file1ppk.getsex()endl; file1ppk.getage()endl; file1ppk.getzhiwu()endl; file1ppk.getzhichen()endl; file1ppk.getzzmm()endl; file1ppk.getzgxl()endl; file1ppk.getrzsj()endl; file1ppk.getlysj()endl; file1.close(); cout修改并保存完畢endl;2.運(yùn)行結(jié)果圖1:運(yùn)行首界面圖2添加人員信息界面圖3人員信息刪除界面圖4人員信息修改界面5.程序調(diào)試過(guò)程將已經(jīng)編好的程序放在V
18、C+6.0的環(huán)境中進(jìn)行調(diào)試與測(cè)試,發(fā)現(xiàn)程序中的錯(cuò)誤,在提示的情況下進(jìn)行改正。檢查了是否缺少了分號(hào)(行結(jié)束符),if、else是否匹配、switch 語(yǔ)句用法是否對(duì)等。注意,宏定義、包含文件定義結(jié)束不需分號(hào),而類定義結(jié)束需要分號(hào)。注意聲明函數(shù)時(shí),各函數(shù)之間的調(diào)用關(guān)系。 變量、函數(shù)未定義、重定義: 檢查了變量大小寫、是否包含了相應(yīng)的頭文件(包括你自己的和 MFC、Windows 的)。將程序編寫完成后,進(jìn)行編譯,出現(xiàn)了error C2143: syntax error : missing ; before ,error C2043: illegal break,error C2046: illeg
19、al case,rror C2018: unknown character 0 xa3,error C2146: syntax error : missing ; before identifier i,rror C2143: syntax error : missing ; before )等錯(cuò)誤,經(jīng)過(guò)不斷的調(diào)試,我們改正了所有的錯(cuò)誤,編譯通過(guò)了,但連接不正確,還是有警告,我們又進(jìn)行了改正,將所有錯(cuò)誤改正。 遇到了一些沒(méi)有學(xué)過(guò)的知識(shí)點(diǎn),在老師的指導(dǎo)下不斷修改,有時(shí)去圖書館查詢一些問(wèn)題,在網(wǎng)上進(jìn)行查詢,最終得到了此程序。6.設(shè)計(jì)問(wèn)題的不足和改進(jìn)方案優(yōu)點(diǎn):使用結(jié)構(gòu)使程序的輸入輸出更簡(jiǎn)潔 使用函數(shù)可以使程序更簡(jiǎn)便;不足:輸入的內(nèi)容比較多;用文件儲(chǔ)存信息不能用結(jié)構(gòu)輸入;讀取文件中的信息也不能用結(jié)構(gòu)讀取; 程序比較大,各部分之間的關(guān)系繁瑣;改進(jìn)方案:可以將每個(gè)模塊弄成頭文件的部分,是主程序變得簡(jiǎn)便明了;
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 高中物理案例教學(xué)科學(xué)思維培養(yǎng)
- 橋頭飯?zhí)霉芾磙k法細(xì)則
- 幼兒園衛(wèi)生保健人才隊(duì)伍建設(shè)與培訓(xùn)體系
- 昭通盆景栽培管理辦法
- 機(jī)械作業(yè)安全管理
- 兼職講師管理辦法宣導(dǎo)
- 安全生產(chǎn)監(jiān)督工作情況報(bào)告
- 安全生產(chǎn)法安全員配備
- 安全副總崗位責(zé)任制
- 安全十大重點(diǎn)隱患排查
- GB/T 307.4-2017滾動(dòng)軸承推力軸承 產(chǎn)品幾何技術(shù)規(guī)范(GPS)和公差值
- GB 29415-2013耐火電纜槽盒
- 《密碼法》培訓(xùn)只是講座PPT課件(帶內(nèi)容)
- 建筑工程文件歸檔管理明細(xì)表
- 如何解讀血常規(guī)報(bào)告
- 區(qū)域消防安全風(fēng)險(xiǎn)評(píng)估規(guī)程DB50-T 1114-2021
- 免疫調(diào)節(jié)治療在腦卒中的運(yùn)用課件
- 機(jī)關(guān)檔案管理工作培訓(xùn)PPT課件
- 25T汽車吊檢驗(yàn)報(bào)告
- 變頻空調(diào)中的永磁電機(jī)電感分析
- 高考常考語(yǔ)法填空詞性轉(zhuǎn)換匯總
評(píng)論
0/150
提交評(píng)論