職工工資管理系統(tǒng)1_第1頁(yè)
職工工資管理系統(tǒng)1_第2頁(yè)
職工工資管理系統(tǒng)1_第3頁(yè)
職工工資管理系統(tǒng)1_第4頁(yè)
職工工資管理系統(tǒng)1_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、課程設(shè)計(jì)服務(wù)課程名稱:C語(yǔ)言系:能源與動(dòng)力工程專業(yè):熱能與動(dòng)力工程班級(jí):集控本112學(xué)號(hào):01姓名:薛小可指導(dǎo)教師:許薇薇、范彬課程設(shè)計(jì)周次:15周起始日期:2012.6.4至201268目錄C語(yǔ)言課程設(shè)計(jì)成績(jī)?cè)u(píng)定表1C語(yǔ)言課程設(shè)計(jì)任務(wù)書2程序設(shè)計(jì)思路3程序基本框架結(jié)構(gòu)圖4系統(tǒng)運(yùn)行界面截圖5源代碼清單7課程設(shè)計(jì)總結(jié)17C語(yǔ)言課程設(shè)計(jì)成績(jī)?cè)u(píng)定表班級(jí)集控本112學(xué)號(hào)01姓名薛小可項(xiàng)目組第五組項(xiàng)目組長(zhǎng)李振華項(xiàng)目組組員于丙洋李振國(guó)安寧薛小可本人工作簡(jiǎn)介:在這一周的課設(shè)實(shí)訓(xùn)中,我主要負(fù)責(zé)的是職工工資管理系統(tǒng)程序中的排序部分,結(jié)合平時(shí)所學(xué)的c語(yǔ)言知識(shí)和老師、同學(xué)、教材的幫助,比較圓滿的完成了自己的任務(wù)。通

2、過這一周的努力設(shè)計(jì),使我對(duì)C語(yǔ)言有了更深刻的認(rèn)識(shí)。組長(zhǎng)評(píng)語(yǔ):該組員積極參加分配任務(wù),遵守老師的要求,態(tài)度認(rèn)真,愛思考,能獨(dú)立完成分配的所屬任務(wù),并且與其他組員多次進(jìn)行共同調(diào)試,最終使程序運(yùn)行起來。成績(jī)?cè)u(píng)定標(biāo)準(zhǔn)ABcDE理論基礎(chǔ)很好好比較好一般不好報(bào)告完成情況很好好比較好一般不好紀(jì)律表現(xiàn)很好好比較好一般不好程序創(chuàng)意很好好比較好一般不好所選模塊完成情況很好好一般較差不好所選算法難易程度復(fù)雜比較復(fù)雜一般簡(jiǎn)單很簡(jiǎn)單程序可操作性很好好一般較差不好答辯表現(xiàn)很好好一般較差不好最后成績(jī)優(yōu)秀A>=5B<=3C<=0D=0良好A>=3B<=4C<=1D=0中等A>=1B&

3、gt;=20=4D<=1及格A=0B=0C<=4D>=4不及格A=0B=0C=0D<=4負(fù)責(zé)指導(dǎo)教師:(簽名)指導(dǎo)教師:(簽名)集控本112c語(yǔ)言課程設(shè)計(jì)任務(wù)書一、設(shè)計(jì)目的通過本次課程設(shè)計(jì)使學(xué)生進(jìn)一步加深對(duì)c語(yǔ)言課程內(nèi)容的理解,初步掌握一般應(yīng)用程序的開發(fā)方法和步驟,進(jìn)一步了解與掌握c語(yǔ)言的編程方法和技巧,提高學(xué)生用C語(yǔ)言解決實(shí)際問題的能力。二、設(shè)計(jì)要求1、認(rèn)真查閱參考書、資料3、按時(shí)上機(jī),認(rèn)真調(diào)試程序三、課設(shè)報(bào)告裝訂內(nèi)容及順序1、課程設(shè)計(jì)封皮3、課程設(shè)計(jì)成績(jī)?cè)u(píng)定表5、程序基本框架圖7、源代碼清單四、設(shè)計(jì)題目職工工資管理系統(tǒng)五、時(shí)間安排(一周:從五月1、查閱資料及程序設(shè)計(jì)

4、(1天)3、成績(jī)?cè)u(píng)定(0.5天)六、參考文獻(xiàn)2、遵守課程設(shè)計(jì)時(shí)間安排4、認(rèn)真完成課程設(shè)計(jì)報(bào)告2、目錄4、課程設(shè)計(jì)任務(wù)書6、程序設(shè)計(jì)說明書8、課設(shè)總結(jié)與心得L日到6月8日)2、程序編制及調(diào)試(3天)3、打印報(bào)告(0.5天)1、C語(yǔ)言程序設(shè)計(jì)李淑華/李貞編大連理工大學(xué)出版社2、C語(yǔ)言程序設(shè)計(jì)孫連科/姚大鵬編遼海出版社3、C+時(shí)尚編程百例網(wǎng)冠科技編.機(jī)械工業(yè)出版社4、TURBOC實(shí)用大全徐金梧等編.機(jī)械工業(yè)出版社程序設(shè)計(jì)思路在這次課設(shè)中,我的任務(wù)是編寫職工工資管理系統(tǒng)的排序職工工資信息這塊。“心我而思路是:首先,添加#include“stdio.h”等頭文件使其正常運(yùn)行。定義結(jié)構(gòu)體變量structp

5、eople,里面用數(shù)組存放職工的各種信息。如charnum20,charname9,floatjbgz,floatgwgz,floatgxkkhj,floatsfgZo接著定義一個(gè)排序函數(shù),定義文件指針structpeople*p_people指向之前定義的結(jié)構(gòu)體變量,即structpeople*p_people=STUo還定義了實(shí)型的總數(shù)inttotals,inti,int用于標(biāo)記有要排序的職工在文件中的位置。然后編寫排序的職工姓名,工號(hào).這里用了if語(yǔ)句while循環(huán)以及打開文件的fopen函數(shù)和在磁盤文件中讀取塊數(shù)據(jù)的fread函數(shù)。然后將結(jié)構(gòu)體STU送給ppeople,用輸出函數(shù)輸出“

6、請(qǐng)輸入排序職工的方法”.最后用fclose函數(shù)關(guān)閉文件,顯示排序成功的信息。在這個(gè)程序中運(yùn)用了文件指針,結(jié)構(gòu)體變量,for循環(huán),while循環(huán)if語(yǔ)句,其中文件這塊涉及很多,包含了fread函數(shù),fopen函數(shù),fclose函數(shù),fwrite函數(shù)等等。整個(gè)程序除了主函數(shù)外,再加菜單函數(shù)int(),顯示函數(shù)void(),查詢函數(shù)void,排序函數(shù),修改函數(shù)。既而實(shí)現(xiàn)了錄入、顯示、追加、查詢、修改、排序兒大功能。程序基本框架結(jié)構(gòu)系統(tǒng)運(yùn)行界面截請(qǐng)選擇歡迎訪I可職工工資管理系統(tǒng)oT*C:Prox«FileaVlicr«so£Sludici7Pxojecta77TTDeLu

7、C777T.exe*-|n|x編號(hào)姓名基本工資崗位工資各項(xiàng)扣款含計(jì)實(shí)發(fā)工資681239.0000006.0000001.000000i4.0000g|4878907889.00000045.0000008?.00060045.80006,878y58.U9U0U978.U9WU。0盧莊Ar上Lk2方1Q!<*IIS*X177XAX-.1r:EiLecMierocoftViStudioXiyProjttct%777TDftbngX7777t按實(shí)際工資排序的結(jié)果如下:職工號(hào)姓名基本工資兩位工資各項(xiàng)扣款合計(jì)實(shí)發(fā)工資4789.0000008.0000006.00000011.0008019161

8、239.0000006.0000001.00000014.00000V9788,佻詠股4UWUU89-UUUU45.suuagKJ828958.MMU。96口曬所78.(dUUkJk)y76.UMU990請(qǐng)按任意窿垂級(jí).|oa:Pror«*FiLcslicr«so£t.Viz««lStudioiTProjectS7777kDel>xiC777T.ce-按職工號(hào)排序的結(jié)果如下;職工號(hào)姓名基本工資崗位工資各項(xiàng)扣款合計(jì)巨發(fā)丁黨,9?889.00000045.0000008?.00060045.O0000BU878958.00000096.000

9、00078.00000076.80068,|r>G1239.0000006.0000001.00000014.00000|VJ4789.0000008.0000006.000000ii.oeaeol;請(qǐng)按任意槎繼續(xù).源代碼清單include"stdio.h"#include"stdlib.h"#include"string,h”structpeoplecharnum20;charname9;floatjbgz;floatgwgz;floatgxkkhj;floatsfgz;STU100;/*/void input ()/*錄入職工工資信息

10、*/inti,n;structpeopleSTU;FILE*fp;system("cls");if(fp=fopenCe:filei”,wb)二二NULL)printf("error!n");exit(0);)printf(wnt請(qǐng)輸入職工人數(shù):”);scanf(飛d',&n);printf(nt請(qǐng)按下而提示輸入職工數(shù)據(jù)n");for(i=0;i<n;i+)printf(nt第加個(gè)職工號(hào):",i+1);scanf(飛s”,STU.num);printf("t姓名:”);scanfSTU.name);pr

11、intf("t基本工資(大于0):scanf(飛f”,&STU.jbgz);if(STU.jbgz<0)printf(t輸入有誤!請(qǐng)重新輸入:);scanf(""f”,&STU.jbgz);printf(t崗位工資(大于0):);scanf(飛f”,&STU.gwgz);if(STU.gwgz<0)printf("輸入有誤!請(qǐng)重新輸入:“);scanf(""f”,&STU.gwgz);printf(t各項(xiàng)扣款合計(jì)(大于0):”);scanf(飛f”,&STU.gxkkhj);if(S

12、TU.gxkkhj<0)printf(t輸入有誤!請(qǐng)重新輸入:");scanf(飛f,&STU.gxkkhj);printf("t實(shí)發(fā)工資:);STU.sfgz=STU.gwgz+STU.jbgz-STU.gxkkhj;printf(飛f”,STU.sfgz);fwrite(&STU,sizeof(STU),1,fp);)fclose(fp);/*/*職工工資顯示*/voidshowa11()structpeopleSTU;FILE*fp;system("cls");if(fp=fopenCe:Wfilel","

13、rb")=NULL)printf("文件有錯(cuò)誤不能打開!”);exit(O);)printf(*nt編號(hào)t姓名t基本工資t崗位工資t各項(xiàng)扣款合計(jì)t實(shí)發(fā)工資n);while(fread(&STU,sizeof(STU),1,fp)printfCznt%st%st%ft%ft%ft%ftn/z,STU.num,STU.name,STU.jbgz,STU.gwgz,STU.gxkkhj,STU.sfgz);fclose(fp);systempause");)/*voidappend()/*追加職工信息*/inti,n;structpeopleSTU;FILE*f

14、p;system(cls");if(fp=fopenCe:Wfilel","ab")=NULL)printf("error!n");exit(0);)printf(?/nnt請(qǐng)輸入追加的職工人數(shù):");scanf&n);printf("nt請(qǐng)按下而提示輸入職工數(shù)據(jù)n");for(i=0;i<n;i+)printf("nt第加個(gè)職工號(hào):",i+1);scanf(線s”,STU.num);printf("t姓名:“);scanf(飛s”,STU.name);prin

15、tf("t基本工資(大于0):”);scanf("%f”,&STU.jbgz);if(STU.jbgz<0)printf(t輸入有誤!請(qǐng)重新輸入:);scanf&STU.jbgz);printf(?,t崗位工資(大于0):);scanf(""f”,&STU.gwgz);if(STU.gwgz<0)printf("t輸入有誤!請(qǐng)重新輸入:");scanf(飛&STU.gwgz);printf("t各項(xiàng)扣款合計(jì)(大于0):”);scanf(飛f”,&STU.gxkkhj);if

16、(STU.gxkkhj<0)printf(t輸入有誤!請(qǐng)重新輸入:");scanf(""f,&STU.gxkkhj);printf("t實(shí)發(fā)工資:”);STU.sfgz=STU.gwgz+STU.jbgz-STU.gxkkhj;printf(“%f”,STU.sfgz);fwrite(&STU,sizeof(STU),1,fp);)fclose(fp);)/*/void searchbyhao() FILE *fp;struct people STU;/*職工工資查詢*/chars20;intb=0;systemC'cls&

17、#39;");if(fp二fopenCe:filei","rb)=NULL)printf("文件有錯(cuò)誤,不能打開!");exit(0);)printf(n請(qǐng)輸入要查詢的工號(hào):");scanf(/z%s,z,s);while(fread(&STU,sizeof(STU),1,fp)if(strcmp(STU.num,s)=0)b=l;break;)if(b=0)printf("n不存在工號(hào)為%s的職工”,s);system(zzpause/,);)fclose(fp);if(b=l));printf(zzn=:prin

18、tfC?n查詢成功n");printf(要查詢的職工信息為:);printf("nt編號(hào)t姓名t基本工資t崗位工資t各項(xiàng)扣款合計(jì)t實(shí)發(fā)工資、);printf(,/nt%st%st%ft%ft%ft%ftnzz,STU.num,STU.name,STU.jbgz,STU.gwgz,STU.gxkkhj,STU.sfgz);rewind(fp);systemC'pause'7);)voidsearchbyname()FILE*fp;charb9;inti=0;structpeopleSTU;system("cls");if(fp=fopenC

19、e:filel"rb")=NULL)printf("error!n");exit(0);)printf(n請(qǐng)輸入要查詢到職工姓名:”);scanf(與s',b);while(fread(&STU,sizeof(STU),1,fp)if(strcmp(STU.name,b)=0)i=l;break;)fclose(fp);if(i=0)printf("n不存在職工姓名為如的職工”,b);system(z,pause,/);)if(i=l)printfCjn-=v);printf(Xn查詢成功n");printf(要查詢的

20、職工信息為:);printf("nt編號(hào)t姓名t基本工資t崗位工資t各項(xiàng)扣款合計(jì)t實(shí)發(fā)工資n");printfC/nt%st%st%ft%ft%ft%ftnz",STU.num,STU.name,STU.jbgz,STU.gwgz,STU.gxkkhj,STU.sfgz);rewind(fp);systemC?pause/Z);)voidsearch()(system("cls");printf('t*歡迎使用職工工資查詢系統(tǒng)*tn");printfCzttl.按職工號(hào)查詢nntt2.按職工姓名查詢nntt0.退出程序nn);

21、printf("請(qǐng)選擇”);inti;scanf("$;while(i<0|i>3)printf("輸入有誤,請(qǐng)從新輸入!n");printf("請(qǐng)選擇);scanf(飛;)switch(i)case1:searchbyhao();break;casecase )2:searchbyname0;break;0:exit(0);)/*/void xiugai()/*修改職工工資信息*/structpeople*p_people=STU;structpeoplepeople_edit;/*記錄修改后的信息*/FILE*fp;int in

22、t int inttotal=0;1;locate;flag=0;/*用于標(biāo)記有要修改的職工在文件中的位置*/*標(biāo)記職工信息中是否存在要修改信息的職工,0表示不存在,1表示存在*/charname_edit18;/*要修改信息的職工的姓名*/system(cls");if(fp=fopenCe:filei”,rb+")=NULL)printfCerror!n");exit(0);)while(fread(p_people,sizeof(structpeople),1,fp)p_people+;total+;)p_people=STU;printf(n請(qǐng)輸入要修改信

23、息的職工的姓名:”);scanfC%sz,,name_edit);for(i=0;i<total;i+)(if(strcmp(p_people->name,name_edit)=O)locate"flag=l;break;)elsep_people+;)if(flag=0)printf(n信息表中不存在該姓名的職工!n");system(/?pause/z);)if(flag=l)printf("n=);printf("ri請(qǐng)輸入職工號(hào):”,p_people->num);scanf(“$s”,people_edit.num);print

24、fC?n請(qǐng)輸入職工的姓名:",p_people->name);scanf(“$s”,people_);printf(wn請(qǐng)輸入職工的基本工資:",p_people->jbgz);scanfC%f"9&people_edit.jbgz);printf(z/n請(qǐng)輸入職工的崗位工資:",p_people->gwgz);scanf(“%f”,&people_edit.gwgz);printf(Xn請(qǐng)輸入職工的各項(xiàng)扣款合計(jì):”,p_people->gxkkhj);scanfC%f"9&pe

25、ople_edit.gxkkhj);printf(*n請(qǐng)輸入職工的實(shí)發(fā)工資:”,p_people->sfgz);scanfC%f"9&people_edit.sfgz);fseek(fp,locate*sizeof(structpeople),SEEK_SED;/*將文件指針定位到文件中原信息的位置*/fwrite(&people_edit,sizeof(structpeople),1,fp);fclose(fp);printfC7n成功修改該職工信息!n);rewind(fp);system(,zpausez,);)/*/voidsortbysfgz0/*職工

26、工資排序*/structpeopleSTUtlOO,t;FILE*fp;inttotal=0;inti>j;system(cls*);if(fp=fopen("e:filel","rb")=NULL)printf("文件有錯(cuò)誤不能打開!");cxit(O);)while(fread(&STUtotal,sizeof(structpeople),1,fp)!=0)total+;for(i=0;i<total;i+)for(j=total-l;j>i;j-)if(STUj.sfgz<STUj-l.sfgz)

27、t=STUj;STUj=STUj-l;STUj-l=t;printf(*nnnt按實(shí)際工資排序的結(jié)果如下;n");printf(*nt職工號(hào)t姓名t基本工資t崗位工資t各項(xiàng)扣款合計(jì)t實(shí)發(fā)工資nn");for(i=0;i<total;i+)printf("nt%st%st%ft%ft%ft%ft',STUi.num,STU,STUi.jbgz,STUi.gwgz,STUi.gxkkhj,STUi.sfgz);system("pause");voidsortbynum0structpeopleSTU100;structpe

28、oplet;FILE*fp;inttotal=0;inti,j;system(*cls*);if(fp=fopenCe:filel","rb")=NULL)printf("文件有錯(cuò)誤不能打開!”);exit(0);)while(fread(&STUtotal,sizeof(structpeople),1,fp)!=0)total+;for(i=0;i<total;i+)for(j=total-l;j>i;j-)if(strcmp(STUj.num,STUj-l.num)>0)t=STUj;STUj=STUj-l;STUj-l=t

29、:printf(*nnnt按職工號(hào)排序的結(jié)果如下;n");printf("nt職工號(hào)t姓名t基本工資t崗位工資t各項(xiàng)扣款合計(jì)t實(shí)發(fā)工資nn");for(i=0;i<total;i+)printf(*nt%st%st%ft%ft%ft%ftSTUi.num,STU,STUi.jbgz,STUi.gwgz,STUi.gxkkhj,STUi.sfgz);printf(*ntpressanykeytocontinue;system("pause");)voidsort0(systemCclsO;printfCt*歡迎使用職工工資排序系

30、統(tǒng)*tn");printf(*nttl.按職工號(hào)排序nntt2.按職工實(shí)際工資排序nnttO.退出程序nn");printf("請(qǐng)選擇”);inti;scanf&i);while(i<0|i>2)printf("輸入有誤,請(qǐng)從新輸入In");printf("請(qǐng)選擇”);scanf&i);switch(i)case1:sortbysfgz0;break;case2:sortbynum();break;case0:exit(0);)mainO/*/*主函數(shù)*/inti;charss='Y'while(ss=,Y'ssy')system("cls");printf(/znnnnnnnttt歡迎訪問職工工資管理系統(tǒng)n");printf('t*n");printfCtttl一一錄入職工信息)printfCttt2一一顯示職工信息n")printfCttt3一一追加職工信息n&q

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論