教師工資管理系統(tǒng)(共13頁(yè))_第1頁(yè)
教師工資管理系統(tǒng)(共13頁(yè))_第2頁(yè)
教師工資管理系統(tǒng)(共13頁(yè))_第3頁(yè)
教師工資管理系統(tǒng)(共13頁(yè))_第4頁(yè)
教師工資管理系統(tǒng)(共13頁(yè))_第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)介

1、#include#include#include#include#define N 100struct teacher int num; /ID號(hào) char name20;/姓名(xngmng) int lxdh;/ 聯(lián)系電話 int jbgz; /基本工資(j bn n z) int shbt; /生活(shnghu)補(bǔ)貼 int jt; / /津貼 int dhf; /電話費(fèi) int shdf; / 水電費(fèi) int fz; /房租 int gjj; /公積金 int suo; /所得稅 int yfgz; / 應(yīng)發(fā)工資 int hjkk; /合計(jì)扣款 int total; /總工資ee10

2、0; void menu();void input();void save(int);void display();void del();void zengjia();void chaxun();void xiugai(); void start(); /*定義各函數(shù)*/void main()/主函數(shù)int n,t; char a; start();getch(); menu(); do printf(功能選擇(1-8):n); scanf(%d,&n); if(n=1&n 1 輸入教師信息 nn);printf( 2 顯示教師信息 nn);printf( 3 查找教師信息 nn);print

3、f( 4 刪除教師信息 nn);printf( 5 添加教師信息 nn);printf( 6 修改教師信息 nn);printf( 7 退出 nn);void input() /*錄入函數(shù)*/ int i,m; system(cls); printf(職工人數(shù)(1-100):n); scanf(%d,&m); for (i=0;im;i+) printf(請(qǐng)輸入職工號(hào): ); scanf(%d,&eei.num); printf(請(qǐng)輸入姓名: ); scanf(%s,&); getchar(); printf(請(qǐng)輸入聯(lián)系電話: ); scanf(%d,&eei.lxdh); p

4、rintf(請(qǐng)輸入基本工資: ); scanf(%d,&eei.jbgz); printf(請(qǐng)輸入(shr)補(bǔ)貼: ); scanf(%d,&eei.shbt);printf(請(qǐng)輸入(shr)津貼: ); scanf(%d,&eei.jt); printf(請(qǐng)輸入(shr)電話費(fèi): ); scanf(%d,&eei.dhf); printf(請(qǐng)輸入水電費(fèi): ); scanf(%d,&eei.shdf); printf(請(qǐng)輸入所得稅: ); scanf(%d,&eei.suo); printf(請(qǐng)輸入房租: ); scanf(%d,&eei.fz);printf(請(qǐng)輸入公積金: ); scanf

5、(%d,&eei.gjj);eei.yfgz=(eei.jbgz)+(eei.shbt)+(eei.jt);eei.hjkk=(eei.dhf)+(eei.shdf)+(eei.gjj)+(eei.suo)+(eei.fz); eei.total=(eei.yfgz)-(eei.hjkk);/計(jì)算總工資 printf(n);/計(jì)算總工資 printf(n創(chuàng)建完畢!n); save(m);/保存職工人數(shù)mvoid save(int m) /*保存文件函數(shù)*/ int i; FILE*fp; /聲明fp是指針,用來(lái)指向FILE類(lèi)型的對(duì)象 if (fp=fopen(teacher_list,wb)=

6、NULL) /打開(kāi)職工列表文件為空 printf (打開(kāi)失敗n); exit(0); for (i=0;im;i+) /*將內(nèi)存中職工的信息輸出到磁盤(pán)文件中去*/ fwrite(&eei,sizeof(struct teacher),1,fp);/寫(xiě)入數(shù)據(jù)塊 &eei:是要輸出數(shù)據(jù)的地址 sizeof(struct teacher):獲取一個(gè)單體的長(zhǎng)度 1:數(shù)據(jù)項(xiàng)的個(gè)數(shù) fp:目標(biāo)文件指針 fclose(fp);/ 緩沖區(qū)內(nèi)最后剩余的數(shù)據(jù)輸出到磁盤(pán)文件中,并釋放文件指針和有關(guān)的緩沖區(qū)int load() /*導(dǎo)入函數(shù) int型*/ FILE*fp; int i=0; if(fp=fopen(t

7、eacher_list,rb)=NULL) printf (cannot open filen); exit(0); else do fread(&eei,sizeof(struct teacher),1,fp); /讀取 i+; while(feof(fp)=0); /檢測(cè)(jin c)流上的文件結(jié)束符 fclose(fp); return(i-1);/返回(fnhu)人數(shù)void display() /*瀏覽(li ln)函數(shù)*/ int i,sum=0; int m=load(); system(cls); printf(職工號(hào) 姓名 基本工資 補(bǔ)貼 津貼 電話費(fèi) 水電費(fèi) 房租 公積金

8、所得稅 應(yīng)發(fā)工資 合計(jì)扣款 總工資 n); for(i=0;im;i+) /*m為輸入部分的職工人數(shù)*/ printf(n %d%5s %5d %5d %5d %5d %5d %5d %5d %5d %5d %8d %10d ,eei.num,,eei.jbgz,eei.shbt,eei.jt,eei.dhf,eei.shdf,eei.fz,eei.gjj,eei.suo,eei.yfgz,eei.hjkk,eei.total); sum+=eei.total;/計(jì)算員工總工資之和 printf(nn職工平均工資為:%d n,sum/m);void del() /*刪除函數(shù) *

9、/ int m=load(); int i,j,n,t,button; char name20; printf(n 原來(lái)的職工信息:n); display(); /顯示刪除前的員工信息 printf(n); printf(按姓名(xngmng)刪除:n); scanf(%s,name); for(button=1,i=0;button&im;i+)/主函數(shù)(hnsh)中確定button=1時(shí)各函數(shù)才可以被調(diào)用 if(strcmp(,name)=0)/按員工姓名查找(ch zho)到某員工 并調(diào)出其資料 printf(n此人原始記錄為:n);/顯示選定員工的信息 printf(職

10、工號(hào) 姓名 基本工資 補(bǔ)貼 津貼 電話費(fèi) 水電費(fèi) 房租 公積金 所得稅 應(yīng)發(fā)工資 合計(jì)扣款 總工資 n); printf(n %d%5s %5d %5d %5d %5d %5d %5d %5d %5d %5d %8d %10d ,eei.num,,eei.jbgz,eei.shbt,eei.jt,eei.dhf,eei.shdf,eei.fz,eei.gjj,eei.suo,eei.yfgz,eei.hjkk,eei.total); printf(n確定刪除 請(qǐng)按1,不刪除請(qǐng)按0n); scanf(%d,&n); if(n=1) for(j=i;jm-1;j+)/從第i項(xiàng)開(kāi)始

11、將后一項(xiàng)的各成員的值賦給前一項(xiàng)各對(duì)應(yīng)的成員 完成對(duì)第i項(xiàng)的刪除 strcpy(,eej+1.name); eej.num=eej+1.num; eej.jbgz=eej+1.jbgz; eej.shbt=eej+1.shbt; eej.jt=eej+1.jt;eei.dhf=eei+1.dhf; eej.fz=eej+1.fz; eej.gjj=eej+1.gjj;eej.suo=eej+1.suo; eej.yfgz=eej+1.yfgz;eej.hjkk=eej+1.hjkk; eej.total=eej+1.total; button=0; if(!button)/but

12、ton=0表明刪除已完成 m=m-1;/總員工數(shù)減少一人 else printf(n查無(wú)此人!n); printf(n 刪除(shnch)后的所有職工信息:n); save(m); /調(diào)用保存(bocn)函數(shù) display(); /調(diào)用瀏覽(li ln)函數(shù) printf(n);printf(按任意鍵返回); getch(); menu(); void zengjia()/*添加函數(shù)*/ FILE*fp; int n; int count=0; int i; int m=load(); printf(n 原來(lái)的職工信息:n); display(); printf(n); fp=fopen(e

13、eploee_list,a); printf(請(qǐng)輸入想增加的職工數(shù):n);/確定要加入的職工數(shù)n scanf(%d,&n); for (i=m;i(m+n);i+)/添加n名員工的信息 printf(n 請(qǐng)輸入新增加職工的信息:n); printf(請(qǐng)輸入職工號(hào): ); scanf(%d,&eei.num); printf(n); printf(請(qǐng)輸入職工號(hào): ); scanf(%d,&eei.num); printf(請(qǐng)輸入姓名: ); scanf(%s,&); getchar(); printf(請(qǐng)輸入聯(lián)系電話: ); scanf(%d,&eei.lxdh); printf

14、(請(qǐng)輸入基本工資: ); scanf(%d,&eei.jbgz); printf(請(qǐng)輸入補(bǔ)貼: ); scanf(%d,&eei.shbt);printf(請(qǐng)輸入津貼: ); scanf(%d,&eei.jt); printf(請(qǐng)輸入(shr)電話費(fèi): ); scanf(%d,&eei.dhf); printf(請(qǐng)輸入(shr)水電費(fèi): ); scanf(%d,&eei.shdf); printf(請(qǐng)輸入(shr)所得稅: ); scanf(%d,&eei.suo); printf(請(qǐng)輸入房租: ); scanf(%d,&eei.fz); printf(請(qǐng)輸入公積金: ); scanf(%d,

15、&eei.gjj);eei.yfgz=(eei.jbgz)+(eei.shbt)+(eei.jt);eei.hjkk=(eei.dhf)+(eei.shdf)+(eei.gjj)+(eei.suo)+(eei.fz); eei.total=(eei.yfgz)-(eei.hjkk);/計(jì)算總工資 printf(n);/計(jì)算總工資 printf(n); count=count+1; printf(已增加的人數(shù):n); printf(%dn,count); printf(n添加成功n); m=m+count;/將新添加員工的人數(shù)加到總員工人數(shù)中 printf(n增加后的所有職工信息:n); pri

16、ntf(n); save(m); display();/顯示添加后的信息 fclose(fp);void chaxun() char name30; int i,t; int m=load();system(cls);/清屏 printf(請(qǐng)輸入姓名:n); scanf(%s,name); for(i=0;im;i+) if(strcmp(,name)=0) printf(職工號(hào) 姓名 基本工資 補(bǔ)貼 津貼 電話費(fèi) 水電費(fèi) 房租(fngz) 公積金 所得稅 應(yīng)發(fā)工資 合計(jì)扣款 總工資 n); printf(n %d%5s %5d %5d %5d %5d %5d %5d %5d

17、%5d %5d %8d %10d ,eei.num,,eei.jbgz,eei.shbt,eei.jt,eei.dhf,eei.shdf,eei.fz,eei.gjj,eei.suo,eei.yfgz,eei.hjkk,eei.total); if(i=m) printf(nn); printf(n); printf(返回查詢(chxn)菜單請(qǐng)按1,繼續(xù)查詢姓名請(qǐng)按2n); scanf(%d,&t); switch(t) case 1:menu();break; case 2:chaxun();break; void xiugai() /*修改(xigi)函數(shù)*/ int nu

18、m; /ID號(hào) char name20;/姓名 int lxdh;/ 聯(lián)系電話 int jbgz; /基本工資 int shbt; /生活補(bǔ)貼 int jt; / /津貼 int dhf; /電話費(fèi) int shdf; / 水電費(fèi) int fz; /房租 int gjj; /公積金 int suo; /所得稅 int yfgz; / 應(yīng)發(fā)工資 int hjkk; /合計(jì)扣款 int total; /總工資 int b,c,i,n,t,button; int m=load(); system(cls); printf(n 原來(lái)的職工信息:n); display(); printf(n); pri

19、ntf(請(qǐng)輸入要修改的職工的姓名:n); scanf(%s,name); for(button=1,i=0;button&i11|c1) printf(n選擇錯(cuò)誤,請(qǐng)重新選擇!n); button=0; if(button=1) printf(n查無(wú)此人n); do switch(c) /*因?yàn)楫?dāng)找到第i個(gè)職工時(shí),for語(yǔ)句后i自加了1,所以下面的應(yīng)該把改后的信息賦值給第i-1個(gè)人*/ case 1:printf(職工號(hào)改為: ); scanf(%d,&num); eei-1.num=num; break; case 2:printf(姓名改為: ); scanf(%s,name); strc

20、py(,name); break; case 3:printf(基本工資(j bn n z)改為: ); getchar(); scanf(%d,&jbgz); eei-1.jbgz=jbgz; eei-1.yfgz=(eei-1.jbgz)+(eei-1.shbt)+(eei-1.jt); eei-1.hjkk=(eei-1.dhf)+(eei-1.shdf)+(eei-1.gjj)+(eei-1.suo)+(eei-1.fz); eei-1.total=(eei-1.yfgz)-(eei-1.hjkk); break; case 4:printf(補(bǔ)貼(bti)改為:

21、); scanf(%d,&shbt); eei-1.shbt=shbt; eei-1.yfgz=(eei-1.jbgz)+(eei-1.shbt)+(eei-1.jt); eei-1.hjkk=(eei-1.dhf)+(eei-1.shdf)+(eei-1.gjj)+(eei-1.suo)+(eei-1.fz); eei-1.total=(eei-1.yfgz)-(eei-1.hjkk); break; case 5:printf(津貼(jnti)改為: ); scanf(%d,&jt); eei-1.jt=jt; eei-1.yfgz=(eei-1.jbgz)+(eei-1.shbt)+(e

22、ei-1.jt); eei-1.hjkk=(eei-1.dhf)+(eei-1.shdf)+(eei-1.gjj)+(eei-1.suo)+(eei-1.fz); eei-1.total=(eei-1.yfgz)-(eei-1.hjkk); break;case 6:printf(電話費(fèi)改為: ); scanf(%d,&dhf); eei-1.dhf=dhf; eei-1.yfgz=(eei-1.jbgz)+(eei-1.shbt)+(eei-1.jt); eei-1.hjkk=(eei-1.dhf)+(eei-1.shdf)+(eei-1.gjj)+(eei-1.suo)+(eei-1.fz

23、); eei-1.total=(eei-1.yfgz)-(eei-1.hjkk);case 7:printf(水電費(fèi)改為: );eei-1.shdf=shdf;eei-1.yfgz=(eei-1.jbgz)+(eei-1.shbt)+(eei-1.jt); eei-1.hjkk=(eei-1.dhf)+(eei-1.shdf)+(eei-1.gjj)+(eei-1.suo)+(eei-1.fz); eei-1.total=(eei-1.yfgz)-(eei-1.hjkk); case 8:printf(房租改為: ); scanf(%d,&fz); eei-1.fz=fz; eei-1.yfgz=(eei-1.jbgz)+(eei-1.shbt)+(eei-1.jt); eei-1.hjkk=(eei-1.dhf)+(eei-1.shdf)+(eei-1.gjj)+(eei-1.suo)+(eei-1.fz); eei-1.total=(eei-1.yfgz)-(eei-1.hjkk); break; case 9:printf(公積金改為(i wi): ); scanf(%d,&gjj);

溫馨提示

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