




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上中國(guó)石油大學(xué)(華東)信息與控制工程學(xué)院程序設(shè)計(jì)實(shí)習(xí)報(bào)告小型公司工資管理系統(tǒng)的設(shè)計(jì)專業(yè)班級(jí):電子信息工程*班學(xué)號(hào):*姓名:*指導(dǎo)教師:* 時(shí) 間:2013.7.12013.7.62013年7月目錄一、 實(shí)習(xí)內(nèi)容01二、 設(shè)計(jì)思路02三、 程序調(diào)試過程中典型問題及解決方法03四、 運(yùn)行結(jié)果04五、 程序使用說明10六、 心得體會(huì)及課程改進(jìn)設(shè)想10專心-專注-專業(yè)備注:頁(yè)碼根據(jù)目錄的實(shí)際頁(yè)碼進(jìn)行標(biāo)注一、實(shí)習(xí)內(nèi)容1. 題目:小型公司工資管理系統(tǒng)的設(shè)計(jì)2. 設(shè)計(jì)說明與基本要求(1) 公司主要有4類人員:經(jīng)理、技術(shù)員、銷售員、銷售經(jīng)理。 要求存儲(chǔ)這些人的職工號(hào)、姓名、性別、年齡、
2、月工資等 信息;(2) 工資的計(jì)算方法 經(jīng)理:固定月薪為8000元; 技術(shù)員:工作時(shí)間*小時(shí)工資(100元/小時(shí));銷售員:銷售額*4%提成; 銷售經(jīng)理:底薪(5000元)+下屬銷售員銷售額總額*0.5%;(3) 員工基本數(shù)據(jù)的輸入 要求每類人員不能少于2人,其中銷售員需要4名,每名銷 售經(jīng)理手下至少有2名銷售員。(4) 各類的數(shù)據(jù)成員訪問權(quán)限設(shè)置為:protected(5)注意一個(gè)銷售經(jīng)理管轄多個(gè)銷售員。(6)其他功能可適當(dāng)擴(kuò)充。(7)要求在控制臺(tái)下完成。3. 實(shí)現(xiàn)基本功能 (1) 菜單選擇功能 (2) 數(shù)據(jù)輸入:輸入各種數(shù)據(jù); (3) 數(shù)據(jù)統(tǒng)計(jì):統(tǒng)計(jì)各銷售經(jīng)理下屬銷售員的銷售額及銷售額之和
3、;銷售經(jīng)理按工資進(jìn)行冒泡排序; (4)數(shù)據(jù)打?。捍蛴「黝悊T工的數(shù)據(jù)信息; (5)菜單說明 1.數(shù)據(jù)錄入指通過鍵盤輸入各類員工的各項(xiàng)數(shù)據(jù); 2.數(shù)據(jù)統(tǒng)計(jì)指統(tǒng)計(jì)各銷售經(jīng)理下身書銷售員的銷售額及銷售額之和;銷售按工資進(jìn)行冒泡排序; 3.數(shù)據(jù)打印指按照表格的格式在屏幕上輸出各員工的信息; 4.數(shù)據(jù)備份指將所有員工的信息保存到文件; 5.退出:結(jié)束程序的運(yùn)行。二、設(shè)計(jì)思路充分利用了類的繼承與派生的知識(shí),先定義了一個(gè)雇員類staff,由雇員類公有派生出技術(shù)員類tech,銷售員類saleman,經(jīng)理類mannger,由銷售員類saleman,經(jīng)理類mannger公有派生出銷售經(jīng)理類salemannger。
4、各類的數(shù)據(jù)成員訪問權(quán)限設(shè)置為:protected,繼承方式都運(yùn)用公有繼承,通過基類去寫的派生類就可以調(diào)基類的公有成員。利用for循環(huán)把經(jīng)理數(shù)據(jù),技術(shù)員數(shù)據(jù),銷售員數(shù)據(jù),銷售經(jīng)理數(shù)據(jù)輸入,利用冒泡排序法把各銷售經(jīng)理的資按升序排列。利用if語(yǔ)句進(jìn)行選擇系統(tǒng)進(jìn)行的工作。在主菜單中進(jìn)行調(diào)用各函數(shù),從而實(shí)現(xiàn)系統(tǒng)各功能的運(yùn)行。主函數(shù)要盡可能得簡(jiǎn)明扼要,只是起調(diào)用其它函數(shù)的作用。每一個(gè)函數(shù)之間要相互協(xié)調(diào),要讓程序中的變量和函數(shù)能夠得到分運(yùn)用,這樣可以加快程序的運(yùn)行速度,加強(qiáng)程序的實(shí)用性。三、程序調(diào)試過程中典型問題及解決方法1、這個(gè)程序比較長(zhǎng),在編程的時(shí)候給我最深刻的體會(huì)是一定要整體考慮布局,并且一定要注意程
5、序的簡(jiǎn)潔性。整體布局,首先體現(xiàn)在對(duì)壘中各個(gè)變量、函數(shù)的定義以及對(duì)對(duì)象的聲明上。因?yàn)楸境绦蛞箢愔凶兞渴潜Wo(hù)類型的變量,也就意味著再累外不能直接訪問,只能夠通過類中公有函數(shù)去訪問,而類中的數(shù)據(jù)在后續(xù)操作中要參與統(tǒng)計(jì),比較等操作,所以在定義訪問數(shù)據(jù)的函數(shù)時(shí)要注意函數(shù)名的命名,一定要前后照應(yīng)。例如,本程序中的四個(gè)派生類中都含有從雇員積累中繼承過來(lái)的“工資”這一個(gè)數(shù)據(jù),但是在不一樣的類中有不一樣的情況,在經(jīng)理類中是固定的,但是在銷售員類和銷售經(jīng)理類中是進(jìn)行計(jì)算的,這就要求可以訪問它們的函數(shù)有不一樣的返回值。一邊在后面進(jìn)行統(tǒng)計(jì)。2、本程序中每一個(gè)類中都有多個(gè)對(duì)象,我剛開始在編程的時(shí)候時(shí)將它們一個(gè)一個(gè)獨(dú)立
6、的進(jìn)行聲明。但最后發(fā)現(xiàn),其實(shí)利用對(duì)象數(shù)組進(jìn)行聲明更加簡(jiǎn)潔與方便。尤其是在對(duì)銷售經(jīng)理利用冒泡法排序的時(shí)候,以及在統(tǒng)計(jì)數(shù)據(jù)的時(shí)候,直接利用多個(gè)FOR循環(huán)結(jié)構(gòu)就可以很方便的對(duì)它們進(jìn)行操作,省去了很多麻煩。3、在本程序中我們應(yīng)該充分的利用類的繼承和派生的優(yōu)越性。我一開始在定義四個(gè)派生類時(shí),在每一個(gè)派生類中都分別定義了輸入輸出姓名,年齡,性別的函數(shù)。到最后覺得十分繁瑣,其實(shí)既然四個(gè)類都是從雇員類中繼承過來(lái)的,所以直接在雇員基類中定義一個(gè)輸入姓名,年齡,性別的函數(shù)就可以解決問題。4、本程序中中需要定義的函數(shù),對(duì)象較多,所以要盡可能是名稱簡(jiǎn)潔易懂,這樣我們?cè)跈z查程序的時(shí)候比較好檢查,剛開始的時(shí)候我沒注意到這
7、個(gè)問題這給我后邊的編程工作帶來(lái)很大麻煩,我認(rèn)為這在編程中是比較重要的。四、運(yùn)行結(jié)果五、程序使用說明點(diǎn)擊運(yùn)行后須按所給提示輸入,當(dāng)提示給出后可供選擇的選項(xiàng)有1、2、3、4、5選擇1時(shí),可輸入公司職員的基本信息當(dāng)?shù)?步輸入完后可以運(yùn)行第2步,對(duì)銷售經(jīng)理和銷售員的基本信息進(jìn)行統(tǒng)計(jì)。選擇3時(shí),可以將公司職員的信息以表格方式進(jìn)行統(tǒng)計(jì)。選擇4時(shí),可以在程序所在的文件夾內(nèi)生成一個(gè)TXT格式的文本文檔。選擇5時(shí),可以選擇是否退出程序。在提示給出后,當(dāng)輸入錯(cuò)誤的選擇時(shí)可給出提示并進(jìn)行重新選擇。六、心得體會(huì)及課程改進(jìn)設(shè)想程序清單以上為實(shí)驗(yàn)報(bào)告,下面附上程序#include<fstream>#inclu
8、de<iostream>#include<iomanip>#include <string>using namespace std;class staffprotected:int num;string name;double money;int age;char sex;public:int g_num()return num;string g_name()return name;double g_money()return money;int g_age()return age;char g_sex()return sex;class tech:publ
9、ic staffprotected:int time;public:int g_time()return time;void input1()cout<<"技術(shù)員的編號(hào):"cin>>num;cout<<"其姓名:"cin>>name;cout<<"性別(m/w):"cin>>sex; cout<<"年齡:"cin>>age;cout<<"工作時(shí)間:"cin>>time;clas
10、s mannger:public staffpublic:void input2()cout<<"經(jīng)理的編號(hào):"cin>>num;cout<<"其姓名:"cin>>name;cout<<"性別(m/w):"cin>>sex;cout<<"年齡:"cin>>age;class salemannger:public manngerpublic:void input3()cout<<"銷售經(jīng)理的編號(hào):&q
11、uot;cin>>num;cout<<"其姓名:"cin>>name;cout<<"性別(m/w):"cin>>sex;cout<<"年齡:"cin>>age;class saleman:public staffprotected:int num2;public:int g_num2()return num2;void input4()cout<<"銷售員的編號(hào):"cin>>num;cout<<&
12、quot;其姓名:"cin>>name;cout<<"性別(m/w):"cin>>sex;cout<<"年齡:"cin>>age;cout<<"銷售額:"cin>>money;cout<<"所屬銷售經(jīng)理的編號(hào):"cin>>num2; ; int x,i,j; tech t4; mannger m4; salemannger s4,e; saleman sa8; double sum4;int mai
13、n() void setout(); void put2();void put3();void put4();void put5(); for(;) setout(); cin>>x; if(x=1) for(i=0;i<4;i+) ti.input1(); cout<<""<<endl; for(i=0;i<4;i+) mi.input2(); cout<<""<<endl; for(i=0;i<8;i+) sai.input4(); cout<<"&q
14、uot;<<endl; for(i=0;i<4;i+) si.input3(); cout<<""<<endl; else if(x=2) put2(); else if(x=3)put3(); else if(x=4)put4();else if(x=5)int b;cout<<"請(qǐng)問是否要退出系統(tǒng):選擇 1是;2否"<<endl;cin>>b;if(b=1)exit(1);if(b=2)continue;elsecout<<"輸入錯(cuò)誤!請(qǐng)檢查后重新輸入
15、!"<<endl; /此處為大循環(huán)的終止return 0;void setout()cout<<"小型公司工資管理系統(tǒng)"<<endl; cout<<""<<endl; cout<<" 請(qǐng)選擇您所需的操作 "<<endl; cout<<" 數(shù)據(jù)輸入:1,并按回車鍵 "<<endl; cout<<" 數(shù)據(jù)統(tǒng)計(jì):2,并按回車鍵 "<<endl; cout<
16、<" 數(shù)據(jù)打?。?,并按回車鍵 "<<endl; cout<<" 數(shù)據(jù)備份:4,并按回車鍵 "<<endl; cout<<" 退出系統(tǒng):5,并按回車鍵 "<<endl; cout<<""<<endl; cout<<"請(qǐng)選擇一個(gè)操作 " ; void put2()double y,sum4=0,0,0,0;for(i=0;i<4;i+) cout<<"職工號(hào)為"
17、;<<si.g_num()<<"銷售經(jīng)理"<<si.g_name()<<"下屬銷售員的業(yè)績(jī)?yōu)?"<<endl; cout<<""<<endl; cout<<" 職工號(hào) 姓名 銷售額 "<<endl; for(j=0;j<8;j+) if(si.g_num()=saj.g_num2()cout<<""<<endl; cout<<""
18、;<<setw(9)<<saj.g_num()<<" "<<setw(8)<<saj.g_name()<<""<<setw(8)<<saj.g_money()<<""<<endl; sumi=sumi+saj.g_money(); cout<<""<<endl; cout<<""<<"銷售額總計(jì)"<<
19、;""<<setw(10)<<sumi<<" " <<endl; cout<<""<<endl;cout<<" 銷售經(jīng)理按工資排序:"<<endl;for(j=0;j<3;j+)for(i=0;i<3-j;i+)if(sumi<sumi+1)y=sumi;sumi=sumi+1;sumi+1=y;e=si;si=si+1;si+1=e;cout<<""<<en
20、dl;cout<<"職工號(hào) 姓名 性別年齡 工資 "<<endl; for(i=0;i<4;i+) cout<<""<<endl; cout<<""<<setw(6)<<si.g_num()<<""<<setw(7)<<si.g_name()<<" "<<setw(4)<<si.g_sex()<<""&l
21、t;<setw(5)<<si.g_age()<<" "<<setw(8)<<5000+sumi*0.005<<""<<endl; cout<<""<<endl;cout<<""<<endl;void put3()cout<<"請(qǐng)等待"<<endl;cout<<"職工基本情況一覽表如下"<<endl;cou
22、t<<"技術(shù)員"<<endl;cout<<""<<endl;cout<<"職工號(hào) 姓名 性別年齡 工資 "<<endl; for(i=0;i<4;i+) cout<<""<<endl;cout<<""<<setw(6)<<ti.g_num()<<""<<setw(7)<<ti.g_name()<&l
23、t;" "<<setw(4)<<ti.g_sex()<<""<<setw(5)<<ti.g_age()<<" "<<setw(8)<<ti.g_time()*100<<""<<endl; cout<<""<<endl;cout<<""<<endl;cout<<"經(jīng)理"<&l
24、t;endl;cout<<""<<endl;cout<<"職工號(hào) 姓名 性別年齡 工資 "<<endl; for(i=0;i<4;i+) cout<<""<<endl; cout<<""<<setw(6)<<mi.g_num()<<""<<setw(7)<<mi.g_name()<<" "<<setw(4
25、)<<mi.g_sex()<<""<<setw(5)<<mi.g_age()<<" "<<setw(8)<<8000<<""<<endl; cout<<""<<endl;cout<<""<<endl;cout<<"銷售經(jīng)理"<<endl;cout<<""<<
26、;endl;cout<<"職工號(hào) 姓名 性別年齡 工資 "<<endl; for(i=0;i<4;i+) cout<<""<<endl;cout<<""<<setw(6)<<si.g_num()<<""<<setw(7)<<si.g_name()<<" "<<setw(4)<<si.g_sex()<<""
27、<<setw(5)<<si.g_age()<<" "<<setw(8)<<5000+sumi*0.005 <<""<<endl; cout<<""<<endl;cout<<""<<endl;cout<<"銷售員"<<endl;cout<<""<<endl;cout<<"職工號(hào)
28、姓名 性別年齡 工資 所屬部門經(jīng)理編號(hào)"<<endl; for(i=0;i<8;i+) cout<<""<<endl;cout<<""<<setw(6)<<sai.g_num()<<""<<setw(7)<<sai.g_name()<<" "<<setw(4)<<sai.g_sex()<<""<<setw(5)&l
29、t;<sai.g_age()<<" "<<setw(8)<<0.04*sai.g_money()<<""<<setw(16)<<sai.g_num2()<<""<<endl; cout<<""<<endl;cout<<""<<endl;void put4()ofstream outfile("f1.txt",ios:out);
30、/定義文件流對(duì)象,打開磁盤文件“f1.txtif(!outfile)cerr<<"open error!"<<endl; /如果打開失敗,outfile返回值為零exit(1);cout<<"數(shù)據(jù)備份中,請(qǐng)等待"<<endl;cout<<"備份完畢!" outfile<<"*職工情況一覽表*"<<endl; outfile<<"職工基本情況一覽表如下:"<<endl; outfile<
31、;<"*技術(shù)員的資料統(tǒng)計(jì)*"<<endl; for(i=0;i<4;i+) outfile<<"職工號(hào):"<<setw(10)<<ti.g_num()<<" 姓名:"<<setw(9)<<ti.g_name()<<" 性別:"<<setw(4)<<ti.g_sex()<<" 年齡:"<<setw(4)<<ti.g_age()<
32、;<" 工作時(shí)間:"<<setw(10)<<ti.g_time()<<" 工資:"<<setw(10)<<ti.g_time()*100<<endl; outfile<<"-"<<endl; outfile<<"*經(jīng)理的資料統(tǒng)計(jì)*"<<endl; for(i=0;i<4;i+) outfile<<"職工號(hào):"<<setw(10)<<mi.g_num()<<" 姓名:"<<setw(9)<<mi.g_name()<<" 性別:"<<setw(4)<<mi.g_sex()<<" 年齡:"<<setw(4)<<mi.g_age()<<" 工資: "<<setw(10)<<8000<<endl; outfile&
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州國(guó)企招聘2025仁懷市交通運(yùn)輸服務(wù)有限公司招聘92人筆試參考題庫(kù)附帶答案詳解
- 江西豐城市紀(jì)委監(jiān)委招聘38名調(diào)查看護(hù)人員筆試歷年參考題庫(kù)附帶答案詳解
- 天津?yàn)I海職業(yè)學(xué)院《程序設(shè)計(jì)實(shí)訓(xùn)(二)》2023-2024學(xué)年第二學(xué)期期末試卷
- 西安財(cái)經(jīng)大學(xué)《功能高分子材料的設(shè)計(jì)與開發(fā)》2023-2024學(xué)年第二學(xué)期期末試卷
- 隨州職業(yè)技術(shù)學(xué)院《網(wǎng)絡(luò)爬蟲技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 錫林郭勒職業(yè)學(xué)院《新媒體網(wǎng)絡(luò)營(yíng)銷劃寫作》2023-2024學(xué)年第二學(xué)期期末試卷
- 北京郵電大學(xué)世紀(jì)學(xué)院《現(xiàn)代大地測(cè)量學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 南京師范大學(xué)中北學(xué)院《人力資源管理實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 榆林能源科技職業(yè)學(xué)院《護(hù)理學(xué)基礎(chǔ)Ⅰ(實(shí)驗(yàn))》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖南三一工業(yè)職業(yè)技術(shù)學(xué)院《現(xiàn)代環(huán)境監(jiān)測(cè)技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 變電站施工進(jìn)度計(jì)劃節(jié)點(diǎn)橫道圖
- 會(huì)計(jì)師事務(wù)所自查自糾報(bào)告范文3篇
- 信用評(píng)級(jí)ppt全套教學(xué)課件
- 2022年煙臺(tái)毓璜頂醫(yī)院醫(yī)護(hù)人員招聘考試筆試題庫(kù)及答案解析
- 教師專業(yè)發(fā)展第3章-教師專業(yè)發(fā)展趨向課件
- 安裝調(diào)試培訓(xùn)及驗(yàn)收方案
- 現(xiàn)場(chǎng)跟蹤審計(jì)工作要點(diǎn)
- 公制螺紋公差速查表
- 《山東省消防條例》(2022年最新版)[1]
- T∕CVIA 73-2019 視覺疲勞測(cè)試與評(píng)價(jià)方法 第2部分:量表評(píng)價(jià)方法
- 物流地理第八章商業(yè)布局和物流地理
評(píng)論
0/150
提交評(píng)論