人事管理系統(tǒng)說明書.doc_第1頁
人事管理系統(tǒng)說明書.doc_第2頁
人事管理系統(tǒng)說明書.doc_第3頁
人事管理系統(tǒng)說明書.doc_第4頁
人事管理系統(tǒng)說明書.doc_第5頁
免費預覽已結(jié)束,剩余62頁可下載查看

下載本文檔

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

文檔簡介

1、*實踐教學*理工大學計算機與通信學院2012 年春季學期算法與數(shù)據(jù)結(jié)構(gòu)課程設(shè)計題目:人事管理專業(yè)班級:軟件工程基地班姓名:學號:10250139指導教師:王旭陽成績: _目錄摘要11. 采用類 C語言定義相關(guān)的數(shù)據(jù)類型 . . 22.各模塊的偽碼算法23.函數(shù)的調(diào)用關(guān)系圖164. 調(diào)試分析165. 測試結(jié)果176. 源程序(帶注釋)22總結(jié)44參考文獻46致47附件任務(wù)一源程序代碼48摘要在 Internet 飛速發(fā)展的今天,互聯(lián)網(wǎng)成為人們快速獲取、發(fā)布和傳遞信息的重要渠道,它在人們政治、經(jīng)濟、生活等各個方面發(fā)揮著重要的作用。人事管理系統(tǒng)已成為企事業(yè)單位信息化管理中的重要組成部分,從而倍受人們

2、的重視。為了提高企事業(yè)單位的辦公效率,并為了對自己這兩年來學習成果的檢驗。我這次選擇了基于 VC+和算法與數(shù)據(jù)結(jié)構(gòu)的人事管理系統(tǒng), 講述了人事管理系統(tǒng)的設(shè)計、結(jié)構(gòu)組成和適用圍。它的應用實現(xiàn)了人事管理的規(guī)化,數(shù)據(jù)的準確量化,以及該系統(tǒng)的查詢過程等。該系統(tǒng)是一個具有開放性、可查詢性和可維護處理性的管理系統(tǒng)。系統(tǒng)功能齊全、操作簡單、界面清晰直觀、擴充方便。關(guān)鍵詞人事管理系統(tǒng); VC+;人事管理。1. 采用類 c 語言定義相關(guān)的數(shù)據(jù)類型public:int No;int ID;string Name;string Sex;int Birthday;string Address;int Phone;vo

3、id input()2. 各模塊的偽碼算法1、錄入模塊void insert()/錄入數(shù)據(jù)int n;while(1)cout請輸入部門的代碼 : 1- 人事部2- 維修部3 銷售部 n;if(n=1|n=2|n=3)if(n=1)doStaff *p;p=new Staff;p-bumen.show();p-input();p-bumen.input();int q;dofor(int i=0;iNo=p-No)cout 此工作號已存在 ! 請修改 !input();p-bumen.input();q+;break;while(q!=0);for(int j=0;jN;j+)if(Pj=NU

4、LL)Pj=p;cout 輸入成功 !endl;break;coutn;while(n=1);else if(n=2)doStaff *a;a=new Staff;a-bumen.show();a-input();a-bumen.input();int q;dofor(int i=0;iNo=a-No)cout 此工作號已存在 ! 請修改 !input();a-bumen.input();q+;break;while(q!=0);for(int j=0;jN;j+)if(Mj=NULL)Mj=a;cout 輸入成功 !endl;break;coutn; while(n=2);else if(n

5、=3)doStaff *s;s=new Staff;s-bumen.show();s-input();s-bumen.input();int q;dofor(int i=0;iNo=s-No)cout 此工作號已存在 ! 請修改 !input();s-bumen.input();q+;break;while(q!=0);for(int j=0;jN;j+)if(Sj=NULL)Sj=s;cout輸入成功 !endl;break;coutn; while(n=3);break;2、顯示模塊void show()/顯示數(shù)據(jù)int n;while(1)cout請輸入部門的代碼: 1-人事部2-維修部

6、3 銷售部n;if(n=1|n=2|n=3)if(n=1)Staff *p;coutoutendl;for(int j=0;joutput();p-bumen.output();break;else if(n=2)Staff *a;coutoutendl;for(int i=0;ioutput();a-bumen.output();break;else if(n=3)Staff *s;coutoutendl;for(int i=0;ioutput();s-bumen.output();break;else if(n=0) break;3、查找模塊void find()/查找數(shù)據(jù)string n

7、;cout輸入你要查找 n;for(int j=0;jName)=n)Pj-bumen.show();coutoutoutput();Pj-bumen.output();break;for(j=0;jName)=n)Mj-bumen.show();coutoutoutput();Mj-bumen.output();break;for(j=0;jName)=n)Sj-bumen.show();coutoutoutput();Sj-bumen.output();break;4、刪除模塊void Delete()/刪除數(shù)據(jù)string n;int m;cout輸入你要查找 n;cout 請輸入該員工

8、所在的部門的代碼 : 1- 人事部 2- 維修部 3 銷售部 m;if(m=1)for(int j=0;jName)=n)coutoutoutput();Pj-bumen.output();Pj=NULL;cout 該員工已被刪除 !endl;break;if(m=2)for(int j=0;jName)=n)coutoutoutput();Mj-bumen.output();Mj=NULL;cout該員工已被刪除 !endl;break;if(m=3)for(int j=0;jName)=n)coutoutoutput();Sj-bumen.output();Sj=NULL;cout該員工已

9、被刪除 !endl;break;5、修改模塊void revise()/修改數(shù)據(jù)string n;int m;cout輸入你要查找 n;cout請輸入該員工所在的部門的代碼: 1-人事部2-維修部3 銷售部 m;if(m=1)for(int j=0;jName)=n)coutoutoutput();Pj-bumen.output();Pj-input();Pj-bumen.input();cout 該員工修改成功 !;break;if(m=2)for(int j=0;jName)=n)coutoutoutput();Mj-bumen.output();Mj-input();Mj-bumen.i

10、nput();cout該員工修改成功 !;break;if(m=3)for(int j=0;jName)=n)coutoutoutput();Sj-bumen.output();Sj-input();Sj-bumen.input();cout該員工修改成功 !;break;6 清空模塊void clear()/清空數(shù)據(jù) int n,a=1; docout 請輸入密碼 0返回界面 n;if(n=a)for(int i=0;iN;i+)Pi=NULL;Mi=NULL;Si=NULL;cout 所有員工的資料已被刪除!endl;break;else cout輸入密碼失敗 !endl;while(n!

11、=0);7、保存模塊void save()/保存數(shù)據(jù)ofstream output_file;ofstream output_file1;ofstream output_file2;ofstream output_file3;cout 正在保存中 .endl;output_file.open(Personnel.txt);if(!output_file)cout保存 Personnel 文件失敗 !endl;for(int i=0;iN;i+)if(Pi!=NULL)output_fileNoSexNameID Birthday Address Phone bumen.Job bumen.Pa

12、yendl;b1+;output_file2.open(Maintain.txt);if(!output_file2)cout保存 Maintain文件失敗 !endl;for( i=0;iN;i+)if(Mi!=NULL)output_file2NoSexNameID Birthday Address Phone bumen.Job bumen.Payendl;b2+;output_file3.open(Sell.txt);if(!output_file3)cout保存 Sell 文件失敗 !endl;for( i=0;iN;i+)if(Si!=NULL)output_file3NoSexN

13、ameID Birthday Address Phone bumen.Job bumen.Payendl;b3+;output_file1.open(kongzhi.txt);output_file1b1 b2 b3endl;/保存數(shù)據(jù)條數(shù)output_file1.close();output_file.close();output_file2.close();output_file3.close();cout 保存完畢 !endl; 、3. 函數(shù)的調(diào)用關(guān)系圖人事管理系統(tǒng)錄顯查刪修清保退錄顯查刪修清保入示找除改空存退員員員員員員員出工工工工工工工系信信信信信信信統(tǒng)息息息息息息息4. 調(diào)試分析a

14、、調(diào)試中遇到的問題及對問題的解決方法.cppc:documentsand桌 面1.cpp(27) : error C2018: unknown character 0xa1c:documentsand桌 面1.cpp(27) : error C2018: unknown character 0xa2c:documentsand桌 面1.cpp(27) : error C2018: unknown character 0xa1c:documentsand桌 面1.cpp(27) : error C2018: unknown character 0xa2執(zhí)行 cl.exe時出錯人事管理系統(tǒng)人事管理

15、系統(tǒng)人事管理系統(tǒng)人事管理系統(tǒng)經(jīng)反復檢查確認,檢查程序第 27 行中的代碼中多余輸入了某些標點符號,經(jīng)改正后程序編譯顯示沒有錯誤。b、算法的時間復雜度和空間復雜度該算法的時間復雜度為:O(n)該算法的空間復雜度為:608KB5. 測試結(jié)果人事管理系統(tǒng)(1)、人事管理系統(tǒng)界面(2)、員工信息的錄入(3)、員工信息的顯示(4)、員工信息的查找(5)、員工信息的刪除(6)、員工信息的修改(7)、員工信息的清空(8)、員工信息的保存(9)、系統(tǒng)的退出6. 源程序(帶注釋)/basic.h#includestring#includeiostream#include iomanipusing namespa

16、ce std;class Basepublic:int No;int ID;string Name;string Sex;int Birthday;string Address;int Phone;void input()cout 輸入員工的工作號 :No;cout 輸入員工的 :Name;cout 輸入員工的性別 :Sex;cout 輸入員工的身分證 :ID;cout 輸入員工的生日 :Birthday;cout 輸入員工的家庭住址 :Address;cout 輸入員工的家庭 :Phone;void output()coutsetiosflags(ios:left)setw(8)Nosetw

17、(8)Namesetw(6)Sexsetw(8)IDsetw(10)Birthdaysetw(8)Addresssetw(10)Phone;/branch.h#includeiostream#includestring#include iomanipusing namespace std;class Personnel/人事部public:virtual void show()cout 人事部 endl;string Job;int Pay;void input()cout 請輸入該員工的職務(wù) Job;cout 請輸入該員工的薪水 Pay;void output()coutsetiosflag

18、s(ios:left)職務(wù) :setw(6)Job 薪水 :setw(6)Payendl;class Maintain:public Personnel / public:維修部virtual void show()cout維修部 endl;class Sell:public Personnel /public:virtual void show()cout 銷售部 endl;銷售部;template class Branchpublic:Type bumen;/staff.h#includeiostreamusing namespace std;template class Staff :

19、public Base, public Branch;/ 頭文件#includestring#include#includecstdio#includeconio.h#includefstream#includeiostream#includestdlib.h#define N 100using namespace std;Staff *PN;Staff *MN;Staff*SN;const int SIZE_CHAR = 5;const char CCH = abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ;int b1=0,b2=0,

20、b3=0;/導入數(shù)據(jù)條數(shù)string m()/隨機生字母char chSIZE_CHAR + 1 = 0;for (int i = 0; i SIZE_CHAR; +i)int x = rand() % (sizeof(CCH) - 1);chi = CCHx;return ch;ostream& out(ostream& stream)/操縱符return stream setiosflags(ios:left)setw(8) 工作號 setw(8)setw(6)性別setw(8)身分證setw(12)生日 setw(8)地址 setw(10)部門;void insert()/int n;w

21、hile(1)錄入數(shù)據(jù)cout請輸入部門的代碼: 1-人事部2-維修部3 銷售部 n;if(n=1|n=2|n=3)if(n=1)doStaff *p;p=new Staff;p-bumen.show();p-input();p-bumen.input();int q;dofor(int i=0;iNo=p-No)cout 此工作號已存在 ! 請修改 !input();p-bumen.input();q+;break;while(q!=0);for(int j=0;jN;j+)if(Pj=NULL)Pj=p;cout 輸入成功 !endl;break;coutn;while(n=1);else

22、 if(n=2)doStaff *a;a=new Staff;a-bumen.show();a-input();a-bumen.input();int q;dofor(int i=0;iNo=a-No)cout 此工作號已存在 ! 請修改 !input();a-bumen.input();q+;break;while(q!=0);for(int j=0;jN;j+)if(Mj=NULL)Mj=a;cout 輸入成功 !endl;break;coutn; while(n=2);else if(n=3)doStaff *s;s=new Staff;s-bumen.show();s-input();

23、s-bumen.input();int q;dofor(int i=0;iNo=s-No)cout 此工作號已存在 ! 請修改 !input();s-bumen.input();q+;break;while(q!=0);for(int j=0;jN;j+)if(Sj=NULL)Sj=s;cout輸入成功 !endl;break;coutn; while(n=3);break;void show()/顯示數(shù)據(jù)int n;while(1)cout請輸入部門的代碼: 1-人事部2-維修部3 銷售部n;if(n=1|n=2|n=3)if(n=1)Staff *p;coutoutendl;for(int

24、 j=0;joutput();p-bumen.output();break;else if(n=2)Staff *a;coutoutendl;for(int i=0;ioutput();a-bumen.output();break;else if(n=3)Staff *s;coutoutendl;for(int i=0;ioutput();s-bumen.output();break;else if(n=0) break;void find()/查找數(shù)據(jù)string n;cout輸入你要查找 n;for(int j=0;jName)=n)Pj-bumen.show();coutoutoutpu

25、t();Pj-bumen.output();break;for(j=0;jName)=n)Mj-bumen.show();coutoutoutput();Mj-bumen.output();break;for(j=0;jName)=n)Sj-bumen.show();coutoutoutput();Sj-bumen.output();break;void Delete()/刪除數(shù)據(jù)string n;int m;coutn;endl;cout 請輸入該員工所在的部門的代碼m;if(m=1)for(int j=0;jName)=n)coutoutoutput();Pj-bumen.output()

26、;Pj=NULL;cout 該員工已被刪除 !endl;break;if(m=2)for(int j=0;jName)=n)coutoutoutput();Mj-bumen.output();Mj=NULL;cout該員工已被刪除 !endl;break;if(m=3)for(int j=0;jName)=n)coutoutoutput();Sj-bumen.output();Sj=NULL;cout該員工已被刪除 !endl;break;void revise()/修改數(shù)據(jù)string n;int m;cout輸入你要查找 n;cout 請輸入該員工所在的部門的代碼 : 1- 人事部 2-

27、維修部 3 銷售部 m;if(m=1)for(int j=0;jName)=n)coutoutoutput();Pj-bumen.output();Pj-input();Pj-bumen.input();cout 該員工修改成功 !;break;if(m=2)for(int j=0;jName)=n)coutoutoutput();Mj-bumen.output();Mj-input();Mj-bumen.input();cout該員工修改成功 !;break;if(m=3)for(int j=0;jName)=n)coutoutoutput();Sj-bumen.output();Sj-in

28、put();Sj-bumen.input();cout該員工修改成功 !;break;void clear()/清空數(shù)據(jù) int n,a=1; docout 請輸入密碼 n;if(n=a)for(int i=0;iN;i+)返回界面endl;Pi=NULL;Mi=NULL;Si=NULL;cout 所有員工的資料已被刪除!endl;break;else cout輸入密碼失敗 !endl;while(n!=0);void save()/保存數(shù)據(jù)ofstream output_file;ofstream output_file1;ofstream output_file2;ofstream output_file3;cout 正在保存中 .endl;output_file.open(Personnel.txt);if(!output_file)

溫馨提示

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

評論

0/150

提交評論