九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來到裝配圖網! | 幫助中心 裝配圖網zhuangpeitu.com!
裝配圖網
ImageVerifierCode 換一換
首頁 裝配圖網 > 資源分類 > DOC文檔下載  

C++課程設計報告--職工信息管理系統(tǒng).doc

  • 資源ID:116791627       資源大?。?span id="24d9guoke414" class="font-tahoma">261.51KB        全文頁數:50頁
  • 資源格式: DOC        下載積分:20積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要20積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預覽文檔經過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標題沒有明確說明有答案則都視為沒有答案,請知曉。

C++課程設計報告--職工信息管理系統(tǒng).doc

課程設計報告 目錄一、 課程設計目的及要求.2二、 課程設計具體實現.2(一) 總體設計.21) 職工信息管理系統(tǒng).32) 學生通訊系統(tǒng).12(二) 詳細設計.31) 職工信息管理系統(tǒng).32) 學生通訊系統(tǒng)13三、 心得體會.23四、 源代碼.24(一) 職工信息管理系統(tǒng). 24(二) 學生通訊系統(tǒng).37課程設計報告一、 課程設計目的及要求1. 設計目的l 提高和加強學生的計算機應用與軟件開發(fā)能力,使學生由初學者向專業(yè)的程序員過渡。l 培養(yǎng)學生獨立分析問題、解決問題、查閱資料以及自學能力,以適應計算機產業(yè)日新月異發(fā)展的形勢。l 學習和掌握C+程序設計方法以及上機調試技巧,為今后學習其它專業(yè)課程打好基礎2. 設計要求(一) 職工信息管理系統(tǒng) 職工信息包括職工號、姓名、性別、年齡、學歷、工資、住址、電話等(職工號不重復)。試設計一職工信息管理系統(tǒng),系統(tǒng)以菜單方式工作,使之能提供以下功能:l 職工信息錄入功能(職工信息用文件保存)l 職工信息瀏覽功能l 查詢和排序功能:按工資查詢和按學歷查詢或按年齡等查詢l 職工信息刪除、修改功能l 統(tǒng)計功能(二) 學生通訊系統(tǒng)學生通信錄信息包括:姓名、學號、年齡、性別、家庭住址、聯(lián)系電話、寢室號等信息?,F要求編寫程序來完成如下功能:l 學生通信錄信息的輸入l 學生的通信錄信息刪除和修改l 學生的通信錄信息查詢和統(tǒng)計功能l 學生的通信錄信息輸出顯示 二、 課程設計具體實現(一) 職工信息管理系統(tǒng)(1)總體設計 根據任務要求,程序主要包含五大功能模塊:1.職工信息錄入功能 2.職工信息瀏覽功能 3.職工信息查詢和排序 4.職工信息刪除和修改功能 5.職工信息統(tǒng)計功能??傮w設計圖如下:職工信息管理系統(tǒng)信息錄入信息刪除和修改信息統(tǒng)計信息查詢和排序信息瀏覽信息刪除信息修改按工資高低降序排列查 詢按年齡大小降序排 列查 詢按學歷高低降序排列查 詢(2)詳細設計 該項目文件名為職工信息管理系統(tǒng),共有8個.cpp和2個.h文件u 主菜單(在main .cpp中) 主要完成功能為:當用戶開始使用本系統(tǒng),進入登陸模塊。屏幕顯示菜單提示,用戶可根據需要選擇15進入相應功能。具體如下:1.職工信息錄入 2.職工信息瀏覽 登錄模塊的截圖如下所示:主要使用技術:switch語句以進入各個功能以及退出主要代碼:switch(scan3()case 1: /職工信息錄入input();getchar(); break;case 2: /職工信息瀏覽display();getchar(); break;case 3: /查詢和排序find();getchar(); break;case 4: /職工信息刪除、修改change();getchar(); break;case 5: /職工信息統(tǒng)計count();getchar(); break;default:cout謝謝使用,再見!nSwitch(n)Case 1:Case5:default:input()count()退出功能完成u 職工信息錄入功能(在input .cpp中) 主要功能:完成職工信息的錄入,用if語句還有文本文檔對職工信息進行錄入;在此定義N最多為二十個;建立職工信息結構體,保存在.h文件中!將職工信息保存于文本文件: 職工基本信息.txt中。同時將輸入職工的人數保存到文本文件: 職工人數 .txt中。利用for循環(huán)進行輸入。主要還是文件的輸入問題!主要代碼:for(int i=0;it;i+) /輸入職工基本信息coutn請輸入第i+1個職工的信息endl;coutperi.number; /判斷職工號是否存在 if (peri.number=peri-1.number) cout該職工號已存在,請重新輸入!endl; goto loop; outfperi.number ; coutperi.name; outfperi.name ; coutperi.sex; outfperi.sex ; coutperi.age; outfperi.age ; coutperi.rank; outfperi.rank ; coutperi.salary; outfperi.salary ; coutperi.add; outfperi.add ; coutperi.phone; outfperi.phone ;截圖如下:u 職工信息瀏覽功能(在display .cpp中) 主要功能:從文件 職工基本信息.txt 中讀出所有職工的信息,顯示到屏幕上。關鍵代碼: open(); /從文件中讀取信息 for(int i=0;iN;i+) /輸出職工信息 if(peri.number=0) break; cout職工號:peri.numberendl; cout姓名:peri.nameendl; cout性別:; xsex(peri.sex); coutendl; cout年齡:peri.ageendl; cout學歷:;xrank(peri.rank);coutendl; cout工資:peri.salaryendl; cout住址:peri.addendl; cout電話:peri.phoneendlendl; 截圖如下:u 職工信息查詢和排序(在find .cpp中) 主要功能:對信息的查詢按照三種查詢方法:1.按工資高低降序排列查詢 2. 按學歷高低降序排列查詢 3. 按年齡大小降序排列查詢主要使用技術:使用 冒泡法對數據進行排序主要代碼:case 1:cout按工資從高到低排:endl; open(); person t; int i,j; for(i=0;iN;i+) /按工資高低降序排列 for(j=i+1;jN;j+) if(peri.salaryperj.salary) t=peri; peri=perj; perj=t;case 2: cout按學歷從高到低排:endl;open(); person t; int i,j; for(i=0;iN;i+) /按學歷高低降序排列 for(j=i+1;jN;j+) if(peri.rankperj.rank) t=peri; peri=perj; perj=t;case 3: cout按年齡從大到小排:endl; open(); person t; int i,j; for(i=0;iN;i+) /按年齡大小降序排列 for(j=i+1;jN;j+) if(peri.ageperj.age) t=peri; peri=perj; perj=t;截圖如下:u 職工信息修改和刪除功能(在change .cpp中) 主要功能:先從文件 職工基本信息.txt 中讀出所有職工的信息,再對職工信息進行修改和刪除,最后將修改后的信息重新讀入到 職工基本信息.txt 中,修改后的職工人數保存到 職工人數.txt 中。截圖如下:u 職工信息統(tǒng)計功能(在count .cpp中)主要功能:從文件 職工基本信息.txt 中讀出所有職工的信息,統(tǒng)計所有職工中???、本科、碩士、博士學歷的人數分別是多少 和所有職工的工資情況:工資2000以下的總人數、2000-3000的總人數、工資3000-4000的總人數、工資4000以上的總人數、及所有職工的平均工資。 主要代碼:for(int i=0;iN;i+)if(peri.rank=1)k1+;else if(peri.rank=2)k2+;else if(peri.rank=3)k3+;else if(peri.rank=4)k4+;cout專科學歷的總人數:k1endl;cout本科學歷的總人數:k2endl;cout碩士學歷的總人數:k3endl;cout博士學歷的總人數:k4endlendl;for(int j=0;jN;j+) sum+=perj.salary;if(perj.salary=2000 & perj.salary=3000 & perj.salary=4000)t4+;s=renshu(); /得到職工總人數 ave=(sum/s); /計算職工的平均工資 截圖如下:u 退出系統(tǒng)(二) 學生通訊系統(tǒng)(1)總體設計u 根據任務要求,該程序包含五大功能模塊:1. 學生通信錄信息的輸入功能 2. 學生的通信錄信息刪除功能 3. 學生的通信錄信息修改功能 4. 學生的通信錄信息查詢 5. 學生的通信錄信息輸出顯示功能 總體結構圖如下:學生通訊系統(tǒng)通信錄信息的輸入通信錄信息刪除通信錄信息修改通信錄信息查詢通信錄信息的顯示按姓名查找修改按學號查找修改按姓名刪除按學號刪除按姓名查詢按學號查詢(2)詳細設計u 主菜單(在main .cpp中)主要功能:當用戶開始使用本系統(tǒng),進入登陸模塊。屏幕顯示菜單提示,用戶可根據需要選擇15進入相應功能。具體如下:1.信息錄入 2.信息瀏覽 登錄模塊的截圖如下:u 主要代碼 int scan() /生成主菜單int n;system(cls);cout 歡迎使用學生通訊系統(tǒng)!endl; coutendl;cout 1.信息錄入 endl;cout 2.信息瀏覽 endl;cout 3.信息刪除 endl;cout 4.信息修改 endl;cout 5.信息查詢 endl;cout 0.退出. endl;coutn;if(n5)cout輸入錯誤,請重新選擇!endl;elsebreak;return n;switch (scan() /功能選擇case 1: /信息錄入Handle h1;h1.write();getchar();break;case 2: /信息瀏覽int n;Handle h2;n=h2.renshu();CStudent *p;p=h2.read();for(int i=0;idisplay();coutendl;deletep;getchar();break;case 3: /信息刪除Handle h3; h3.deletes();getchar();break;case 4: /信息修改Handle h4; h4.change();getchar();break;case 5: /信息查詢Handle h5;h5.find();getchar();case 0:quit=1;cout謝謝使用,再見!endl;輸入15選擇相應的功能進行操作u 學生通訊錄信息的輸入主要功能:完成學生通信錄信息(姓名、學號、年齡、性別、家庭住址、聯(lián)系電話、寢室號)的錄入,將學生通信錄信息保存于文本文件: 學生通信錄信息.txt中。同時將輸入職工的人數保存到文本文件: 學生人數 .txt中 主要代碼: int n,sum;CStudent *p;cout請輸入您要輸入的學生的個數:n;p=new CStudentn;for(int i=0;iinput();void CStudent:input() /輸入學生通訊信息coutname; coutnumber; coutage; coutsex; coutadd;coutphone;coutid;截圖如下:u 學生通訊錄信息的刪除 主要功能:先從文件中讀出學生信息,對學生通訊錄訊息進行刪除,再將修改后的學生信息保存到文件中,并將修改后人數也保存。 主要代碼: if(d=1) cout請輸入你要刪除學生的姓名:name2;for(int i=0;iname,name2)!=0) outfname number age sex add phone id ; cout刪除完畢!endl;if(d=2)cout請輸入你要刪除學生的學號:number2;for(int i=0;inumber,number2)!=0)outfname number age sex add phone id ; cout刪除完畢!截圖如下:u 學生通訊錄信息修改 主要功能:先從文件中讀出學生信息,對學生通訊錄訊息進行刪除,再將修改后的學生信息保存到文件中。主要代碼;cout請選擇信息修改方式:endl;cout1.按姓名查找修改 2.按學號查找修改d; if(d2) cout輸入錯誤,請重新選擇!endl; else break;if(d=1) coutn請輸入你要修改學生的姓名:name2; for(int i=0;iname,name2)=0)(p+i)-change1();if(d=2) coutn請輸入你要修改學生的學號:number2; for(int i=0;inumber,number2)=0)(p+i)-change1();if(n=1)char name120;cout請輸入修改后的姓名:name1;strcpy(name,name1);cout修改完畢!endl;getchar();if(n=2)char num20;cout請輸入修改后的學號:num; strcpy(number,num);cout修改完畢!endl;getchar();if(n=3)int age1;cout請輸入修改后的年齡:age1;age=age1;cout修改完畢!endl;getchar();if(n=4)char sex12;cout請輸入修改后的性別:sex1;strcpy(sex,sex1);cout修改完畢!endl;getchar();.截圖如下:u 學生通訊錄信息的查詢 主要功能:查詢所要了解學生的通訊基本信息主要代碼:cout請選擇信息查詢方式:endl; cout1.按姓名查詢 2.按學號查詢d; if(d2) cout輸入錯誤,請重新選擇!endl; else break;if(d=1)coutn請輸入你要查詢學生的姓名:name3; for(int i=0;iname,name3)=0)(p+i)-display();if(d=2) cout請輸入你要查詢學生的學號:number3; for(int i=0;inumber,number3)=0)(p+i)-display();截圖如下:u 學生通訊錄信息的瀏覽 主要代碼:void CStudent:display() /顯示學生通訊信息cout學生的名字:nameendl; cout學生的學號:numberendl; cout學生的年齡:ageendl; cout學生的性別:sexendl; cout學生的家庭住址:addendl; cout學生的聯(lián)系電話:phoneendl; cout學生的寢室號:idendl;截圖如下:u 退出系統(tǒng)三、 心得體會回顧起此次課程設計,至今我仍感慨頗多,的確,自從拿到題目到完成整個編程,從理論到實踐,在整整三個星期的日子里,可以學到很多很多的的東西,同時不僅可以鞏固了以前所學過的知識,而且學到了很多在書本上所沒有學到過的知識。通過這次課程設計使我懂得了理論與實際相結合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,從而提高自己的實際動手能力和獨立思考的能力。在設計的過程中遇到問題,這畢竟獨立做的,難免會遇到過各種各樣的問題,同時在設計的過程中發(fā)現了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,比如說結構體通過這次課程設計之后,一定要把以前所學過的知識重新溫故??傊幊逃绕涫钦{試是一項細致深入的工作,需要下工夫、動腦子、善于積累經驗,這往往能反映出一個人的水平、經驗和態(tài)度這次課程設計終于順利完成了,在設計中遇到了很多編程問題,最后在老師的指導和同學的幫助下,終于游逆而解我!同時,對他們表示忠心的感謝!四、 源代碼(一) 職工信息管理系統(tǒng)/Struct .h/ /職工基本信息struct personlong number; /職工號char name12; /姓名char sex; /性別int age; /年齡int rank; /學歷float salary; /工資char add50; /住址long phone; /電話;const int N=20;/head.h/ /函數的聲明#include#include#include#include#includevoid find();void input();void display();void change();void count();void open();int renshu();void xsex(char);void xrank(int);/main .cpp/#includehead.hint scan3() int n;system(cls);cout 歡迎使用職工信息管理系統(tǒng)endl;coutendlendl;cout請選擇所要進行的操作:n;cout1.職工信息錄入 2.職工信息瀏覽 3.查詢和排序n; cout4.職工信息刪除、修改 5.統(tǒng)計n;coutn;return(n);void main()int quit=0;while(!quit)switch(scan3()case 1: input(); /職工信息錄入getchar(); break;case 2: display(); /職工信息瀏覽getchar(); break;case 3: /查詢和排序find();getchar(); break;case 4: /職工信息刪除、修改change();getchar(); break;case 5: /職工信息統(tǒng)計count();getchar(); break;default:cout謝謝使用,再見!endl;quit=1;break;/input.cpp/#includehead.h#includestruct.hvoid input() system(cls); person perN;int t;cout 歡迎使用職工信息錄入功能endl;coutendl;coutt;ofstream outf1(人數.txt,ios:out);if(!outf1)cout不能打開此文件!endl;outf1t;outf1.close(); coutn請輸入t個職工的職工號、姓名、性別、年齡、學歷、工資、住址、電話:n;ofstream outf(職工基本信息.txt,ios:out);/建立打開文件if(!outf)cout不能打開此文件!endl;for(int i=0;it;i+) /輸入職工基本信息coutn請輸入第i+1個職工的信息endl;coutperi.number; if (peri.number=peri-1.number) cout該職工號已存在,請重新輸入!endl; goto loop; outfperi.number ; coutperi.name; outfperi.name ; coutperi.sex; outfperi.sex ; coutperi.age; outfperi.age ; coutperi.rank; outfperi.rank ; coutperi.salary; outfperi.salary ; coutperi.add; outfperi.add ; coutperi.phone; outfperi.phone ;outf.close();/display.cpp/#includestruct.h#includehead.hextern person perN;void display()system(cls); cout 歡迎使用職工信息瀏覽功能endl;coutendl;open(); for(int i=0;iN;i+) /輸出職工信息 if(peri.number=0) break; cout職工號:peri.numberendl; cout姓名:peri.nameendl; cout性別:; xsex(peri.sex); coutendl; cout年齡:peri.ageendl; cout學歷:;xrank(peri.rank);coutendl; cout工資:peri.salaryendl; cout住址:peri.addendl; cout電話:peri.phoneendlendl; void xsex(char ch) /選擇性別if (ch=M|ch=m) cout男;else if (ch=W|ch=w) cout女;void xrank(int d) /選擇學歷if(d=1) cout???else if(d=2) cout本科;else if(d=3) cout碩士;else if(d=4) cout博士;/change.cpp/#includestruct.h#includehead.hextern person perN;int scan2() int d;system(cls);cout 歡迎使用職工信息刪除、修改功能endl;coutendl;coutn請選擇所要進行的操作:n;cout1.修改 2. 刪除n; coutd;return(d);void change() int quit=0;while(!quit)switch(scan2()case 1: /修改職工信息 long t; int i,n; cout請輸入所要修改職工的職工號:t; open(); for(i=0;iN;i+) if(peri.number=t) n=i;cout輸入職工的新信息:n; coutpern.name; coutpern.sex; coutpern.age; coutperi.rank; coutpern.salary; coutpern.add; coutpern.phone;coutn修改完畢!endl;ofstream outf(職工基本信息.txt,ios:out); if(!outf) cout不能打開此文件!endl; for(int m=0;mN;m+) /新信息保存到文件中 outfperi.numberperi.nameperi.sexperi.ageperi.rank peri.salaryperi.addperi.phone; outf.close(); getchar(); break;case 2: /刪除職工信息 open();long t; int i,n,s; cout請輸入所要刪除職工的職工號:t; for(i=0;iN;i+) if(peri.number=t) n=i; pern.number=0;strcpy(pern.name, );pern.sex= ;pern.age=0;pern.rank= ;pern.salary=0 ;strcpy(pern.add, );pern.phone=0;coutn刪除完畢!endl;ofstream outf(職工基本信息.txt,ios:out);if(!outf) cout不能打開此文件!endl; for(int m=0;mN;m+) /新信息保存到文件中 outfperi.numberperi.nameperi.sexperi.ageperi.rank peri.salaryperi.addperi.phone; outf.close(); ofstream outf1(人數.txt,ios:out); if(!outf1) cout不能打開此文件!endl; s=renshu(); s-; outf1s; outf1.close(); getchar(); break;default:quit=1;break;/find .cpp/#includestruct.h#includehead.hextern person perN;int scan1() int n;system(cls);cout 歡迎使用職工信息查詢和排序功能endl;coutendl;coutn請選擇查詢的方式:n;cout1.按工資查詢 2. 按學歷查詢 3.按年齡查詢n; coutn;return(n);void find() system(cls);int quit=0;while(!quit)switch(scan1()case 1: cout按工資從高到低排:endl; open(); person t; int i,j; for(i=0;iN;i+) /按工資高低降序排列 for(j=i+1;jN;j+) if(peri.salaryperj.salary) t=peri; peri=perj; perj=t; for(int m=0;mN;m+) /排序后輸出職工信息 if(perm.number=0) break; cout職工號:perm.numberendl; cout姓名:perm.nameendl; cout性別:; xsex(perm.sex); coutendl; cout年齡:perm.ageendl; cout學歷:;xrank(perm.rank);coutendl; cout工資:perm.salaryendl; cout住址:perm.addendl;

注意事項

本文(C++課程設計報告--職工信息管理系統(tǒng).doc)為本站會員(good****022)主動上傳,裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。 若此文所含內容侵犯了您的版權或隱私,請立即通知裝配圖網(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網速或其他原因下載失敗請重新下載,重復下載不扣分。




關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網版權所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。若文檔所含內容侵犯了您的版權或隱私,請立即通知裝配圖網,我們立即給予刪除!