工資管理系統(tǒng) C語言課設(shè)_第1頁
工資管理系統(tǒng) C語言課設(shè)_第2頁
工資管理系統(tǒng) C語言課設(shè)_第3頁
工資管理系統(tǒng) C語言課設(shè)_第4頁
工資管理系統(tǒng) C語言課設(shè)_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、工資管理系統(tǒng)源碼:開放 帶登錄的#include<stdio.h>#include<stdlib.h>#include<string.h>#include<conio.h> /*清屏函數(shù)頭*/ #define N 100 /* /職工最大人數(shù)控制*/*結(jié)構(gòu)體定義職工的所有屬性,包括職工證號,姓名,底薪,獎金和提成,最后收入。*/struct studentint no;char name15;long score1;long score2;long score3;long score4;long score5;long score6;long s

2、core7;long score8;long sum1;float sum2;float sum;sN;/*/ 函數(shù)聲明*/void mune(); /* /主菜單函數(shù)*/void input(); /* /錄入函數(shù)*/void insert(); /* /插入函數(shù)*/void del(); /* /刪除函數(shù)*/void delNo(); /* /按職工證號刪除*/void delName(); /* /按姓名刪除 */ void select(); /* /查找函數(shù)*/void selectNo(); /* /按職工證號查找*/void selectName();/* /按姓名查找*/voi

3、d display(); /* /制表格式函數(shù)*/void total(); /* /分類合計(jì)函數(shù)*/void save(); /* /保存函數(shù)*/void load(); /* /讀取函數(shù)*/* / 收稅函數(shù)*/float tax(int x) if(x<=2000) return 0; else if(x<4000) return (x-2000)*0.05; if(x<6000) return 100+(x-4000)*0.1; if(x<8000) return 300+(x-6000)*0.15; if(x<10000) return 600+(x-80

4、00)*0.2; if(x<15000); return 1000+(x-10000)*0.25; if(x<20000) return 2250+(x-15000)*0.3; /* 全局變量*/int i,j,k,t,q;char a20,b20,c; /* /循環(huán)變量*/int count=0; /*控制數(shù)組下標(biāo)變量*/ void mune()system("cls"); printf("nn"); if(k=0)printf("請先登錄!n"); while(k!=3&&t=0) if(k!=0) p

5、rintf("nn"); printf("請輸入您的賬號:"); scanf("%s",a); printf("請輸入您的密碼:"); while(c=getch()!='r') printf("*"); bq+=c; k+; /system("cls"); if(strcmp(a,"jieshao")!=0|strcmp(b,"123")!=0) printf(" %c%c用戶或密碼錯(cuò)誤!請重新輸入!n&qu

6、ot;,7,7); q=0; else t=1; if(k=3) printf("nn 你 是 非 法 用 戶!");printf("%c%c%c%c%c%c",7,7,7,7,7,7);exit(0); printf("nnn"); printf(" *n"); printf(" | 職工工資系統(tǒng)主菜單界面 |n"); printf(" | |n"); printf(" | 1.錄入職工工資 5.瀏覽職工工資 |n"); printf(" |

7、|n"); printf(" | 2.插入職工工資 6.合計(jì)職工工資 |n"); printf(" | |n"); printf(" | 3.刪除職工工資 7.存儲職工工資 |n"); printf(" | |n"); printf(" | 4.查找職工工資 8.讀取職工工資 |n"); printf(" | |n"); printf(" | 0.平安退出系統(tǒng) |n"); printf(" | |n"); printf(&qu

8、ot; |->職工工資管理程序<-|n"); printf(" *n"); printf(" 請?jiān)?8之間選擇 :"); /*/ 主函數(shù)*/int main () int in; /*選擇功能的變量*/ char ch='y' /*/選擇是否繼續(xù)時(shí)的變量,(y / n)*/ while(1) mune(); /*120行 */ scanf("%d",&in); if(in<0 | in>9) printf("a輸入有誤,請?jiān)?8之間選擇!"); contin

9、ue; else if(in=0) printf("確定要退出程序嗎?(y / n) "); scanf(" %c",&ch); printf("n"); if(ch='Y' | ch='y') printf(" 謝謝您的使用,再見!"); getch(); break; switch(in) case 1: /*/錄入*/ printf("n- 請輸入職工信息 -"); input(); break; case 2: /* /插入*/ insert();

10、 break; case 3: /*刪除*/ if(count!=0) system("cls"); del(); /*/ else system("cls"); printf("a沒有數(shù)據(jù)!n"); /* /(如果學(xué)生人數(shù)為0,彈出此消息) */ break; case 4: /*查找*/ if(count!=0) system("cls"); select(); else system("cls"); printf("a沒有數(shù)據(jù)!n"); break; case 5: /

11、*/制表*/ if(count!=0) system("cls"); display(); else system("cls"); printf("a沒有數(shù)據(jù)!n"); break; case 6: /* /合計(jì) */ if(count!=0) total(); else system("cls"); printf("a沒有數(shù)據(jù)!n"); break; case 7: /*保存*/ save(); /* /第439行 */ break; case 8: /* /讀取*/ load(); brea

12、k; default : break; /*主菜單函數(shù)*/*/ 錄入函數(shù)*/void input() system("cls");char ch;for(i=count;i<N;i+) printf("n職工證號: "); scanf("%d",&si.no); printf("n姓名: "); scanf("%s",); printf("n根本工資: "); scanf("%ld",&si.score1); print

13、f("n崗位工資: "); scanf("%ld",&si.score2); printf("n技校工資: "); scanf("%ld",&si.score3); printf("n生活補(bǔ)助: "); scanf("%ld",&si.score4); printf("n房屋補(bǔ)貼: "); scanf("%ld",&si.score5); printf("n其他: "); scanf(

14、"%ld",&si.score7); printf("n扣款(公基金,采暖費(fèi)):"); scanf("%ld",&si.score8); si.sum1=si.score1+si.score2+si.score3+si.score4+si.score5+si.score6+si.score7-si.score8; si.sum2=tax(si.sum1); si.sum=(si.sum1-si.sum2); printf("nn"); count+; printf("是否繼續(xù)輸入?(y /

15、 n) "); scanf(" %c",&ch); printf("n"); if(ch!='Y' && ch!='y') system("cls"); /* /清屏 */ printf("nntttt接下來您要做什么?n"); break; /*插入函數(shù)*/void insert() system("cls"); printf("nnn- 請輸入要插入的職工信息 -");struct student temp

16、;input();system("cls"); /*/ 刪除函數(shù),含子菜單:按職工號刪除,按姓名刪除*/void del()int in; while(1) printf(" *n"); printf(" | 1.按職工證號刪除 |n"); printf(" | |n"); printf(" | 2.職工按姓名刪除 |n"); printf(" | |n"); printf(" | 3.返回上一級菜單 |n"); printf(" *n"

17、;); printf(" 請?jiān)?3之間選擇: "); scanf("%d",&in); if(in<1 | in>3) printf("a輸入有誤,請重新輸入!n"); continue; else break;switch(in) case 1: delNo(); break; case 2: delName(); break; case 3: break;/* 刪除函數(shù),按職工證號刪除*/void delNo() printf("n- 請輸入要刪除的職工的職工證號 -"); int dno;

18、 char ch; printf("n輸入: "); scanf("%d",&dno); for(i=0;i<count;i+) if(dno=si.no) printf("職工號:%ldn",si.no); printf("姓名:%sn",); printf("根本工資:%ldn",si.score1); printf("崗位工資:%ldn",si.score2); printf("技校工資:%ldn",si.score3);

19、 printf("生活補(bǔ)助:%ldn",si.score4); printf("房屋補(bǔ)貼:%ldn",si.score5); printf("其他:%ldn",si.score7); printf("扣款:%ldn",si.score8); printf("應(yīng)發(fā)工資:%ldn",si.sum1); printf("所得稅:%.2fn",si.sum2); printf("實(shí)際工資:%.2fn",si.sum); printf("n確定要刪除嗎?(

20、Y / N)"); scanf(" %c",&ch); printf("n"); if(ch='y' | ch='Y') for(j=i;j<count-1;j+) sj=sj+1; system("cls"); printf("nnnnnttt刪除成功n"); printf("nnn按任意鍵繼續(xù)操作:"); getchar();getchar(); system("cls"); count-; break; /*/ 刪

21、除函數(shù),按職工姓名刪除*/void delName() printf("n- 請輸入要刪除的職工的姓名 -"); char name15; char ch; int t; printf("n輸入: "); scanf("%s",name); for(i=0;i<count;i+) if(strcmp(name,)=0) t=i; printf("職工號:%ldn",st.no); printf("姓名:%sn",); printf("根本工資:%ldn

22、",st.score1); printf("崗位工資:%ldn",st.score2); printf("技校工資:%ldn",st.score3); printf("生活補(bǔ)助:%ldn",st.score4); printf("房屋補(bǔ)貼:%ldn",st.score5); printf("其他:%ldn",st.score7); printf("扣款:%ldn",st.score8); printf("應(yīng)發(fā)工資:%ldn",st.sum1);

23、printf("所得稅:%.2fn",st.sum2); printf("實(shí)際工資:%.2fn",st.sum); printf("n確定要刪除嗎?(Y / N)"); scanf(" %c",&ch); printf("n"); if(ch='y' | ch='Y') for(j=i;j<count-1;j+) sj=sj+1; system("cls"); printf("nnnnnttt刪除成功n");

24、printf("nnn按任意鍵繼續(xù)操作:"); getchar();getchar(); count-; break; /*查找函數(shù),含子程序:按職工證號查找,按姓名查找*/void select()int in; do printf("nnn"); printf(" *n"); printf(" | 1.按職工證號查找 |n"); printf(" | |n"); printf(" | 2.按職工姓名查找 |n"); printf(" | |n"); p

25、rintf(" | 3.返回上一級菜單 |n"); printf(" *n"); printf(" 請?jiān)?3之間選擇: "); scanf("%d",&in); if(in<1 | in>3) printf("a輸入有誤,請重新輸入!n"); continue; else break; while(1);switch(in) case 1: selectNo(); break; case 2: selectName(); break; case 3: break;/*/ 查找

26、函數(shù),按職工證號查找學(xué)員信息*/void selectNo() system("cls"); printf("n- 請輸入要查找的職工的職工證號 -");int no;printf("n輸入:");scanf("%d",&no);for(i=0;i<count;i+) if(si.no=no) printf("職工號:%dn",si.no); printf("姓名:%sn",); printf("根本工資:%ldn",si.sc

27、ore1); printf("崗位工資:%ldn",si.score2); printf("技校工資:%ldn",si.score3); printf("生活補(bǔ)助:%ldn",si.score4); printf("房屋補(bǔ)貼:%ldn",si.score5); printf("其他:%ldn",si.score7); printf("扣款:%ldn",si.score8); printf("應(yīng)發(fā)工資:%ldn",si.sum1); printf("

28、;所得稅:%.2fn",si.sum2); printf("實(shí)際工資:%.2fn",si.sum); printf("n"); printf("t按任意鍵繼續(xù)操作: ");getchar();getchar();system("cls"); /* 查找函數(shù),按職工證號查找職工信息*/void selectName()system("cls");printf("n- 請輸入要查找的職工的姓名 -");char name15;int m; printf("n輸

29、入:");scanf("%s",name);for(i=0;i<count;i+) if(strcmp(name,)=0) m=i; printf("職工號:%dn",sm.no); printf("姓名:%sn",); printf("根本工資:%ldn",sm.score1); printf("崗位工資:%ldn",sm.score2); printf("技校工資:%ldn",sm.score3); printf("生

30、活補(bǔ)助:%ldn",sm.score4); printf("房屋補(bǔ)貼:%ldn",sm.score5); printf("其他:%ldn",sm.score7); printf("扣款:%ldn",sm.score8); printf("應(yīng)發(fā)工資:%ldn",sm.sum1); printf("所得稅:%.2fn",sm.sum2); printf("實(shí)際工資:%.2fn",sm.sum); printf("n"); printf("t

31、按任意鍵繼續(xù)操作: ");getchar();getchar();system("cls"); /*/ 制表函數(shù),將所有職工工資以表格形式輸出*/void display()printf("-");printf(" 工 資 表 單 瀏 覽n");printf("-");printf("職工號: ");for(i=0;i<count;i+)printf("%-10d",si.no); printf("n");printf("-&qu

32、ot;);printf("姓名: ");for(i=0;i<count;i+)printf("%-10s",); printf("n");printf("-");printf("根本工資: ");for(i=0;i<count;i+)printf("%-10ld",si.score1); printf("n");printf("-");printf("崗位工資: ");for(i=0;i&l

33、t;count;i+)printf("%-10ld",si.score2); printf("n");printf("-");printf("技校工資: ");for(i=0;i<count;i+)printf("%-10ld",si.score3); printf("n");printf("-");printf("生活補(bǔ)助: ");for(i=0;i<count;i+)printf("%-10ld",s

34、i.score4); printf("n");printf("-");printf("房屋補(bǔ)貼: ");for(i=0;i<count;i+)printf("%-10ld",si.score5); printf("n");printf("-");printf("其他: ");for(i=0;i<count;i+)printf("%-10ld",si.score7); printf("n");printf(

35、"-");printf("扣款: ");for(i=0;i<count;i+)printf("%-10ld",si.score8); printf("n");printf("-");printf("應(yīng)發(fā)工資: ");for(i=0;i<count;i+)printf("%-10ld",si.sum1); printf("n");printf("-");printf("所得稅: ");f

36、or(i=0;i<count;i+)printf("%",si.sum2); printf("n");printf("-");printf("實(shí)際工資: ");for(i=0;i<count;i+)printf("%",si.sum); printf("n");printf("-");printf("-");printf("tt按任意鍵繼續(xù)操作: ");getchar();getchar();system("cls"); /* 合計(jì)函數(shù),將底薪,獎金和提成,最后工資按最后輸出。*/void total()system("cls");long tot1=0,tot2=0,tot3=0,tot4=0,tot5=0,tot6=0,tot7=0,tot8=0;double tot9=0,tot10=0;for(i=0;i<count;i+) tot1+=si.score1; tot2+=si.score2; tot3+=si.score3; tot4+

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論