




免費預覽已結束,剩余19頁可下載查看
下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
中國石油大學(華東)信息與控制工程學院程序設計實習報告小型公司工資管理系統(tǒng)的設計姓名:Yuppies Liu 時 間:2011.7.142011.7.172011年7月目錄一、 實習內容1二、 設計思路2三、 程序代碼清單3四、 運行結果10五、 程序使用說明16六、 總結及心得體會17程序設計實習報告一、實習內容1 題目:小型公司管理系統(tǒng)的設計設計2.設計說明與基本要求(1) 公司主要有4類人員:經理、技術員、銷售員、銷售經理。 要求存儲這些人的職工號、姓名、月工資、年齡、性別等信息。(2) 工資的計算方法 A 經理:固定月薪為8000元; B技術員:工作時間*小時工資(100元/小時);C銷售員:銷售額*4%提成; D銷售經理:底薪(5000元)+所轄部門銷售額總額*0.5%。(3) 員工基本數(shù)據(jù)的輸入 要求每類人員不能少于4人,其中銷售員需要8名,每名銷 售經理手下有名銷售員。(4) 各類的數(shù)據(jù)成員訪問權限設置為:protected3.實現(xiàn)基本功能 (1) 數(shù)據(jù)輸入:輸入各種數(shù)據(jù) (2) 數(shù)據(jù)的輸入 :統(tǒng)計各銷售經理下屬銷售員的銷售額及銷售額之和;銷售經理按工資進行的帽泡排序; (3) 數(shù)據(jù)打?。捍蛴「黝悊T工的數(shù)據(jù)信息;(4) 數(shù)據(jù)備份(5) 退出:退出本系統(tǒng) 備注:可適當擴充程序功能,功能擴充得當可加分4菜單說明(1)數(shù)據(jù)錄入指通過鍵盤輸入各類員工的各項數(shù)據(jù)(2)數(shù)據(jù)統(tǒng)計指統(tǒng)計各銷售經理下屬銷售員的銷售額及銷售額之和;銷售經理按工資進行的冒泡排序 (3) 數(shù)據(jù)的打印指按照表格的格式在屏幕上輸出各員工的數(shù)據(jù)信息(4) 數(shù)據(jù)的備份指把各類員工的數(shù)據(jù)信息寫入文件中保存(5)退出:結束程序的運行二、設計思路在這個公司中有四類人員:經理、兼職技術人員、銷售員要存儲的信息有姓名、編號、性別、年齡、工資、銷售額、所屬經理編號由于所有職員有相同的成員如編號(num)、姓名(name)、性別(sex)、年齡(age)、工資(wage)。所以可將所有信息歸納為一個職員類(Guyuan),將其作為一個基類,然后派生出子類,實現(xiàn)各類人員不同的信息(如工資計算), 由于銷售經理具有銷售員和經理的特性,所以銷售經理采用多重繼承的關系,繼承銷售員和經理的兩個類,為避免二義性將employee定義為虛基類,可用下圖表示:題目中假設公司有2名技術員、4名銷售員、經理和銷售經理各2名,所以用對象數(shù)組的方式,利用循環(huán)語句來實現(xiàn)人員的輸入和輸出,整個程序設計如下:基類雇員類:數(shù)據(jù)成員有職工號、姓名、年齡、性別、月工資;成員函數(shù)只有姓名、年齡、性別的設置函數(shù)。技術員類:繼承基類數(shù)據(jù)成員增加了工作時間;成員函數(shù)有設置函數(shù)、構造函數(shù)、輸出函數(shù)下屬函數(shù)、備份函數(shù)下屬函數(shù)。經理類:繼承基類數(shù)據(jù)成員未增加;成員函數(shù)有設置函數(shù)、構造函數(shù)、輸出函數(shù)下屬函數(shù)、備份函數(shù)下屬函數(shù)。銷售員類:繼承基類數(shù)據(jù)成員多了銷售額、所屬經理編號;成員函數(shù)有設置函數(shù)、構造函數(shù)、輸出函數(shù)下屬函數(shù)、備份函數(shù)下屬函數(shù)、銷售額返回函數(shù)、所屬經理編號輸出函數(shù)。銷售經理類:繼承基類數(shù)據(jù)成員未增加;成員函數(shù)有設置函數(shù)、構造函數(shù)、輸出函數(shù)下屬函數(shù)、備份函數(shù)下屬函數(shù)、統(tǒng)計函數(shù)所屬函數(shù)。三、程序代碼清單#include#include#include#includeusing namespace std;ofstream outfile(f1.txt,ios:out);class Guyuanpublic:int num,age;string name;char sex;int wage;class Jishuyuan: protected Guyuanpublic:int time; void set_jishuyuan()coutnum; coutendl; coutname; coutendl; coutsex; coutendl; coutage; coutendl; couttime; coutendl; wage=time*100; void show_jishuyuan() coutsetw(12)numsetw(12)namesetw(12)sexsetw(12)agesetw(12)wageendl; void show_jishuyuan4() outfilesetw(12)numsetw(12)namesetw(12)sexsetw(12)agesetw(12)wageendl;class Jingli:protected Guyuanpublic: void set_jingli() coutnum; coutendl; coutname; coutendl; coutsex; coutendl; coutage; coutendl;wage=8000; void show_jingli() coutsetw(12)numsetw(12)namesetw(12)sexsetw(12)agesetw(12)wageendl; void show_jingli4() outfilesetw(12)numsetw(12)namesetw(12)sexsetw(12)agesetw(12)wageendl; ; class Xiaoshouyuan:protected Guyuanpublic: void set_xiaoshouyuan() coutnum; coutendl; coutname; coutendl; coutsex; coutendl; coutage; coutendl; coutsell; coutendl; coutbelong; coutendl; wage=sell*4/100; void show_xiaoshouyuan() coutsetw(14)numsetw(14)namesetw(14)sellendl; void show_xiaoshouyuan2() coutsetw(8)numsetw(8)namesetw(8)sexsetw(8)agesetw(8)wagesetw(18)belongendl; void show_xiaoshouyuan4() outfilesetw(8)numsetw(8)namesetw(8)sexsetw(8)agesetw(8)wagesetw(18)belongendl;int sell,belong;class Xiaoshoujingli:protected Guyuanpublic: int shu_jingli() return num; void set_xiaoshoujingli() coutnum;coutendl; coutname;coutendl; coutsex;coutendl; coutage; coutendl; void show_num()coutnum; void show_name()coutname; void show_xiaoshoujingli() coutsetw(12)numsetw(12)namesetw(12)sexsetw(12)agesetw(12)wageendl; void show_xiaoshoujingli4() outfilesetw(12)numsetw(12)namesetw(12)sexsetw(12)agesetw(12)wageendl; void show_wage() coutwage; void wage_sum(int sum) wage=5000+sum*0.5/100; void disp() cout 小型公司工資管理系統(tǒng) endl; cout endl; cout 請選擇您所需要的操作 endl; cout 數(shù)據(jù)輸入: 1,并按回車鍵 endl; cout 數(shù)據(jù)統(tǒng)計: 2,并按回車鍵 endl; cout 數(shù)據(jù)打印: 3,并按回車鍵 endl; cout 數(shù)據(jù)備份: 4,并按回車鍵 endl; cout 退出系統(tǒng): 5,并按回車鍵 endl; cout endl; coutendl; coutw;switch(w)case 1: for(i=0;in;i+) ai.set_jishuyuan();cout*endl;for(i=0;in;i+) bi.set_jingli();cout*endl;for(i=0;i(2*n);i+) ci.set_xiaoshouyuan();cout*endl;for(i=0;in;i+) di.set_xiaoshoujingli();cout*endl;disp(); ;break;case 2: int sumn; int i,j; for(j=0;jn;j+) sumj=0;cout職工號為;dj.show_num();cout銷售經理;dj.show_name();cout下屬銷售員的業(yè)績?yōu)椋篹ndl; coutendl; cout 職工號 姓名 銷售額 endl;for(i=0;i2*n;i+) if(ci.belong=dj.shu_jingli() coutendl;ci.show_xiaoshouyuan(); sumj=sumj+ci.sell; coutendl; cout銷售額總計 setw(28)sumj endl; coutendl;cout銷售經理按工資排序為:endl;coutendl; cout 職工號 姓名 性別 年齡 工資 endl; Xiaoshoujingli x; double y;for(i=0;in;i+)for(j=0;jn;j+)if(sumisumi+1)x=di;di=dj;dj=x;y=sumi;sumi=sumj;sumj=y; for(i=0;in;i+) coutendl;di.wage_sum(sumi);di.show_xiaoshoujingli(); coutendl; disp(); ; break;case 3: int i;cout請等待.endl;cout職工基本情況一覽表如下endl;cout技術員endl;coutendl; cout 職工號 姓名 性別 年齡 工資 endl; for(i=0;in;i+) coutendl;ai.show_jishuyuan(); coutendl;cout*endl;cout經理endl; coutendl; cout 職工號 姓名 性別 年齡 工資 endl; for(i=0;in;i+) coutendl;bi.show_jingli(); coutendl; cout*endl; cout銷售經理endl; coutendl; cout 職工號 姓名 性別 年齡 工資 endl; for(i=0;in;i+) coutendl;di.show_xiaoshoujingli(); coutendl;cout*endl;cout銷售員endl; coutendl; cout 職工號 姓名 性別 年齡 工資 所屬部門經理編號 endl; for(i=0;in*2;i+) coutendl;ci.show_xiaoshouyuan2(); coutendl;cout*endl; disp(); ;break;case 4: int i;outfile職工基本情況一覽表如下endl;outfile技術員endl;outfileendl; outfile 職工號 姓名 性別 年齡 工資 endl; for(i=0;in;i+) outfileendl;ai.show_jishuyuan4(); outfileendl;outfile*endl;outfile經理endl; outfileendl;outfile 職工號 姓名 性別 年齡 工資 endl; for(i=0;in;i+) outfileendl;bi.show_jingli4(); outfileendl; outfile*endl; outfile銷售經理endl; outfileendl; outfile 職工號 姓名 性別 年齡 工資 endl; for(i=0;in;i+) outfileendl;di.show_xiaoshoujingli4(); outfileendl; outfile*endl; outfile銷售員endl; outfileendl; outfile 職工號 姓名 性別 年齡 工資 所屬部門經理編號 endl; for(i=0;in*2;i+) outfileendl;ci.show_xiaoshouyuan4(); outfileendl; outfile*endl; outfile.close(); disp();break;case 5: exit(0); ;break;default:cout 選擇錯誤,請重新選擇!endl; disp();break; return 0;四、運行結果小型公司工資管理系統(tǒng) 請選擇您所需要的操作 數(shù)據(jù)輸入: 1,并按回車鍵 數(shù)據(jù)統(tǒng)計: 2,并按回車鍵 數(shù)據(jù)打印: 3,并按回車鍵 數(shù)據(jù)備份: 4,并按回車鍵 退出系統(tǒng): 5,并按回車鍵 請選擇一個操作: 1技術員編號:101其姓名:zhang1性別(m/w):w年齡:27工作時間:56技術員編號:102其姓名:wang1性別(m/w):m年齡:27工作時間:58*經理的編號:201其姓名:wang2其性別(m/w):w年齡:34經理的編號:202其姓名:36其性別(m/w):m年齡:36*銷售員的編號:301其姓名:zhang3性別(m/w):m年齡:28銷售額:50000所屬銷售經理的編號:401銷售員的編號:302其姓名:wang3性別(m/w):w年齡:32銷售額:54000所屬銷售經理的編號:401銷售員的編號:303其姓名:wan1性別(m/w):w年齡:35銷售額:60000所屬銷售經理的編號:402銷售員的編號:304其姓名:wan2性別(m/w):m年齡:26銷售額:80000所屬銷售經理的編號:402*銷售經理的編號:401其姓名:sun性別(m/w):w年齡:36銷售經理的編號:402其姓名:liu性別(m/w):w年齡:29* 小型公司工資管理系統(tǒng) 請選擇您所需要的操作 數(shù)據(jù)輸入: 1,并按回車鍵 數(shù)據(jù)統(tǒng)計: 2,并按回車鍵 數(shù)據(jù)打印: 3,并按回車鍵 數(shù)據(jù)備份: 4,并按回車鍵 退出系統(tǒng): 5,并按回車鍵 請選擇一個操作: 2職工號為401銷售經理sun下屬銷售員的業(yè)績?yōu)椋?職工號 姓名 銷售額 301 zhang3 50000 302 wang3 54000銷售額總計 104000 職工號為402銷售經理liu下屬銷售員的業(yè)績?yōu)椋?職工號 姓名 銷售額 303 wan1 60000 304 wan2 80000銷售額總計 140000 銷售經理按工資排序為: 職工號 姓名 性別 年齡 工資 402 liu w 29 5700 401 sun w 36 5520 小型公司工資管理系統(tǒng) 請選擇您所需要的操作 數(shù)據(jù)輸入: 1,并按回車鍵 數(shù)據(jù)統(tǒng)計: 2,并按回車鍵 數(shù)據(jù)打印: 3,并按回車鍵 數(shù)據(jù)備份: 4,并按回車鍵 退出系統(tǒng): 5,并按回車鍵 請選擇一個操作: 3請等待.職工基本情況一覽表如下技術員 職工號 姓名 性別 年齡 工資 101 zhang1 w 27 5600 102 wang1 m 27 5800*經理 職工號 姓名 性別 年齡 工資 201 wang2 w 34 8000 202 36 m 36 8000*銷售經理 職工號 姓名 性別 年齡 工資 402 liu w 29 5700 401 sun w 36 5520*銷售員 職工號 姓名 性別 年齡 工資 所屬部門經理編號 301 zhang3 m 28 2000 401 302 wang3 w 32 2160 401 303 wan1 w 35 2400 402 304 wan2 m 26 3200 402* 小型公司工資管理系統(tǒng) 請選擇您所需要的操作 數(shù)據(jù)輸入: 1,并按回車鍵 數(shù)據(jù)統(tǒng)計: 2,并按回車鍵 數(shù)據(jù)打印: 3,并按回車鍵 數(shù)據(jù)備份: 4,并按回車鍵 退出系統(tǒng): 5,并按回車鍵 請選擇一個操作: 4 小型公司工資管理系統(tǒng) 請選擇您所需要的操作 數(shù)據(jù)輸入: 1,并按回車鍵 數(shù)據(jù)統(tǒng)計: 2,并按回車鍵 數(shù)據(jù)打印: 3,并按回車鍵 數(shù)據(jù)備份: 4,并按回車鍵 退出系統(tǒng): 5,并按回車鍵 請選擇一個操作: 5Press any key to continue五、程序的使用說明1程序中各類人員個數(shù)默認為2個,銷售員默認為4個。2請輸入銷售人員信息后再輸入銷售經理的信息。3輸入時,除姓名、性別外,其余各項請勿輸入除數(shù)字以外的字符。4輸入數(shù)據(jù)時若出現(xiàn)無限循環(huán)的現(xiàn)象,請重新執(zhí)行程序并輸入信息。5未輸入信息時,打印或備份,各類人員除姓名性別為空外,其余各項均為0。6重復輸入某類人員數(shù)據(jù)時,可覆蓋上一次輸入的該類人員的數(shù)據(jù)。7程序中輸出文件位置默認為C盤,若有需要請自行更改。六、總結及心得體會通過四天的編程,我對C+有了更深一步的認識。 要做一個簡單的管理系統(tǒng),首
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 太陽教研活動方案
- 夏至親子活動方案
- 塔爾寺講經活動方案
- 地球構造活動方案
- 大洋取水活動方案
- 夜京城消費活動方案
- 基層民兵掃雪活動方案
- 地產哈根達斯活動方案
- 復興區(qū)環(huán)境日活動方案
- 基層八一活動方案
- 楊梅承包合同協(xié)議書
- 糧食加工消防安全管理規(guī)定
- 骨科器械的處理流程與清洗難點
- 小浣熊的課件
- 2024北京西城區(qū)五年級(下)期末語文試題及答案
- 屋頂樹脂瓦安裝合同協(xié)議
- 湖南能源集團有限公司招聘筆試題庫2025
- 美容皮膚科試題及答案
- 2025年質量員(市政工程)專業(yè)技能練習題庫及答案(完整版)
- 客戶投訴管理和考核辦法
- 譫妄狀態(tài)患者的護理常規(guī)
評論
0/150
提交評論