C語言職工工資管理系統(tǒng)設計報告_第1頁
C語言職工工資管理系統(tǒng)設計報告_第2頁
C語言職工工資管理系統(tǒng)設計報告_第3頁
C語言職工工資管理系統(tǒng)設計報告_第4頁
C語言職工工資管理系統(tǒng)設計報告_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、C語言程序設計 課程設計報告 設計題目:職工工資管理系統(tǒng) 專業(yè): 班級: 學號: 姓名:信息工程學院1前言工資管理系統(tǒng)是企業(yè)不可缺少的一部分,它利用計算機對員工工資進行統(tǒng)一 管理,實現(xiàn)工資管理系統(tǒng)的系統(tǒng)化、規(guī)范化和自動化,為企業(yè)提高工作效率。本 程序旨在訓練讀者的基本編程能力,了解管理信息系統(tǒng)的開發(fā)流程,熟悉 C語言 的文件和結(jié)構(gòu)數(shù)組的各種基本操作。本程序中涉及結(jié)構(gòu)體、數(shù)組、文件等方面的 知識。2需求分析課程設計目的學生在教師指導下運用所學課程的知識來研究、解決一些具有一定綜合性問題的 專業(yè)課題。通過課程設計(論文),提高學生綜合運用所學知識來解決實際問題、 使用文獻資料、及進行科學實驗或技術

2、設計的初步能力,為畢業(yè)設計(論文)打 基礎。課程設計任務職工工資管理系統(tǒng)功能設計要求(1)輸入記錄 : 將每一個職工的姓名、 ID 號以及基本工資、職務工資、崗位 津貼、醫(yī)療保險、公積金的數(shù)據(jù)作為一個記錄。該軟件能建立一個新的數(shù)據(jù)文件 或給已建立好的數(shù)據(jù)文件增加記錄。(2)顯示記錄 : 根據(jù)用戶提供的記錄或者根據(jù)職工姓名顯示一個或幾個職工的 各項工資和平均工資。(3)修改記錄 : 可以對數(shù)據(jù)文件的任意記錄的數(shù)據(jù)進行修改并在修改前后對記 錄內(nèi)容進行顯示。(4)查找記錄 : 可以對數(shù)據(jù)文件的任意記錄的數(shù)據(jù)進行查找并在查找前后對記 錄內(nèi)容進行顯示。(5)刪除記錄 : 可刪除數(shù)據(jù)文件中的任一記錄。(6

3、)統(tǒng)計 :(A) 計算各項工資平均工資及總工資 ,(B)? 統(tǒng)計符合指定條件 ( 如職 工工資前三項之和在 3000元以上、 30002000元、20001000元)以內(nèi)的工資職工 人數(shù)及占總職工人數(shù)的百分比。 (C) 按字符表格形式打印全部職工工資信息表及平 均工資 (?包括各項總的平均工資 ) 。(7)保存數(shù)據(jù)文件功能。例如:職工工資信息表ID 號姓名基本工資職務工資津貼醫(yī)療保險 -公積金 - 總工資01張望 1286 794 198 109 135 203402 李明1185 628 135 94114 174003王小民895 438 98 6473129404張效章1350 868

4、210 116 150 216205彭山745 398 84 61681098各項平均工資(要求: 1. 源文件采用多文件的工程結(jié)構(gòu) 2. 數(shù)據(jù)存儲采用文件形式 3.標準的C輸入輸出4.功能完善,適當?shù)淖⑨專?.關于文件的內(nèi)容需要自學) 設計環(huán)境( 1)WINDOWS2000/2003/XP/7/Vista 系統(tǒng)(2)VisualC+開發(fā)語言圖系統(tǒng)模塊圖4具體代碼實現(xiàn)#i nclude#in clude#in clude#include 加記錄 #n);prin tf(tt#n);printf(tt#2.顯示記錄 #n);prin tf(tt#n);printf(tt#3.刪除記錄 #n);p

5、rin tf(tt#n);printf(tt#4.查詢記錄 #n);prin tf(tt#n);printf(tt#5.修改記錄 #n);prin tf(tt#n);printf(tt#6.統(tǒng)計記錄 #n);prin tf(tt#n);printf(tt#0.退出程序 #n);prin tf(tt# n);printf(ttt請您選擇(0-6)選擇請輸入:);scan f(%d,&c);while(c=7);return(c);in tI nput(Stude ntst u)in ti=0;charsign;while(sign!=n&sign!=N)printf(tID:);scanf(t%

6、s,stun+i.id);printf(t 姓名 :);scanf(t%s,stun+);printf(t基本工資 :);scanf(t%lf,&stun+i.base);printf(t職務工資 :);scanf(t%lf,&stun+i.position);printf(t 津貼 :);scanf(t%lf,&stun+i.allowance);printf(t醫(yī)療保險 :);scanf(t%lf,&stun+i.insurance);printf(t公積金 :);scanf(t%lf,&stun+i.fund);stun+i.wage=stun+i.base+stun+i.p

7、osition+stu n+i.allowance+stun+i.insurance+stun+i.fund;printf(nt 是否繼續(xù)添加 ?(Y/N);scanf(t%c,&sign);i+;return(n+i);voidDisplay(Studentstu)inti;doublem1=0,m2=0,m3=0,m4=0,m5=0;printf(nn 按照姓名進行排序! nn);printf(n);d,,stui.base,stui.position,stui. allowance,stui.insurance,stui.fund,stui.wage);ase;m2+=

8、stui.position;m3+=stui.allowance;m4+=stui.insurance;m5+=stui.fund;if(n!=0)printf(n);printf( 各項平均工資: %nn,m1/n,m2/n,m3/n,m4/n,m5/n);system(pause); 部刪除 n);printf(t2. 根據(jù) ID 號刪除 n);printf(t請選擇 :);scanf(%d,&x);if(x=1)for(j=0;jn;j+)d,m)!=0&in)i+;if(i=n)printf(t 職工工資管理系統(tǒng)中沒有此人 !n);elsefor(j=i;jn-1;j+)ame,s)!

9、=0&in)d);printf(t姓名 :%sn,);printf(t基本工資 :%.2lfn,stui.base);printf(t職務工資 :%.2lfn,stui.position);printf(t津貼 :%.2lfn,stui.allowance);printf(t醫(yī)療保險 :%.2lfn,stui.insurance);printf(t公積金 :%.2lfn,stui.fund);printf(t總工資 :%.2lfn,stui.wage);if(m=2)d,s)!=0&in)i+;if(i=n)printf(t 職工工資管理系統(tǒng)中沒有此人 !n);return;

10、printf(tID:%sn,stui.id);printf(t姓名 :%sn,);printf(t基本工資 :%.2lfn,stui.base);printf(t職務工資 :%.2lfn,stui.position);printf(t津貼 :%.2lfn,stui.allowance);printf(t 醫(yī)療保險 :%.2lfn,stui.insurance);printf(t公積金 :%.2lfn,stui.fund);printf(t總工資 :%.2lfn,stui.wage);voidChange(Studentstu)intm;printf(tn 請選擇修改方式 :

11、n);d,m)!=0&in)i+;if(i=n)printf(t 職工工資管理系統(tǒng)中沒有此人 !n); return;printf(tID:);scanf(t%s,stui.id);printf(t姓名 :);scanf(t%s,);printf(t 基本工資 :);scanf(t%lf,&stui.base);printf(t 職務工資 :);scanf(t%lf,&stui.position);printf(t津貼 :);scanf(t%lf,&stui.allowance);printf(t 醫(yī)療保險 :);scanf(t%lf,&stui.insurance);pri

12、ntf(t公積金 :);scanf(t%lf,&stui.fund);stui.wage=stui.base+stui.position+stui.all owance+stui.insurance+stui.fund;printf(t 修改成功! );elseif(m=2)inti=0;charm10;printf(t 請輸入想修改的記錄中人的姓名 :);scanf(%s,m);while(strcmp(,m)!=0&in)i+;if(i=n)printf(t 職工工資管理系統(tǒng)中沒有此人 !n); return; printf(tID:);scanf(t%s,stui.id

13、); printf(t姓名 :);scanf(t%s,); printf(t 基本工資 :); scanf(t%lf,&stui.base); printf(t 職務工資 :);scanf(t%lf,&stui.position); printf(t津貼 :);scanf(t%lf,&stui.allowance); printf(t 醫(yī)療保險 :);scanf(t%lf,&stui.insurance); printf(t公積金 :);scanf(t%lf,&stui.fund);stui.wage=stui.base+stui.position+stui.all owan

14、ce+stui.insurance+stui.fund;printf(t 修改成功! ); voidWritetoText(Studentstu)inti=0;FILE*fp;/* 定義文件指針 */ printf(t 保存到文件 n);/* 輸入文件名 */ if(fp=fopen(output,w)=NULL)printf(t 無法打開文件 n); system(pause);return; while(in) fprintf(fp,%s%s%lf%lf%lf%lf%lf%lfn,stui.id,,stui.bas e,stui.position,stui.allowan

15、ce,stui.insurance,stui.fund,stui.wage);i+; fclose(fp);/* 關閉文件 */printf(保存成功!n);voidRead(Stude ntst u)FILE*fp;in ti;charfile name20;strcpy(file name,output);if(fp=fope n(file name,r)=NULL)printf(”找不到 s文件!n,filename);system(pause);return;n=0;for(i=0;i2000)s+;printf(在職工工資前三項之和中大于2000的占總職工的百分比:%.2lfn,s/n);return( n);system(pause);voidMe nu()while(1)和3版.高等教育出版社致謝通過學習和練習C程序的設計基礎,了解了一些關于C的知識。在設計

溫馨提示

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

最新文檔

評論

0/150

提交評論