




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
課程設(shè)計報告公司人員管理系統(tǒng)課程:面向?qū)ο笳n程設(shè)計班級:11511學號:20113051102姓名:吳小蛟指導老師:清華教授2012年6月12日設(shè)計題目(問題)描述和要求題目:公司人員管理系統(tǒng)問題描述:某小型公司,主要有四類人員:經(jīng)理、兼職技術(shù)人員、銷售經(jīng)理和兼職推銷員?,F(xiàn)在,需要存儲這些人員的姓名、編號、級別、當月薪水,計算月薪總額并顯示全部信息。要求:其中,人員編號在生成人員信息時同時生成,每輸入一個人員信息編號順序加1。程序?qū)λ腥藛T有提升級別的功能月薪的計算方法是:經(jīng)理拿固定月薪,兼職技術(shù)人員按工作小時數(shù)領(lǐng)取月薪,兼職推銷員的報酬按該推銷員當月銷售額提成,銷售經(jīng)理既拿固定月薪也領(lǐng)取銷售提成。能按姓名或者編號顯示、查找、增加、刪除和保存各類人員的信息系統(tǒng)分析與模塊設(shè)計根據(jù)問題描述和要求,系統(tǒng)要求能夠按姓名或者編號顯示、查找、增加、刪除和保存各類人員的信息。確定程序至少應(yīng)該具備如下功能:“查詢?nèi)藛T”、“增加人員”、“刪除人員”、“數(shù)據(jù)存盤”基本模塊。系統(tǒng)既然具有“數(shù)據(jù)存盤”功能-人員數(shù)據(jù)可以保存到磁盤文件,那么也就意味著今后可以從磁盤文件讀出人員數(shù)據(jù),所以系統(tǒng)增加了“人員數(shù)據(jù)裝入”模塊,以方便用戶使用、避免數(shù)據(jù)重復錄入??紤]到系統(tǒng)實現(xiàn)簡捷,人員數(shù)據(jù)文件采用文本文件,人員數(shù)據(jù)文件名:。做為一個完整系統(tǒng),除了具有增加人員,刪除人員信息模塊,還應(yīng)該具有修改人員相關(guān)信息的功能,所以本系統(tǒng)設(shè)計時考慮增加“修改人員”模塊??紤]到根據(jù)編號查找人員信息功能在“刪除人員”、“修改人員”等模塊都使用,所以可以考慮設(shè)置為一個模塊??紤]到系統(tǒng)要求人員編號在生成人員信息時同時生成,每輸入一個人員信息編號順序加1。這樣就要求人員編號在增加人員時自動生成(增加1)且不重復。根據(jù)這個要求,可以考慮設(shè)置一個全局量:“當前最大編號”,每增加一個人員,當前最大編號自動增1,然后新增加人員使用這個編號。為了保證系統(tǒng)能記憶這個編號,可以使用一個數(shù)據(jù)文件保存當前這個編號。系統(tǒng)每次開始運行前從文件讀入這個編號,隨著人員增加,編號自動增加,系統(tǒng)每次運行結(jié)束時將這個編號寫入文件。本系統(tǒng)將初值(沒有一個用戶時)設(shè)置為0??紤]到人員的許多固定信息如:經(jīng)理、銷售經(jīng)理的固定月薪,銷售經(jīng)理、銷售人員提成,技術(shù)人員小時工資等都是一些不需要每個人員都要輸入的信息,所以可以將這些信息都保存在一個數(shù)據(jù)文件中,本系統(tǒng)為了方便起見,將這些信息與“最大編號”全部保存在一個文件中,并使用“基礎(chǔ)數(shù)據(jù)設(shè)置”模塊進行設(shè)置和管理?;A(chǔ)數(shù)據(jù)文件也采用文本文件,基礎(chǔ)數(shù)據(jù)文件名:。本系統(tǒng)還提供“查詢本月經(jīng)營信息”幫助計算銷售總額,工資總額,并按照公式計算本月盈虧。綜合考慮系統(tǒng)具有下面8項功能模塊:增加人員,刪除人員,修改人員,查詢本月經(jīng)營信息,基礎(chǔ)數(shù)據(jù)設(shè)置,數(shù)據(jù)存盤,數(shù)據(jù)裝入。系統(tǒng)使用的數(shù)據(jù)文件格式如下::(格式:項目數(shù)據(jù))經(jīng)理固定月薪 3000銷售經(jīng)理固定月薪 1000銷售經(jīng)理提成% 1銷售人員提成% 2技術(shù)人員小時工資 20 6:(格式:編號,姓名,人員類別,其它數(shù)據(jù),銷售員銷售額,技術(shù)人員工作小時)2 3 100000 3 1 4 4 100 5 26 3 150000 注:人員類型編號1-經(jīng)理;2-銷售經(jīng)理;3-銷售員;4-技術(shù)人員系統(tǒng)設(shè)計系統(tǒng)總體框架使用面向?qū)ο蟮某绦蛟O(shè)計思想進行分析,整個系統(tǒng)涉及兩大類信息和操作,公司,人員。所以系統(tǒng)主要涉及兩個大類:公司類、人員類。系統(tǒng)的總體框架就是公司類,人員類的定義;主函數(shù)中定義一個公司對象,循環(huán)顯示主菜單并根據(jù)用戶選擇調(diào)用公司類的相應(yīng)方法(成員函數(shù))。(1)公司類:考慮系統(tǒng)操作的人員信息的數(shù)量具有不確定性,所以考慮使用鏈表保存、處理人員信息。公司類包含:所有人員信息的一個不帶頭結(jié)點的鏈表(作為數(shù)據(jù)成員)及可以對人員信息進行增,刪,改,查詢經(jīng)營信息,基礎(chǔ)數(shù)據(jù)設(shè)置,數(shù)據(jù)存盤,數(shù)據(jù)裝入等操作的相關(guān)模塊()作為成員函數(shù)。(2)人員類:所有人員都具有的公共信息及操作可以使用人員類進行描述。由于系統(tǒng)具有4類人員且4類人員數(shù)據(jù),操作有所不同,如銷售員包含銷售額,而技術(shù)人員包含工作小時數(shù)且計算工資的方法不同,所以應(yīng)當為4類人員創(chuàng)建相應(yīng)的類的派生類。(3)為了使公司類可以方便處理人員信息,可以考慮將公司類確定為人員類的友元類或者人員類提供公共的方法以便公司類進行操作。為了公司類可以用共同方法操作人員類,可以將人員類的方法確定為虛函數(shù)。類的層次圖{()()()}{(),{,{,{t,(),()(),(),(),()}(),(),()(),(),(),(),()}()}()}其中:(1)類的人員編號,人員姓名,人員類別,工資,指向下一個人員的指針類的(),()定義為純虛函數(shù)分別表示要計算人員工資和輸出人員信息,由于定義純虛函數(shù),所以是抽象類,具體計算工資,輸出人員信息由派生類完成。(2)各個派生的類,包含本類對象特有的數(shù)據(jù),銷售員銷售額,銷售經(jīng)理的總銷售額(系統(tǒng)統(tǒng)計各個銷售員銷售額得到銷售經(jīng)理的總銷售額),技術(shù)人員工作小時數(shù)。{*,()()()()()(),()()()()}其中:(1)就是人員鏈表。(2)()用于清除人員鏈表所有結(jié)點。(3)()()()()()()()分別表示系統(tǒng)各個功能模塊:增加人員,刪除人員,修改人員,查詢本月經(jīng)營信息,基礎(chǔ)數(shù)據(jù)設(shè)置,數(shù)據(jù)存盤,數(shù)據(jù)裝入。系統(tǒng)關(guān)鍵算法流程圖(1)主函數(shù)流程(2)()(3)()(4)
(5)()(6)()(7)()源程序清單參見附錄系統(tǒng)測試小結(jié)通過程序設(shè)計,我能夠基本掌握程序設(shè)計的方法,并且在此基礎(chǔ)上掌握類的構(gòu)造方法,明確類中構(gòu)造函數(shù)、成員函數(shù)的建立以及調(diào)用,此外,并且,結(jié)合中字符串函數(shù)的編譯系統(tǒng)給定的庫函數(shù),采用一定的邏輯編譯,實現(xiàn)題目中要求的各項要求,達到基本實驗?zāi)康模岣咦约旱恼Z言使用水平。參考文獻【1】陳維興,林小茶面向?qū)ο蟪绦蛟O(shè)計教程.北京.清華大學出版社2010,10【2】譚浩強語言程序設(shè)計.北京:清華大學出版社.2010,5附錄:/*本程序有關(guān)的兩個數(shù)據(jù)文件:-基礎(chǔ)數(shù)據(jù)文件(必須存在,且按規(guī)定格式保存)-人員信息文件(可選)*/<><><><>全局數(shù)據(jù),對象;經(jīng)理固定月薪;銷售經(jīng)理固定月薪;銷售經(jīng)理提成%;銷售人員提成%;技術(shù)人員小時工資;員工標識(要保證唯一)員工類{:;編號[20];姓名;崗位;收入*;:(*){>;(>);>;}()=0;()=0;;};經(jīng)理類{:(*)(){}(){;}(){();<<<<"\t"<<<<"\t經(jīng)理\t"<<<<;}};銷售經(jīng)理類{:;:(*)(){}(s){; }(){*100;}(){();<<<<"\t"<<<<"\t銷售經(jīng)理\t"<<<<;}};技術(shù)員類{:t;:(*T)(){>;}(){t;}(T){>;}(){*t;}(){();<<<<"\t"<<<<"\t技術(shù)員\t"<<t<<"\t"<<<<;}};銷售員類{:;:(*)(){>;}(){;}(){>;}(){100*;}(){();<<<<"\t"<<<<"\t銷售員\t"<<<<"\t"<<<<;}};公司類{:*;員工表();清除內(nèi)存中數(shù)據(jù):(){0;();}(){*p;;(p){>;;;}0;}();增加人員();刪除人員();修改人員();查詢?nèi)藛T();基礎(chǔ)數(shù)據(jù)設(shè)置();數(shù)據(jù)存盤(包括基礎(chǔ)數(shù)據(jù),人員數(shù)據(jù))();數(shù)據(jù)裝入(包括基礎(chǔ)數(shù)據(jù),人員數(shù)據(jù))};()清除內(nèi)存中人員數(shù)據(jù)(內(nèi)部使用){*;(p){>;p;;}}(){*p;新結(jié)點指針;[20];;<<"\n**新增員工**\n";輸入員工信息;<<"輸入崗位(1-經(jīng)理2-銷售經(jīng)理3-銷售員4-技術(shù)員):";>>;<<"輸入姓名:";>>;(3){<<"本月銷售額:";>>;}(4){<<"本月工作小時數(shù)(0-168):";>>T;}創(chuàng)建新員工結(jié)點(){1();;2();;3();;4();;}>0;員工結(jié)點加入鏈表()若已經(jīng)存在結(jié)點{*p2;p2;(p2->)查找尾結(jié)點{p22->;}p2->;連接}若不存在結(jié)點(表空){;連接}}()刪除人員{;<<"\n**刪除員工**\n";<<":";>>;查找要刪除的結(jié)點*p1,*p2;p1;(p1){(p1->);{p21;p11->;}}刪除結(jié)點(p1)若找到結(jié)點,則刪除{(p1)若要刪除的結(jié)點是第一個結(jié)點{1->;p1;}若要刪除的結(jié)點是后續(xù)結(jié)點{p2->1->;p1;}<<"找到并刪除\n";}未找到結(jié)點<<"未找到!\n";}(){;[20];;<<"\n**修改員工**\n";<<":";>>;查找要修改的結(jié)點*p1,*p2;p1;(p1){(p1->);{p21;p11->;}}修改結(jié)點(p1)若找到結(jié)點{p1->();<<"調(diào)整崗位(1-經(jīng)理2-銷售經(jīng)理3-銷售員4-技術(shù)員):";>>;(p1->)若崗位發(fā)生變動{修改其它數(shù)據(jù)<<"輸入姓名:";>>;(3){<<"本月銷售額:";>>;}(4){<<"本月工作小時數(shù)(0-168):";>>T;}創(chuàng)建新員工結(jié)點*p3;(){13(p1->);;23(p1->);;33(p1->);;43(p1->);;}員工結(jié)點替換到鏈表p3->1->;(p1)若要替換的結(jié)點是第一個結(jié)點3;若要刪除的結(jié)點是后續(xù)結(jié)點p2->3;刪除原來的員工結(jié)點p1;}若崗位沒有變動{<<"輸入姓名:";>>p1->;(3){<<"本月銷售額:">>;((*)p1)->();}(4){<<"本月工作小時數(shù)(0-168):">>T;((*)p1)->(T);}}<<"修改成功!\n";}未找到結(jié)點<<"未找到!\n";}(){<<"\n**查詢?nèi)藛T本月銷售信息**\n";0;銷售額總和*;(p){(>3)((*)p)->();>;};2=0;工資總和(p){(>2)((*)p)->();>();2>;>;}<<"本月盈利:"<<*0.202<<;<<"(按照20%利潤計算)\n";}(){<<"\n**設(shè)置基礎(chǔ)數(shù)據(jù)**\n";<<"經(jīng)理固定月薪["<<<<"元]:";>>;<<"銷售經(jīng)理固定月薪["<<<<"元]:";>>;<<"銷售經(jīng)理提成["<<<<"%]:";>>;<<"銷售人員提成["<<<<"%]:";>>;<<"技術(shù)人員小時工資["<<<<"(元/小時)]:";>>;<<"員工標識[>="<<<<"]:";>>;}()數(shù)據(jù)存盤(包括基礎(chǔ)數(shù)據(jù),人員數(shù)據(jù)),均采用文本文件{;c;<<"\n保存人員和基礎(chǔ)數(shù)據(jù),是否繼續(xù)?[]:";>>c;((c)'Y');保存人員編號、姓名、崗位("");*;(p){<<><<"\t"<<><<"\t"<<><<"\t";(>3)<<((*)p)->()<<"\t";(>4)<<((*)p)->()<<"\t";<<;>;}();保存基礎(chǔ)數(shù)據(jù)("");<<"經(jīng)理固定月薪\t"<<<<;<<"銷售經(jīng)理固定月薪\t"<<<<;<<"銷售經(jīng)理提成%\t"<<<<;<<"銷售人員提成%\t"<<<<;<<"技術(shù)人員小時工資\t"<<<<;<<"\t"<<<<;();<<"\n保存人員和基礎(chǔ)數(shù)據(jù)已經(jīng)完成...\n";}()數(shù)據(jù)裝入(包括基礎(chǔ)數(shù)據(jù),人員數(shù)據(jù)){基礎(chǔ)數(shù)據(jù)裝入;[80];用于保存數(shù)據(jù)文件中的注釋字符串("");>>>>;經(jīng)理固定月薪>>>>;銷售經(jīng)理固定月薪>>>>;銷售經(jīng)理提成%>>>>;銷售人員提成%>>>>;技術(shù)人員小時工資>>>>;員工標識();清除內(nèi)存人員數(shù)據(jù)();人員數(shù)據(jù)數(shù)據(jù)裝入;*;;[20];;;("");讀一條記錄>>>>>
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 郫縣電梯加裝施工方案
- 2025屆湖南省張家界市名校中考生物五模試卷含解析
- 出售廣東漁船合同范例
- 專題01 聲現(xiàn)象(3大模塊知識清單+3個易混易錯+2種方法技巧+典例真題精析)-2025年中考地理一輪復習知識清單
- 單位共有房屋買賣合同范例
- 多媒體教學計劃
- 眼科手術(shù)患者護理
- 員工福利的改進與落實計劃
- 環(huán)保與可持續(xù)發(fā)展計劃
- 班主任的班級學習目標計劃
- 卷揚機驗收表格
- TensorFlow+Keras深度學習人工智能實踐應(yīng)用
- 自驅(qū)型成長:如何培養(yǎng)孩子的自律力
- 談心談話記錄100條范文(6篇)
- 物聯(lián)網(wǎng)設(shè)備管理平臺項目實施服務(wù)方案
- 機械加工廠安全生產(chǎn)和環(huán)境保護應(yīng)急預案
- (完整word版)A3試卷模板
- 2023年福建省中考英語聽力試題(試題卷+音頻+錄音原文)
- 公司的JMP軟件培訓教程
- 筑基功法精選
- 歐洲電力市場深度報告:歐洲電力市場供需格局和電價分析
評論
0/150
提交評論