C++高校人事管理系統(tǒng)_第1頁(yè)
C++高校人事管理系統(tǒng)_第2頁(yè)
C++高校人事管理系統(tǒng)_第3頁(yè)
C++高校人事管理系統(tǒng)_第4頁(yè)
C++高校人事管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

課題4:高校人事管理系統(tǒng)1、問(wèn)題描述〔功能要求〕:某高校,主要人員有:在職人員〔行政人員、教師、一般員工〕、退休人員。現(xiàn)在,需要存儲(chǔ)這些人員的人事檔案信息:編號(hào)、姓名、性別、年齡、職務(wù)、級(jí)別、職稱、政治面貌、最高學(xué)歷、任職時(shí)間、來(lái)院時(shí)間、工資。其中行政人員只有職務(wù)和級(jí)別,教師只有職務(wù)和職稱,一般員工只有職務(wù),退休人員那么沒(méi)有職務(wù)、級(jí)別、職稱,但有退休時(shí)間。要求:〔1〕添加刪除功能:能根據(jù)學(xué)院人事的變動(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ǔ),〔擴(kuò)展要求:要求重載插入和提取符以完成數(shù)據(jù)的保存和翻開(kāi)〕?!?〕人員編號(hào)在生成人員信息時(shí)同時(shí)生成,每輸入一個(gè)人員信息編號(hào)順序加1。#include<iostream>#include<fstream>usingnamespacestd;intxi=0; intsi=0; intyi=0; intti=0;intxnum=0;intsnum=0;intynum=0;inttnum=0;intnumber=0;classbasic{public: charname[10]; charsex[6]; intage; charzzmm[10]; charzgxl[10]; intrzsj; intlysj; intgz; intbh; voidBook(intn) { cout<<"姓名:";cin>>name; cout<<"性別:";cin>>sex; cout<<"年齡:";cin>>age; cout<<"政治面貌:";cin>>zzmm; cout<<"最高學(xué)歷:";cin>>zgxl; cout<<"任職時(shí)間:";cin>>rzsj; cout<<"來(lái)院時(shí)間:";cin>>lysj; cout<<"工資:";cin>>gz; } virtualvoidShow() { cout<<"編號(hào):"<<bh<<endl; cout<<"姓名:"<<name<<endl; cout<<"性別:"<<sex<<endl; cout<<"年齡:"<<age<<endl; cout<<"政治面貌:"<<zzmm<<endl; cout<<"最高學(xué)歷:"<<zgxl<<endl; cout<<"任職時(shí)間:"<<rzsj<<endl; cout<<"來(lái)院時(shí)間:"<<lysj<<endl; cout<<"工資:"<<gz<<endl; }};classXZRY:publicbasic//行政人員{public: charzw[10]; charjb[10]; charzz[5]; voidBook(intc) { cout<<"職務(wù)類型:行政人員"<<endl; basic::Book(c); cout<<"職務(wù):";cin>>zw; cout<<"級(jí)別:";cin>>jb; cout<<"在職(是/否):";cin>>zz; } voidShow() { basic::Show(); cout<<"職務(wù)類型:行政人員"<<endl; cout<<"職務(wù):"<<zw<<endl; cout<<"級(jí)別:"<<jb<<endl; cout<<"在職:"<<zz<<endl; }};XZRYx[100];classJS:publicbasic//教師{public: charzw[10]; charzc[10]; charzz[5]; voidBook(intc) { cout<<"職務(wù)類型:教師"<<endl; basic::Book(c); cout<<"職務(wù):";cin>>zw; cout<<"職稱:";cin>>zc; cout<<"在職(是/否):";cin>>zz; } voidShow() { basic::Show(); cout<<"職務(wù)類型:教師"<<endl; cout<<"職務(wù):"<<zw<<endl; cout<<"職稱:"<<zc<<endl; cout<<"在職:"<<zz<<endl; }};JSs[100];classYG:publicbasic//員工{public: charzw[10]; charzz[5]; voidBook(intc) { cout<<"職務(wù)類型:員工"<<endl; basic::Book(c); cout<<"職務(wù):";cin>>zw; cout<<"在職(是/否):";cin>>zz; } voidShow() { basic::Show(); cout<<"職務(wù)類型:員工"<<endl; cout<<"職務(wù):"<<zw<<endl; cout<<"在職:"<<zz<<endl; }};YGy[100];classTXRY:publicbasic//退休員工{public: chartxsj[10]; charzz[5]; voidBook(intc) { cout<<"職務(wù)類型:退休人員"<<endl; basic::Book(c); cout<<"退休時(shí)間:";cin>>txsj; cout<<"在職(是/否):";cin>>zz; } voidShow() { basic::Show(); cout<<"職務(wù)類型:退休人員"<<endl; cout<<"退休時(shí)間:"<<txsj<<endl; cout<<"在職:"<<zz<<endl; }};TXRYt[100];voidBookInX()//輸入行政人員{ chara; while(1) { x[xi].Book(xnum++); x[xi].bh=++number; xi++; cout<<"是否繼續(xù)輸入?(Y/N)"<<endl; cin>>a; if(a!='Y'&&a!='y') break; }}voidBookInJ()//輸入教師{ chara; while(1) { s[si].Book(snum++); s[si].bh=++number; si++; cout<<"是否繼續(xù)輸入?(Y/N)"<<endl; cin>>a; if(a!='Y'&&a!='y') break; }}voidBookInY()//輸入一般員工{ chara; while(1) { y[yi].Book(ynum++); y[yi].bh=++number; yi++; cout<<"是否繼續(xù)輸入?(Y/N)"<<endl; cin>>a; if(a!='Y'&&a!='y') break; }}voidBookInT()//輸入一般員工{ chara; while(1) { t[ti].Book(tnum++); t[ti].bh=++number; ti++; cout<<"是否繼續(xù)輸入?(Y/N)"<<endl; cin>>a; if(a!='Y'&&a!='y') break; }}voidDisplay()//顯示{ for(intj=0;j<xi;j++) { x[j].Show(); cout<<"\n"<<endl; } for(intk=0;k<si;k++) { s[k].Show(); cout<<"\n"<<endl; } for(intn=0;n<yi;n++) { y[n].Show(); cout<<"\n"<<endl; } for(intm=0;m<ti;m++) { t[m].Show(); cout<<"\n"<<endl; }}voidSearch()//搜索函數(shù){ intc; inta; charb; chartempname[10]; while(1) { inttest=0; cout<<"請(qǐng)選擇查詢方式:"<<endl; cout<<"1.編號(hào)"<<endl; cout<<"2.姓名"<<endl; cin>>c; if(c==1) { cout<<"請(qǐng)輸入你想查詢的編號(hào):"<<endl; cin>>a; for(intj=0;j<xi;j++) if(a==x[j].bh) { x[j].Show(); test=1; break; } for(intk=0;k<si;k++) if(a==s[k].bh) { s[k].Show(); test=1; break; } for(intm=0;m<yi;m++) if(a==y[m].bh) { y[m].Show(); test=1; break; } for(intn=0;n<ti;n++) if(a==t[n].bh) { t[n].Show(); test=1; break; } if(test==0) { cout<<"您所查詢的編號(hào)不存在!"<<endl; } } elseif(c==2) { cout<<"請(qǐng)輸入你想查詢的姓名:"<<endl; cin>>tempname; for(intj=0;j<xi;j++) if(strcmp(tempname,x[j].name)==0) { x[j].Show(); test=1; break; } for(intk=0;k<si;k++) if(strcmp(tempname,s[k].name)==0) { s[k].Show(); test=1; break; } for(intm=0;m<yi;m++) if(strcmp(tempname,y[m].name)==0) { y[m].Show(); test=1; break; } for(intn=0;n<ti;n++) if(strcmp(tempname,t[n].name)==0) { t[n].Show(); test=1; break; } if(test==0) { cout<<"您所查詢的姓名不存在!"<<endl; } } else cout<<"輸入錯(cuò)誤!"<<endl; cout<<"是否繼續(xù)搜索?(Y/N)"<<endl; cin>>b; if(b!='Y'&&b!='y') break; }}voidModify()//修改信息{ while(1) { inttest=0; inti; intk; intn; intm; charname[10]; cout<<"*************************"<<endl; cout<<"*************************"<<endl; cout<<"請(qǐng)輸入您要修改的姓名:"; cin>>name; for(i=0;i<xi;i++) { if(strcmp(x[i].name,name)==0) { test=1; break; } elsetest=0; } if(test==0) { for(k=0;k<si;k++) if(strcmp(s[k].name,name)==0) { test=2; break; } elsetest=0; } if(test==0) { for(n=0;n<yi;n++) if(strcmp(y[n].name,name)==0) { test=3; break; } elsetest=0; } if(test==0) { for(m=0;m<ti;m++) if(strcmp(t[m].name,name)==0) { test=4; break; } elsetest=0; } if(test==0) { cout<<"沒(méi)有此人!"<<endl; system("PAUSE"); } charc; inta; if(test==1) { cout<<"是否更換崗位(Y/N):"<<endl; cin>>c; if(c=='y') { cout<<"請(qǐng)選擇你所要更換的崗位:"<<endl; cout<<"1.教師"<<endl; cout<<"2.一般員工"<<endl; cout<<"3.退休員工"<<endl; cin>>a; if(a==1) { s[si].Book(1); s[si].bh=x[i].bh; x[i]=x[--xi]; si++; } elseif(a==2) { y[yi].Book(1); y[yi].bh=x[i].bh; x[i]=x[--xi]; yi++; } elseif(a==3) { t[ti].Book(1); t[ti].bh=x[i].bh; x[i]=x[--xi]; ti++; } else cout<<"輸入錯(cuò)誤!"<<endl; } else x[i].Book(1); } if(test==2) { cout<<"是否更換崗位(Y/N):"<<endl; cin>>c; if(c=='y') { cout<<"請(qǐng)選擇你所要更換的崗位:"<<endl; cout<<"1.行政人員"<<endl; cout<<"2.一般員工"<<endl; cin>>a; if(a==1) { x[xi].Book(1); x[xi].bh=s[k].bh; s[k]=s[--si]; xi++; } elseif(a==2) { y[yi].Book(1); y[yi].bh=s[k].bh; s[k]=s[--si]; yi++; } elseif(a==3) { t[ti].Book(1); t[ti].bh=x[i].bh; x[i]=x[--xi]; ti++; } else cout<<"輸入錯(cuò)誤!"<<endl; } else s[k].Book(1); } if(test==3) { cout<<"是否更換崗位(Y/N):"<<endl; cin>>c; if(c=='y') { cout<<"請(qǐng)選擇你所要更換的崗位:"<<endl; cout<<"1.教師"<<endl; cout<<"2.行政人員"<<endl; cout<<"3.退休員工"<<endl; cin>>a; if(a==1) { s[si].Book(1); s[si].bh=y[n].bh; y[n]=y[--yi]; si++; } elseif(a==2) { x[xi].Book(1); x[xi].bh=y[n].bh; y[n]=y[--yi]; xi++; } elseif(a==3) { t[ti].Book(1); t[ti].bh=y[n].bh; y[n]=y[--yi]; ti++; } else cout<<"輸入錯(cuò)誤!"<<endl; } else x[i].Book(1); } if(test==4) { cout<<"是否更換崗位(Y/N):"<<endl; cin>>c; if(c=='y') { cout<<"請(qǐng)選擇你所要更換的崗位:"<<endl; cout<<"1.教師"<<endl; cout<<"2.行政人員"<<endl; cout<<"3.一般員工"<<endl; cin>>a; if(a==1) { s[si].Book(1); s[si].bh=t[m].bh; t[m]=t[--ti]; si++; } elseif(a==2) { x[xi].Book(1); x[xi].bh=t[m].bh; t[m]=t[--ti]; xi++; } elseif(a==3) { y[yi].Book(1); y[yi].bh=t[m].bh; t[m]=t[--ti]; yi++; } else cout<<"輸入錯(cuò)誤!"<<endl; } else x[i].Book(1); } cout<<"是否繼續(xù)修改:Y繼續(xù)、其他退出"<<endl; charx; cin>>x; if(x!='y'&&x!='Y') break; }}voidBookOut() //刪除缺勤人員函數(shù){ inti; intk; intn; intm; while(1) { cout<<"*************************"<<endl; cout<<"*************************"<<endl; for(i=0;i<xi;i++) { x[i].Show(); cout<<"\n"<<endl; } for(k=0;k<si;k++) { s[k].Show(); cout<<"\n"<<endl; } for(n=0;n<yi;n++) { y[n].Show(); cout<<"\n"<<endl; } for(m=0;m<ti;m++) { t[m].Show(); cout<<"\n"<<endl; } intnumber; inttest=0; cout<<"請(qǐng)選擇要?jiǎng)h除的工號(hào):"; cin>>number; for(i=0;i<xi;i++) //搜索相應(yīng)編號(hào) { if(x[i].bh==number) { test=1; x[i]=x[--xi]; cout<<"編號(hào):"<<number<<"刪除成功!"<<endl; break; } elsetest=0; } if(test==0) { for(k=0;k<si;k++) //搜索相應(yīng)編號(hào) { if(s[k].bh==number) { test=1; s[k]=s[--si]; cout<<"編號(hào):"<<number<<"刪除成功!"<<endl; break; } elsetest=0; } } if(test==0) { for(n=0;n<yi;n++) //搜索相應(yīng)編號(hào) { if(y[n].bh==number) { test=1; y[n]=y[--yi]; cout<<"編號(hào):"<<number<<"刪除成功!"<<endl; break; } elsetest=0; } } if(test==0) { for(m=0;m<ti;m++) //搜索相應(yīng)編號(hào) { if(t[m].bh==number) { test=1; t[m]=t[--ti]; cout<<"編號(hào):"<<number<<"刪除成功!"<<endl; break; } elsetest=0; } } if(test==0) { cout<<"沒(méi)有這個(gè)編號(hào)!"<<endl; system("PAUSE"); } cout<<"是否繼續(xù)刪除?(Y繼續(xù)、其他退出)"<<endl; charx; cin>>x; if(x!='y'&&x!='Y') break; }}voidTongji(){ intc; inti; intk; intn; intm; inttest=0; intw=0; chara[10]; cout<<"請(qǐng)選擇統(tǒng)計(jì)方式:"<<endl; cout<<"1.統(tǒng)計(jì)黨員"<<endl; cout<<"2.在職人數(shù)"<<endl; cin>>c; if(c==1) { for(i=0;i<xi;i++) { if(strcmp(x[i].zzmm,"黨員")==0) { x[i].Show(); w++; test=1; } } for(k=0;k<si;k++) { if(strcmp(s[k].zzmm,"黨員")==0) { s[k].Show(); w++; test=1; } } for(n=0;n<yi;n++) { if(strcmp(y[n].zzmm,"黨員")==0) { y[n].Show(); w++; test=1; } } for(m=0;m<ti;m++) { if(strcmp(t[m].zzmm,"黨員")==0) { t[m].Show(); w++; test=1; } } if(test==0) { cout<<"沒(méi)有黨員!"<<endl; } if(test==1) { cout<<"黨員數(shù)為:"<<w<<endl; } } elseif(c==2)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論