工資發(fā)放系統(tǒng)設(shè)計(jì)報(bào)告_第1頁(yè)
工資發(fā)放系統(tǒng)設(shè)計(jì)報(bào)告_第2頁(yè)
工資發(fā)放系統(tǒng)設(shè)計(jì)報(bào)告_第3頁(yè)
工資發(fā)放系統(tǒng)設(shè)計(jì)報(bào)告_第4頁(yè)
工資發(fā)放系統(tǒng)設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

word文檔可自由復(fù)制編輯《程序設(shè)計(jì)語(yǔ)言基礎(chǔ)》課程設(shè)計(jì)報(bào)告班級(jí):XXXXXXXXXXX姓名:XXXXXXXXXXX題目:XXXXXXXXXXX設(shè)計(jì)時(shí)間:XXXXXXXXXXX需求分析:本課程主要是完成一個(gè)工資管理系統(tǒng),要求用戶在使用時(shí)可以正確的查詢到當(dāng)月實(shí)際發(fā)放的工資,完成員工基本信息數(shù)據(jù)的輸入,并且在查詢時(shí)能顯示相關(guān)數(shù)據(jù),方便用戶了解其發(fā)放工資情況。課題設(shè)計(jì)內(nèi)容:課程設(shè)計(jì)的基本流程:關(guān)于此課程的設(shè)計(jì),是建立在整體問(wèn)題把握的基礎(chǔ)上進(jìn)行的面向?qū)ο蟪绦蛟O(shè)計(jì)的。根據(jù)實(shí)驗(yàn)要求定義一個(gè)salarycountsystem類,在類中定義一個(gè)構(gòu)造函數(shù)、四個(gè)重載函數(shù)和一個(gè)成員函數(shù),定義相關(guān)變量并對(duì)不同職員的薪水計(jì)算,salary為返回值。在主函數(shù)中定義所需數(shù)據(jù)成員,將類salarycountsystem定義為對(duì)象a,在a中實(shí)現(xiàn)工資查詢系統(tǒng)的界面輸出。運(yùn)用dowhile實(shí)現(xiàn)工資的循環(huán)查詢,其中嵌套if語(yǔ)句,實(shí)現(xiàn)不同工種的選擇。最后輸入op,選擇繼續(xù)進(jìn)行還是結(jié)束程序。詳細(xì)設(shè)計(jì)說(shuō)明:首先定義常量hourlyrate(90)、monthlypay(3000)、sales(30000)、daylypay(30)、commrate(0.005)。定義一個(gè)salarycountsystem類,在公有成員public中定義工資salary,在構(gòu)造函數(shù)salarycountsystem中定義其初始值為0。定義四個(gè)add重載函數(shù),一個(gè)red成員函數(shù),并分別用公式計(jì)算四種銷售員的實(shí)發(fā)工資。固定薪金職員:m(請(qǐng)假應(yīng)扣)=holiday*daylypay;salary=monthlypay-m;計(jì)時(shí)薪金職員:b(實(shí)際工作時(shí)長(zhǎng))=w(工作時(shí)長(zhǎng))+p(加班時(shí)長(zhǎng));salary=hourlyrate*b;普通銷售員:sales1(實(shí)際銷售額)銷售額大于30000時(shí):salary=(sales1-sales)*2/1000;銷售額小于30000時(shí):salary=(sales-sales1)*2/1000;帶薪銷售員:sales2(實(shí)際銷售額)salary=monthlypay-h*daylypay+commrate*sales2;設(shè)計(jì)main主函數(shù),定義一個(gè)salarycountsystem類的對(duì)象a調(diào)用類的成員函數(shù)。定義一個(gè)char型op,代表輸入的符號(hào),按界面要求輸出“工資查詢系統(tǒng)”。用dowhile實(shí)現(xiàn)查詢系統(tǒng)的循環(huán)。定義工種為k并輸入。在if語(yǔ)句中定義所需變量,根據(jù)輸入的k值的不同輸出各工種的工資相關(guān)項(xiàng),并實(shí)現(xiàn)數(shù)據(jù)成員的調(diào)用。輸入op,“*”為退出,其它符號(hào)繼續(xù)查詢。程序到此已基本完成,再對(duì)界面進(jìn)行美化處理,就完成了程序設(shè)計(jì)。界面操作流程圖程序流程圖源程序#include<iostream>#include<string.h>usingnamespacestd;constfloathourlyrate(90);//時(shí)薪constfloatmonthlypay(3000);//固定薪金constfloatcommrate(0.005f);//帶薪銷售員的提成百分比constfloatdaylypay(30);//請(qǐng)假一天的錢classsalarycountsystem{public: floatsalary;//工資 salarycountsystem(){salary=0;}//定義構(gòu)造函數(shù)使salary初始值為0floatadd(intholiday)//固定薪金職員工資重載 { floatm=holiday*daylypay; salary=monthlypay-m; returnsalary; }//固定薪金職員 doubleadd(intw,inta)//計(jì)時(shí)職員工資重載 { intb=w+a;//w(工作時(shí)長(zhǎng)),a(超出時(shí)長(zhǎng)),b(實(shí)際工作時(shí)長(zhǎng)) salary=hourlyrate*b; returnsalary; }//計(jì)時(shí)職員 floatadd(floatsales1)//普通銷售員工資重載 { salary=(30000-sales1)*2/100;//銷售額小于30000 returnsalary; } floatred(floatsales1)//定義成員函數(shù) { salary=(sales1-30000)*2/100;//銷售額大于30000 returnsalary; }//普通銷售員 floatadd(floatsales2,floath)//帶薪銷售員工資重載 { salary=monthlypay-h*daylypay+commrate*sales2; returnsalary; }//帶薪銷售員};voidmain(){ salarycountsystema;//定義一個(gè)類的對(duì)象 charop; do//使用循環(huán)體實(shí)現(xiàn)工資查詢的循環(huán) {cout<<""<<endl;cout<<"歡迎使用工資查詢系統(tǒng)!"<<endl<<endl;cout<<"***************************************"<<endl;cout<<"菜單"<<endl;cout<<"1固定薪金職員"<<endl;cout<<"2計(jì)時(shí)職員"<<endl;cout<<"3普通銷售員"<<endl;cout<<"4帶薪銷售員"<<endl;cout<<"選擇*鍵結(jié)束運(yùn)算,選其它符號(hào)繼續(xù)運(yùn)算"<<endl;cout<<"***************************************"<<endl<<endl;cout<<"請(qǐng)選擇職工類型:"<<endl; intk;//工種 cin>>k; if(k==1) { intholiday;//請(qǐng)假天數(shù) cout<<"請(qǐng)輸入固定薪金職員的請(qǐng)假天數(shù):"<<endl; cin>>holiday; a.add(holiday); cout<<"***************固定薪金職員*******************"<<endl; cout<<"工種"<<""<<"獎(jiǎng)勵(lì)薪金"<<""<<"固定月薪"<<""<<"請(qǐng)假天數(shù)"<<""<<"應(yīng)扣"<<""<<"實(shí)發(fā)工資"<<endl; cout<<k<<""<<0<<""<<monthlypay<<""<<holiday<<""<<holiday*30<<""<<a.salary<<endl; } elseif(k==2) { intw; intp;//w(workhours),p(超出時(shí)長(zhǎng)) cout<<"請(qǐng)輸入工作時(shí)長(zhǎng):"<<endl; cin>>w;//workehours cout<<"請(qǐng)輸入加班時(shí)長(zhǎng):"<<endl; cin>>p;a.add(w,p); cout<<"*******************計(jì)時(shí)職員******************"<<endl; cout<<"工種"<<""<<"獎(jiǎng)勵(lì)薪金"<<""<<"工作時(shí)長(zhǎng)"<<""<<"時(shí)薪"<<""<<"加班時(shí)長(zhǎng)"<<""<<"實(shí)發(fā)工資"<<endl; cout<<k<<""<<"0"<<""<<w<<""<<hourlyrate<<""<<p<<""<<a.salary<<endl; } elseif(k==3) { floatprize; floatsales1; floats; cout<<"請(qǐng)輸入本月銷售額:"<<endl; cin>>sales1;//輸入本月銷售額 if(sales1>=30000) { s=a.red(sales1); cout<<"*******************普通銷售員**************"<<endl; cout<<"工種"<<""<<"獎(jiǎng)勵(lì)薪金"<<""<<"銷售額"<<""<<"提成比例"<<""<<"應(yīng)扣"<<""<<"實(shí)發(fā)工資"<<endl; cout<<k<<""<<s<<""<<sales1<<""<<"2%"<<""<<0<<""<<3000+s<<endl; } else { s=3000-a.add(sales1); prize=a.add(sales1); cout<<"******************普通銷售員***************"<<endl; cout<<"工種"<<""<<"獎(jiǎng)勵(lì)薪金"<<""<<"銷售額"<<""<<"提成比例"<<""<<"應(yīng)扣"<<""<<"實(shí)發(fā)工資"<<endl; cout<<k<<""<<0<<""<<sales1<<""<<"2%"<<""<<prize<<""<<s<<endl; } } elseif(k==4) { floatsales2; floath;//holiday floatd;//應(yīng)扣 cout<<"請(qǐng)輸入帶薪銷售員請(qǐng)假天數(shù):"<<endl; cin>>h;//holiday cout<<"請(qǐng)輸入帶薪銷售員的銷售額:"<<endl; cin>>sales2;//輸入本月銷售額 d=h*daylypay; a.add(sales2,h); cout<<"********************帶薪銷售員****************"<<endl; cout<<"工種"<<""<<"獎(jiǎng)勵(lì)薪金"<<""<<"固定月薪"<<""<<"銷售額"<<""<<"提成比例"<<""<<"請(qǐng)假天數(shù)"<<""<<"應(yīng)扣"<<""<<"實(shí)發(fā)工資"<<endl; cout<<k<<""<<commrate*sales2<<""<<monthlypay<<""<<sales2<<""<<commrate<<""<<h<<""<<d<<""<<a.salary<<endl; } else cout<<"無(wú)此項(xiàng)!"<<endl<<endl; cout<<"選擇*鍵結(jié)束運(yùn)算,其它符號(hào)繼續(xù)運(yùn)算:"<<endl; cin>>op; }while(op!='*');}運(yùn)行結(jié)果截圖:(1)、歡迎界面(2)、固定薪金職員(3)、計(jì)時(shí)銷售員(4)、普通銷售員銷售額大于30000時(shí):銷售額小于30000時(shí):(5)、帶薪銷售額(6)、退出查詢系統(tǒng)得意之處整個(gè)程序中我認(rèn)為比較得意的幾個(gè)地方:在salarycountsystem類中運(yùn)用了函數(shù)的重載floatadd(intholiday)//固定薪金職員工資重載 { floatm=holiday*daylypay; salary=monthlypay-m; returnsalary; } doubleadd(intw,inta)//計(jì)時(shí)職員工資重載 { intb=w+a; salary=hourlyrate*b; returnsalary; }計(jì)時(shí)職員 floatadd(floatsales1)//普通銷售員工資重載 { salary=(30000-sales1)*2/100; returnsalary; } floatred(floatsales1)//定義成員函數(shù) { salary=(sales1-30000)*2/100; returnsalary; } floatadd(floatsales2,floath)//帶薪銷售員工資重載 { salary=monthlypay-h*daylypay+commrate*sales2; returnsalary; }在主函數(shù)中實(shí)現(xiàn)函數(shù)的調(diào)用例如:帶薪銷售員elseif(k==4) { floatsales2; floath;//holiday floatd;//應(yīng)扣 cout<<"請(qǐng)輸入帶薪銷售員請(qǐng)假天數(shù):"<<endl; cin>>h;//holiday cout<<"請(qǐng)輸入帶薪銷售員的銷售額:"<<endl; cin>>sales2;//輸入本月銷售額 d=h*daylypay; a.add(sales2,h); cout<<"********************帶薪銷售員****************"<<endl; cout<<"工種"<<""<<"獎(jiǎng)勵(lì)薪金"<<""<<"固定月薪"<<""<<"銷售額"<<""<<"提成比例"<<""<<"請(qǐng)假天數(shù)"<<""<<"應(yīng)扣"<<""<<"實(shí)發(fā)工資"<<endl; cout<<k<<""<<commrate*sales2<<""<<monthlypay<<""<<sales2<<""<<commrate<<""<<h<<""<<d<<""<<a.salary<<endl; }在用戶使用時(shí)可以清楚地看到一個(gè)工資查詢的界面,用戶可以選擇要查詢的工種,界面會(huì)顯示查詢的工資相關(guān)情況,并且可以重復(fù)查詢,直至退出。創(chuàng)意技術(shù)的實(shí)現(xiàn)通過(guò)dowhi

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論