C語(yǔ)言實(shí)訓(xùn)職工工資管理系統(tǒng)_第1頁(yè)
C語(yǔ)言實(shí)訓(xùn)職工工資管理系統(tǒng)_第2頁(yè)
已閱讀5頁(yè),還剩3頁(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)介

1、設(shè)計(jì)人:_ 蔡曉春_扌指導(dǎo)老師:_ 周楊萍_時(shí) 間:第 1313 周(2011.11.28 2011.12.2)、實(shí)訓(xùn)目的C語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)是C語(yǔ)言程序設(shè)計(jì)課程教學(xué)的重要組成部分。本課程通過(guò)提供學(xué) 生一個(gè)實(shí)訓(xùn)練習(xí)的機(jī)會(huì),鞏固、提高學(xué)生的基本編程能力,同時(shí)通過(guò)訓(xùn)練編寫綜合程序的方 式,提高學(xué)生分析問(wèn)題和解決問(wèn)題的能力,為后續(xù)課程的學(xué)習(xí)打下良好的基礎(chǔ)。、實(shí)訓(xùn)題目和程序清單(包括程序運(yùn)行截圖界面)(一)實(shí)訓(xùn)題目:職工工資管理系統(tǒng)。參考運(yùn)行界面如下:具體要求:出現(xiàn)上述界面后,用戶可以通過(guò)輸入1-6 之間的數(shù)字完成所提示的功能。循環(huán)往復(fù),直到輸入 7,退出系統(tǒng)。本系統(tǒng)具有職工的工資基本信息(職工號(hào)、姓名

2、、應(yīng)發(fā)工資、獎(jiǎng)金、水電費(fèi)、公積金、醫(yī)療保險(xiǎn)、扣款合計(jì)、實(shí)發(fā)工資),能夠根據(jù)需要追加、查詢、修改、刪除、統(tǒng)計(jì)并瀏覽職 工的工資信息。具體功能如下:1.初始化信息(職工信息的輸入,包括職工號(hào)、姓名、應(yīng)發(fā)工資、獎(jiǎng)金、水電費(fèi)、公 積金、醫(yī)療保險(xiǎn));2追加職工信息(繼續(xù)添加職工的信息,要求職工號(hào)不重復(fù));3根據(jù)職工號(hào)查詢(完成按職工號(hào)查詢指定職工的工資信息);4.根據(jù)職工號(hào)修改(完成按職工號(hào)修改指定職工的工資信息);5.根據(jù)職工號(hào)刪除(完成按職工號(hào)刪除指定職工的工資信息);6.統(tǒng)計(jì)并瀏覽(完成扣款合計(jì)和實(shí)發(fā)工資的統(tǒng)計(jì),并顯示所有職工的工資信息);7.退出(退出系統(tǒng))。(提示:在使用字符界面的菜單編程時(shí),

3、需要清屏,可以使用system(cls) 函數(shù)將屏幕清屏。需要退出系統(tǒng)時(shí),可以使用 exit(0)函數(shù)退出。需要暫停程序的執(zhí)行時(shí),可以使用 system(pause)函數(shù)暫停。使用這些函數(shù)時(shí)應(yīng)包含stdlib.h系統(tǒng)函數(shù)頭文件。)(二)程序清單:#include /輸入輸出函數(shù)頭文字#include /系統(tǒng)函數(shù)頭文件#include /字符串函數(shù)頭文件 #define N 100/定義常量 n 的值為struct worker/定義結(jié)構(gòu)體/* 對(duì)第一位進(jìn)行初始化 */work1.zgh=001; strcpy(work1.xm, aa ); work1.yfgz=1000;work1.jj=5

4、00; work1.sdf=200; work1.gjj=100; work1.ylbx=98;work1.kkhj=work1.sdf+work1.gjj+work1.ylbx;work1.sfgz=work1.yfgz+work1.jj-work1.kkhj;/* 對(duì)第二位進(jìn)行初始化 */work2.zgh=002; strcpy(work2.xm, bb ); work2.yfgz=2000;work2.jj=300; work2.sdf=200; work2.gjj=100; work2.ylbx=90;work2.kkhj=work2.sdf+work2.gjj+work2.ylbx

5、;work2.sfgz=work2.yfgz+work2.jj-work2.kkhj; /* 對(duì)第三位進(jìn)行初始化 */ work3.zgh=003;strcpy(work3.xm, cc ); work3.yfgz=1000;work3.jj=500; work3.sdf=200; work3.gjj=100; work3.ylbx=98;work3.kkhj=work3.sdf+work3.gjj+work3.ylbx;work3.sfgz=work3.yfgz+work3.jj-work3.kkhj;char xm10;floatyfgz;floatjj;float sdf;floatgj

6、j;floatylbx;floatkkhj;floatsfgz;workN;int zgh;int count=1; / 計(jì)數(shù)void csh()*初始化信息*/* 對(duì)第四位進(jìn)行初始化 */ work4.zgh=004; strcpy(work4.xm,dd ); work4.yfgz=1000; work4.jj=500;work4.sdf=200; work4.gjj=100;work4.ylbx=98;work4.kkhj=work4.sdf+work4.gjj+work4.ylbx;work4.sfgz=work4.yfgz+work4.jj-work4.kkhj;count=5;sy

7、stem( pause );system( cls );printf(請(qǐng)輸入第(個(gè)職工信息n ,count); printf( 輸入職工號(hào) :n );scanf( %d,&workcount.zgh); printf( 輸入姓名 :n );scanf( %s,workcount.xm); printf( 輸入應(yīng)發(fā)工資 :n );scanf( %f ,&workcount.yfgz); printf( 輸入獎(jiǎng)金 :n );scanf( %f ,&workcount.jj); printf( 輸入水電費(fèi) :n );scanf( %f ,&workcount.sdf)

8、; printf(輸入公積金 :n );scanf( %f ,&workcount.gjj); printf( 輸入醫(yī)療保險(xiǎn) :n );scanf( %f ,&workcount.ylbx);workcount.kkhj=workcount.sdf+workcount.gjj+workcount.ylbx;workcount.sfgz=workcount.yfgz+workcount.jj-workcount.kkhj;count+;printf( 還需要再添加嗎 ?(Y/N)n );scanf( n%c ,&i);if (i= y | i=Y )zjxx();else

9、return ;system( pause );printf( .初始化成功 .n);void zjxx()char i;*追加職工信息*int i,zgh;printf( 請(qǐng)輸入要查詢的職工號(hào) n );scanf( %d,&zgh);for (i=1;i=count;i+)if (worki.zgh=zgh) break ;if (i=count)printf( . 職工的所有信息. n );printf(職工號(hào):dn 姓名:sn 應(yīng)發(fā)工資:.2fn 獎(jiǎng)金:.2fn 水電費(fèi):.2fn 公積金:%.2fn 醫(yī)療保險(xiǎn):%.2fn 扣款合計(jì):%.2fn 實(shí)發(fā)工資:%.2fn,worki.z

10、gh,worki.xm,worki.yfgz,worki.jj,worki.sdf,worki.gjj,worki.ylbx,worki.kkhj,worki.sfgz);elseprintf( sorry,mei you ci ren );system( pause );int i,zgh;printf( 請(qǐng)輸入要修改的職工號(hào) n );scanf( %d,&zgh);for (i=1;i=count;i+)if (worki.zgh=zgh) break ;if (i=count)printf( . 職工的所有信息.n);printf(職工號(hào):%dn 姓名:%sn 應(yīng)發(fā)工資:%.2f

11、n 獎(jiǎng)金:%.2fn 水電費(fèi):.2fn 公積金:%.2fn 醫(yī)療保險(xiǎn):%.2fn 扣款合計(jì):%.2fn 實(shí)發(fā)工資:%.2fn,worki.zgh,worki.xm,worki.yfgz,worki.jj,worki.sdf,worki.gjj,worki.ylbx,worki.kkhj,worki.sfgz);elsevoid cx()*根據(jù)職工號(hào)查詢*void xg()*根據(jù)職工號(hào)修改*printf( sorry,mei you ci renprintf( 請(qǐng)重新輸入姓名 );scanf( %s ,&worki.xm);printf( 請(qǐng)重新輸入應(yīng)發(fā)工資 :n ); scanf( %

12、f ,&worki.yfgz);printf( 請(qǐng)重新輸入獎(jiǎng)金 :n ); scanf( %f ,&worki.jj);printf( 請(qǐng)重新輸入水電費(fèi) :n ); scanf( %f ,&worki.sdf);printf( 請(qǐng)重新輸入公積金 :n ); scanf( %f ,&worki.gjj);printf( 請(qǐng)重新輸入醫(yī)療保險(xiǎn) :n ); scanf( %f ,&worki.ylbx);int i,zgh;char s;printf( 請(qǐng)輸入要?jiǎng)h除的員工所在的職工號(hào) );scanf( %d,&zgh); for (i=1;i=count

13、;i+)if (worki.zgh=zgh) break ;if (i=count)printf( . 職工的所有信息. n );printf (職工號(hào):dn 姓名:sn 應(yīng)發(fā)工資: .2fn 獎(jiǎng)金:.2fn 水電費(fèi): .2fn 公積金 :%.2fn 醫(yī)療保險(xiǎn) :%.2fn 扣款合計(jì) :%.2fn 實(shí)發(fā)工資 :%.2fn ,worki.zgh,worki.xm,worki.yfgz,worki.jj,worki.sdf,worki.gjj,worki.ylbx,worki.kkhj,worki.sfgz);printf(確定要?jiǎng)h除嗎?請(qǐng)輸入 Y/N 確認(rèn)n);setbuf(stdin,NULL

14、); / 清除輸入緩沖區(qū)數(shù)據(jù)(回車) scanf( %c,&s);if (s=Y |s= y )for (i=0;i=count;i+)worki.zgh=worki+1.zgh; strcpy( worki.xm, worki+1.xm);worki.yfgz=worki+1.yfgz;);void sc()*號(hào)刪除 *IIfloat yfgz=0,jj=0,sdf=0,gjj=0,ylbx=0,kkhj=0,sfgz=0;system( cls );printf( 職工號(hào) 姓名 應(yīng)發(fā)工資 獎(jiǎng)金 水電費(fèi) 公積金 醫(yī)療保險(xiǎn)扣款合計(jì) 實(shí)發(fā)工資 n );printf( -n );for (

15、i=1;i=count;i+)printf( %d %s %.2f %.2f %.2f %.2f %.2f %.2f %.2fn ,worki.zgh,worki.xm,worki.yfgz,worki.jj,worki.sdf,worki.gjj,worki.ylbx,worki.kkhj,worki.sfgz);printf(-n );worki.jj=worki+1.jj; worki.sdf=worki+1.sdf; worki.gjj=worki+1.gjj;worki.ylbx=worki+1.ylbx; worki.kkhj=worki+1.kkhj; worki.sfgz=wo

16、rki+1.sfgz;worki.zgh=0 ;strcpy(worki.xm, 0 ); worki.yfgz=0;worki.jj=0;worki.sdf=0;worki.gjj=0;worki.ylbx=0;worki.kkhj=0;worki.sfgz=0;count-;printf( 所選信息已刪除 );elseprintf( sorry! mei you ci ren );void tjll()/ *inti;統(tǒng)計(jì)瀏覽*system( pause );II);yfgz=yfgz+worki.yfgz;jj=jj+worki.jj;sdf=sdf+worki.sdf;gjj=gjj+

17、worki.gjj;ylbx=ylbx+worki.ylbx;while (1);sfgz=yfgz+jj-kkhj;printf( 匯總:職工人數(shù) %dn,count-1)printf(II應(yīng)發(fā)工資 %.2fn ,yfgz);printf(II獎(jiǎng) 金 %.2fn ,jj);printf(II水電費(fèi) %.2fn ,sdf);printf(II公積金 %.2fn ,gjj);printf(II醫(yī)療保險(xiǎn) %.2fn ,ylbx);printf(II-nprintf(II扣款合計(jì) %.2fn ,kkhj);printf( system(IIpause );實(shí)發(fā)工資 %.2fn ,sfgz);kkhj

18、=sdf+gjj+ylbx;);/*printf(H*職工工資管理系統(tǒng)制作人: *n );printf(II1-初始化信息n );printf(II2-追加職工信息n );printf(II3-根據(jù)職工號(hào)查詢n );printf(II4-根據(jù)職工號(hào)修改n );printf(II5-根據(jù)職工號(hào)刪除n );printf(II6-統(tǒng)計(jì)并瀏覽n );printf(II7-退出 n);printf(*n);printf(II輸入您的選擇( -7 ): );scanf(%d,&xz);switch(xz) case1:csh();break ;/ 執(zhí)行子函數(shù) csh( 完成初始化功能 )case 2:zjxx();break ;/

溫馨提示

  • 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)論