C++程序設(shè)計課程設(shè)計報告_第1頁
C++程序設(shè)計課程設(shè)計報告_第2頁
C++程序設(shè)計課程設(shè)計報告_第3頁
C++程序設(shè)計課程設(shè)計報告_第4頁
C++程序設(shè)計課程設(shè)計報告_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 C+程序設(shè)計課程設(shè)計報告高校教職工人事管理系統(tǒng)年級/專業(yè)/班:學(xué)生姓名:學(xué)號:指導(dǎo)教師:開題時間:2010年09月06日完成時間:2010年09月28日目錄 C+程序設(shè)計語言課程設(shè)計高校教職工人事管理系統(tǒng)一、引言隨著人們生活水平的提高,計算機發(fā)展異常迅速。如今,計算機已經(jīng)深入到我們社會的各個領(lǐng)域,計算機的使用也已不再局限于科學(xué)計算,它已進入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。通過計算機對各類問題求解已經(jīng)成為一種高效、快捷的方式。本課程設(shè)計就是用C+研究兩點距離的求解的問題,實現(xiàn)對兩點距離的問題求解,和實現(xiàn)類模板的應(yīng)用以及函數(shù)的調(diào)用。二、設(shè)計目的與任務(wù)1、本課程設(shè)計的目的1)通過課程設(shè)

2、計更進一步理解C+的基礎(chǔ)知識和面向?qū)ο蟮乃枷搿?)訓(xùn)練用系統(tǒng)的觀點和軟件開發(fā)一般規(guī)范進行軟件開發(fā),并在此過程中培養(yǎng)嚴謹?shù)目茖W(xué)態(tài)度和良好的工作作風。初步掌握軟件開發(fā)過程的問題分析、系統(tǒng)設(shè)計、程序編碼、測試等基本方法和技能。3)熟練掌握C+中類及類模板在程序中的應(yīng)用,并熟練了解類中函數(shù)的調(diào)用。2、本課程設(shè)計的任務(wù)使用類實現(xiàn)編寫一個高校教職工人事管理系統(tǒng),能夠?qū)崿F(xiàn)教職工信息增加、刪除、修改、查找,能夠統(tǒng)計在職人員、中共黨員、女教職工、高職稱、高學(xué)歷的人數(shù),信息的輸入輸出能夠重載輸入與輸出操作符,并且要求有錯誤提示功能,例如輸入日期,輸入錯誤提示重新輸入。三、設(shè)計方案1、總體設(shè)計(1)定義員工(Per

3、son)類,其中包括編號、職工分類(行政人員,教師,一般員工,退休人員,返聘人員,臨時工)、性別、年齡,職務(wù)(無,科級,處級,地級);、職稱(無,初級,中級,高級);、政治面貌(群眾,中共黨員,民主黨派)、學(xué)歷(中專,大專,大學(xué),碩士,博士)。(2)實現(xiàn)下面的功能a、設(shè)計菜單實現(xiàn)功能選擇;b、輸入功能:輸入員工的信息,并保存到文件中;c、刪除資料:能夠根據(jù)編號刪除員工的資料;d、修改功能:能夠根據(jù)編號來修改員工的資料;e、查詢功能:能夠根據(jù)編號來查看員工的資料;f、統(tǒng)計功能:能夠統(tǒng)計在職人員、中共黨員、女教職工、高職稱、高學(xué)歷的人數(shù)。g、錯誤提示功能:如果輸入的資料不合法,將會提示錯誤,并給予

4、指導(dǎo)。2、詳細設(shè)計類Personcharno100;編號charduty30;職工分類charsex10;性別intage;年齡charposition30;職務(wù)charzhicheng30;職稱charpolitical。;政治面貌charrecord30;學(xué)歷voidadd();增加信息voiddelet();刪除信息voidchange();修改信息voidfind();查找信息voidpush(Personpp);給類賦值F面程序流程圖中的判斷框必須用菱形表示,請修改(1)Person:add()(2)Person:delete()(3)Person:change()ir(4).Per

5、son:find()輸入騙號/-編號存在?否是息,3、程序清單/*改程序需要在D盤加入文本名為“subject.txt”文本檔案作為資料的庫存文本檔案資料內(nèi)容如下:09408201行政人員男35處級高級中共黨員大學(xué)09408202教師女30處級高級中共黨員大學(xué)09408203臨時工女20無高級群眾中專09408204臨時工男22處級初級中共黨員博士09408205返聘人員男30科級高級中共黨員大專09408206教師女40科級初級中共黨員碩士09408207退休人員女68處級中級民主黨派大學(xué)09408208一般員工男27地級高級群眾大學(xué)09408209教師男22處級高級中共黨員博士094082

6、10退休人員男62地級初級民主黨派碩士09408211返聘人員女40無中級中共黨員碩士09408212一般員工男38處級中級群眾大學(xué)09408213教師男46處級無中共黨員博士09408214教師男27無高級民主黨派大學(xué)09408215教師男18處級高級中共黨員大學(xué)*/下面程序開始#include#includeusingnamespacestd;constintN=1000;intt=0;inton=0;/統(tǒng)計在職人員人數(shù)intdang=0;/統(tǒng)計中共黨員人數(shù)intnv=0;/統(tǒng)計女性職工人數(shù)intgaozhi=0;/統(tǒng)計高職稱人數(shù)intgaoli=0;/統(tǒng)計高學(xué)歷人數(shù)classPerson

7、public:charsex10;/性別charduty30;/職工分類intage;/年齡charpolitical30;/政治面貌charrecord30;/學(xué)歷charposition30;/職務(wù)charzhicheng30;/職稱charno100;/編號voidadd();/增加信息voiddelet();/刪除信息voidchange();/修改信息voidfind();/查找信息voidpush(Personpp);給列成員賦值;PersonpN;voidPerson:push(Personpp)strcpy(no,pp.no);strcpy(sex,pp.sex);strcpy

8、(position,pp.position);strcpy(zhicheng,pp.zhicheng);strcpy(political,pp.political);strcpy(record,pp.record);strcpy(duty,pp.duty);age=pp.age;if(strcmp(duty,退休人員)on+;if(strcmp(sex,女)=0)nv+;if(strcmp(zhicheng,高級)=0)gaozhi+;if(strcmp(political,中共黨員)=0)dang+;if(strcmp(record,碩士)=Ollstrcmp(record,博士)=0)ga

9、oli+;voidtip()coutvv輸入ENTER返回子菜單!vvendl;getchar();getchar();system(cls);voidtip1()coutvv輸入ENTER返回主菜單!vvendl;getchar();getchar();system(cls);voidLoad()/通過文本輸入數(shù)據(jù)PersonS;FILE*fp1;boolf=1;fp1=fopen(d:subject.txt,r);if(fp1=NULL)f=0;while(f&!feof(fp1)fscanf(fp1,%s%s%s%d%s%s%s%s,S.no,S.duty,S.sex,&S.age,S.

10、position,S.zhicheng,S.political,S.record);pt+.push(S);fclose(fp1);voidPerson:add()/錄入信息coutvv現(xiàn)在錄入編號為vvnovv的檔案:vvendl;A1:coutvv輸入員工的職工分類:;cinduty;if(strcmp(duty,行政人員)&strcmp(duty,教師)&strcmp(duty,般員工)&strcmp(duty,退休人員)&strcmp(duty,返聘人員)&strcmp(duty,臨時工)coutvv-(請輸入正確的職工分類,例如:行政人員,教師,一般員工,退休人員,返聘人員,臨時工)

11、vvendl;gotoAl;if(strcmp(duty,退休人員)on+;A2:coutvv輸入員工的性別:;cinsex;if(strcmp(sex,男)&strcmp(sex,女)coutvv-(請輸入正確的性別,例如:男,女)vvendl;gotoA2;if(strcmp(sex,女)=0)nv+;A3:coutvv輸入員工的年齡:;cinage;if(agev=0)coutvv-(請輸入正確的年齡,例如:18等)vvendl;gotoA3;A4:coutvv輸入員工的職務(wù):;cinposition;if(strcmp(position,無)&strcmp(position,科級)&s

12、trcmp(position,處級)&strcmp(position,地級)coutvv-(請輸入正確的職務(wù),例如:無,科級,處級,地級vvendl;gotoA4;A5:coutvv輸入員工的職稱:;cinzhicheng;if(strcmp(zhicheng,無)&strcmp(zhicheng,初級)&strcmp(zhicheng,中級)&strcmp(zhicheng,高級)coutvv-(請輸入正確的職稱,例如:無,初級,中級,高級vvendl;gotoA5;if(strcmp(zhicheng,高級)=0)gaozhi+;A6:coutvv輸入員工的政治面貌:;cinpolitic

13、al;if(strcmp(political,群眾)&strcmp(political,中共黨員)&strcmp(political,民主黨派)coutvv-(請輸入正確的政治面貌,例如:群眾,中共黨員,民主黨派)vvendl;gotoA6;if(strcmp(political,中共黨員)=0)dang+;A7:coutvv輸入與員工的學(xué)歷:;cinrecord;if(strcmp(record,中專)&strcmp(record,大專)&strcmp(record,大學(xué))&strcmp(record,碩士)&strcmp(record,博士)coutvv-(請輸入正確的學(xué)歷,例如:中專,大

14、專,大學(xué),碩士,博士)vvendl;gotoA7;if(strcmp(record,碩士)=Ollstrcmp(record,博士)=0)gaoli+;coutvv編號為vvnovv的檔案錄入結(jié)束vvendlvvendl;t+;tip1();voidPerson:delet()/刪除信息no0=-;if(strcmp(duty,退休人員)on-;if(strcmp(sex,女)=0)nv-;if(strcmp(zhicheng,高級)=0)gaozhi-;if(strcmp(political,中共黨員)=0)dang-;if(strcmp(record,碩士)=Ollstrcmp(recor

15、d,博士)=0)gaoli-;coutvv刪除員工信息成功!vvendlvvendl;tip1();voidPerson:change()/修改信息intn,flag=1;doA:coutvv*子菜單:修改資料*vvendl修改哪些信息?vvendl1(編號)2(職工分類)3(性別)4(年齡)5(職務(wù))6(職稱)7(政治面貌)8(學(xué)歷)9(退回主菜單)vvendln;if(nvllln9)coutvvsorry,您輸入的信息有誤,請重新輸入!vvendl;gotoA;switch(n)case1:coutvv輸入正確的員工編號:;cinno;coutvv員工編號修改成功vvendlvvendl

16、;tip();break;case2:B1:coutvv輸入正確的員工的職工分類:;if(strcmp(duty,退休人員)on-;cinduty;if(strcmp(duty,行政人員)&strcmp(duty,教師)&strcmp(duty,一般員工)&strcmp(duty,退休人員)&strcmp(duty,返聘人員)&strcmp(duty,臨時工)coutvv(請輸入正確的職工分類,例如:行政人員,教師,一般員工,退休人員,返聘人員,臨時工)vvendl;gotoBl;if(strcmp(duty,退休人員)on+;coutvv員工職工分類修改成功vvendlvvendl;tip(

17、);break;case3:B2:coutvv輸入正確的員工的性別:;if(strcmp(sex,女)=0)nv-;cinsex;訐(strcmp(sex,男)&strcmp(sex,女)coutvv(請輸入正確的性別,例如:男,女)vvendl;gotoB2;if(strcmp(sex,女)=0)nv+;coutvv員工性別修改成功vvendlvvendl;tip();break;case4:B3:coutvv輸入正確的員工的年齡:“;cinage;if(agev=0)coutvv(請輸入正確的年齡,例如:18等)vvendl;gotoB3;coutvv員工年齡修改成功vvendlvvend

18、l;tip();break;case5:B4:coutvv輸入正確的員工的職務(wù):;cinposition;if(strcmp(position,無)&strcmp(position,科級)&strcmp(position,處級)&strcmp(position,地級)coutvv(請輸入正確的職務(wù),例如:無,科級,處級,地級)vvendl;gotoB4;coutvv員工職務(wù)修改成功vvendlvvendl;tip();break;case6:B5:coutvv輸入正確的員工的職稱:;if(strcmp(zhicheng,高級)=0)gaozhi-;cinzhicheng;if(strcmp(z

19、hicheng,無)&strcmp(zhicheng,初級)&strcmp(zhicheng,中級)&strcmp(zhicheng,高級)coutvv(請輸入正確的職稱,例如:無,初級,中級,高級)vvendl;gotoB5;coutvv員工職稱修改成功vvendlvvendl;if(strcmp(zhicheng,高級)=0)gaozhi+;tip();break;case7:B6:coutvv輸入正確的員工的政治面貌:;if(strcmp(political,中共黨員)=0)dang-;cinpolitical;訐(strcmp(political,群眾)&strcmp(politica

20、l,中共黨員)&strcmp(political,民主黨派)coutvv(請輸入正確的政治面貌,例如:群眾,中共黨員,民主黨派)vvendl;gotoB6;if(strcmp(political,中共黨員)=0)dang+;coutvv員工政治面貌修改成功vvendlvvendl;tip();break;case8:B7:coutvv輸入正確的員工的學(xué)歷:;訐(strcmp(record,碩士)=0llstrcmp(record,博士)=0)gaoli-;cinrecord;訐(strcmp(record,中專)&strcmp(record,大專)&strcmp(record,大學(xué))&strc

21、mp(record,碩士)&strcmp(record,博士)coutvv(請輸入正確的學(xué)歷,例如:中專,大專,大學(xué),碩士,博士)vvendl;gotoB7;訐(strcmp(record,碩士)=Ollstrcmp(record,博士)=0)gaoli+;coutvv員工學(xué)歷修改成功vvendlvvendl;tip();break;case9:tip1();flag=0;break;while(flag);voidPerson:find()/查找信息(輸出信息)coutvv員工的編號:coutvvnovvendl;coutvv員工的職工分類:;coutvvdutyvvendl;coutvv員

22、工的性別:;coutvvsexvvendl;coutvv員工的年齡:;coutvvagevvendl;coutvv員工的職務(wù):;coutvvpositionvvendl;coutvv員工的職稱:;coutzhichengendl;coutvv員工的政治面貌:;coutpoliticaln;system(cls);if(nvllln9)coutvvsorry,您輸入的信息有誤.vvendl;tipl();gotoA;switch(n)case1:C:coutvv輸入要增加的員工的編號:;cinnum;for(i=0;ivt;i+)if(strcmp(pi.no,num)=0)break;if(i

23、!=t)coutvvSorry,您要增加的員工編號已存在,請重新輸入!vvendlvvendl;gotoC;strcpy(pt.no,num);coutvvendl;pt.add();break;case2:coutvv輸入要刪除的員工的編號:cinnum;for(i=0;ivt;i+)if(strcmp(pi.no,num)=0)pi.delet();break;coutnum;coutendl;for(i=0;inum;coutvvendl;for(i=0;ivt;i+)if(strcmp(pi.no,num)=0)pi.find();break;訐(i=t)coutvvsorry,您輸入

24、的員工編號有誤。vvendl;tip1();break;case5:coutvv在職人員人數(shù)為:vvonvvendl;coutvv中共黨員人數(shù)為:vvdangvvendl;coutvv女教職工人數(shù)為:vvnvvvendl;coutvv高職稱人數(shù)為:vvgaozhivvendl;coutvv搞學(xué)歷人數(shù)為:vvgaolivvendl;coutvv(說明:1.在職人員不包括退休人員。vvendl;coutvv2.高學(xué)歷包括碩士及博士。)vvendlvvendl;tip1();break;case6:flag1=0;coutvvendlvvendlvvendlvvendlvvendlvvendlvve

25、ndlvvendlvv感謝您的使用,謝謝!vvendlvvendlvvendlvvendlvvendl;break;while(flagl);system(pause);4、程序調(diào)試與體會通過對程序的調(diào)試,發(fā)現(xiàn)很多問題只有通過調(diào)試以后才能被找到和發(fā)現(xiàn),才能更好的美化和優(yōu)化,是程序看起來更完美,讓使用者更放心。5、運行過程截圖下面是我們程序的一些演示以及部分運行結(jié)果:.首先是程序執(zhí)行的主菜單:閨F:programFilesTercentQQusers304345285FileRecvvcocammonMSDe.-|n|主菜單諏胃瞬羽認刪除躋)修改躋奩險糾査巷統(tǒng)計。唱岀.執(zhí)行1-5的指令后都會出現(xiàn)

26、如下界面,要求輸入員工的編號,因為該程序是基于從編號入手的:fflF:ProgramFile5nencentQQUsers3C4345285FieRecvVC6.0色駅ConrnoMMSD上1兇|輸人要増加的員工的編號;3當執(zhí)行1號命令增加資料,并輸入員工編號后要求輸入與員工的資料:ISF:ProgramFilesTencentQQUsers304345285FileRecAVC6.0TO整綠feJKCommonMSDe.-|n|x|SF:Pfoj-amFilBsrencerrtqQJsers304345285RleRecvVC6.0gfi1fiCommcnMSDe.-!*1 0?4G8245

27、的硝奚:井.口二級級去_音力1&科高貌-分面歷H-、!i一丄iiiiItl囚囚囚召召入與輸入妾増加的貝工的編F09408245.當輸入內(nèi)容不合要求時會提示輸入錯誤,并且提示合法的輸入內(nèi)容:F:ProgramRlesTencentQQUsers30435285FileRecYVC0.0完是黑色|fiConfmK)nMSDE.|口|其|輸入妾増加的貞工的編號:即4朋245現(xiàn)在龜編號為09408245麗檔案:輸入更工的職工餌季生-修號輸匚性編卑入工1菜舉*子菜單:修改資料f旅性別蚊年齡宓職務(wù)亦政治鱗肌學(xué)歷)X退回主參改或退出汨:X輸入ENTER返回M菜單!(9).當執(zhí)行查找資料,并輸入正確的編號后,

28、會輸出該編號員工的資料:F:ProgramFilesTencentQQUsers304345285FileRecvVC6.0綠芭CommonMSDe.-|n|x|:09498211編題哇年職K政學(xué)LM.LMLMV1-1-IU-fa-1-1-1-IL-工工工工工工工工人黨聘共眈返中40:級:士09I40無中貌碩彷ff口貝員輸入ENTER返回主菜單|(10).當執(zhí)行查看統(tǒng)計后會出現(xiàn)如下界面:國FProgramFilesTencentQQUsers304345285FileRecvVC6.0綠色版応ommonMSDE.-|口|x|Z刀戈I;丄住聊八巳2高學(xué)厲總括碩輸入ENTER返回主菜單在艱人囚人數(shù)艾:14申共弟雋人數(shù)尢10女敕卑工人數(shù)尢5高艱釉人數(shù)劃9搞學(xué)廳人數(shù)為:6d兌明;丄在職人員不包指退休人員。、R博二, 四、結(jié)論通過本次課程設(shè)計,讓我對C+這門學(xué)科對有了進一步的認識,熟練掌握了類及類模板的應(yīng)用。以前對該課程的恐懼感都以消失,任何事情沒有做不到只有愿不愿意去做。剛開始接到該題,心中確實充滿困惑。不過在圖書館和網(wǎng)上找了一些資料看了后,便覺得思路就在眼前了,之前不過就是由于對該課程的恐懼而產(chǎn)生了一定的心里影響

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論