C語言職工信息管理系統(tǒng).doc_第1頁
C語言職工信息管理系統(tǒng).doc_第2頁
C語言職工信息管理系統(tǒng).doc_第3頁
C語言職工信息管理系統(tǒng).doc_第4頁
C語言職工信息管理系統(tǒng).doc_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余12頁可下載查看

下載本文檔

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

文檔簡介

計(jì)算機(jī)語言課程設(shè) 說明書 題目:職工信息管理系統(tǒng)學(xué) 院: 專 業(yè): 年級 班別: 學(xué) 號: 姓 名: 指導(dǎo)老師: 目錄1.摘要-22.前言-23.系統(tǒng)分析-3 3.1功能需求-3 3.2數(shù)據(jù)需求-3 3.3程序所需函數(shù)-3 3.4系統(tǒng)流程圖-44.系統(tǒng)總體設(shè)計(jì)-5 4.1總體數(shù)據(jù)結(jié)構(gòu)-55.詳細(xì)設(shè)計(jì)-56.系統(tǒng)測試-87.參考文獻(xiàn)-98.課程設(shè)計(jì)總結(jié)-109.附錄:源代碼-11摘要隨著信息技術(shù)在管理上越來越深入而廣泛的應(yīng)用,管理信息系統(tǒng)的實(shí)施在技術(shù)上已逐步成熟。管理信息系統(tǒng)是一個(gè)不斷發(fā)展的新型學(xué)科,任何一個(gè)單位要生存要發(fā)展,要高效率地把內(nèi)部活動有機(jī)地組織起來,就必須建立與自身特點(diǎn)相適應(yīng)的管理信息系統(tǒng)。本程序是一個(gè)關(guān)于職工信息管理的數(shù)據(jù)庫系統(tǒng),通過這個(gè)系統(tǒng)管理員可以簡捷、方便的對職工信息進(jìn)行增加、修改、刪除等功能,而用戶也可以通過這個(gè)系統(tǒng)對職工信息進(jìn)行查詢等功能。關(guān)鍵詞:職工,系統(tǒng),程序前言隨著經(jīng)濟(jì)的快速發(fā)展和科技的不斷進(jìn)步,各企業(yè)對職工的信息管理的要求也越來越高,同時(shí)也不斷油更先進(jìn)的計(jì)算機(jī)語言應(yīng)用到實(shí)際的企業(yè)管理中去,發(fā)揮了極為重大的作用。為了滿足各企業(yè)需求,我們設(shè)計(jì)了一套職工信息管理系統(tǒng),該系統(tǒng)較以往的系統(tǒng)來看,程序更簡潔,高效,便于實(shí)際應(yīng)用。2.1設(shè)計(jì)目的 對職工的信息進(jìn)行方便高效管理。22設(shè)計(jì)要求設(shè)計(jì)一個(gè)職工信息管理系統(tǒng),能以簡便高效的方式對職工信息進(jìn)行管理和檢索,具體功能如下:1、 系統(tǒng)以菜單方式工作,要求界面友好,易于操作;2、 職工信息管理錄入功能(職工信息文件保存);3、 職工信息管理瀏覽功能;4、 查詢和排序功能:按工資查詢,按學(xué)歷查詢等。5、 職工信息的刪除與修改。3.系統(tǒng)分析3.1功能需求 設(shè)計(jì)一個(gè)職工信息管理系統(tǒng),能以簡便高效的方式對職工信息進(jìn)行管理和檢索,具體功能如下:1、 系統(tǒng)以菜單方式工作,要求界面友好,易于操作;2、 職工信息管理錄入功能(職工信息文件保存);3、 職工信息管理瀏覽功能;4、 查詢和排序功能:按工資查詢,按學(xué)歷查詢等。5、 職工信息的刪除與修改。3.2數(shù)據(jù)需求int EmpNum; / 職工編號 char EmpName12; / 姓名 int Sex; / 性別 1- 女 2- 男char Position12; / 職務(wù)char Address12; / 住址 int Tell; /電話 int Day; /出生年月int Cult; /學(xué)歷 1-初中 2-高中 3-大學(xué)3.3程序所需函數(shù)printf(請輸入職工編號:);printf(n請輸入姓名:);printf(n請輸入性別 1- 女 2- 男:);printf(n請輸入職務(wù):);printf(n請輸入住址:)printf(n請輸入電話:);printf(n請輸入出生年月:);printf(n請輸入學(xué)歷 1-初中 2-高中 3-大學(xué));printf(繼續(xù)?(1.y 2.n));void main();3.4系統(tǒng)流程圖4.系統(tǒng)總體設(shè)計(jì)4.1總體數(shù)據(jù)結(jié)構(gòu)本系統(tǒng)中主要的數(shù)據(jù)結(jié)構(gòu)結(jié)構(gòu)就是職工的信息,包括職工號,姓名,性別,年齡,出生年月,學(xué)歷,職務(wù),工資,住址,電話等。在處理的過程中各項(xiàng)可以作為一個(gè)職工的不屬性來進(jìn)行處理。5.詳細(xì)設(shè)計(jì)對應(yīng)于總體設(shè)計(jì)時(shí)的系統(tǒng)功能模塊圖,各個(gè)功能模塊的處理邏輯如下: 信息輸入模塊:打開職工信息文件;while (繼續(xù)輸入 ) 讀入職工信息;將讀入信息添加到職工信息文件中;提示是否繼續(xù)輸入;關(guān)閉職工信息文件; 信息瀏覽模塊:打開職工信息文件;while ( 不到文件結(jié)束 ) 從文件中順序讀出一個(gè)職工的信息;按指定格式輸出該職工的信息;關(guān)閉職工信息文件; 信息查詢模塊:while ( 仍繼續(xù)查詢 ) if( 按工資查詢 ) 讀入查詢的職工工資條件; 打開職工信息文件;while( 不到文件結(jié)束 ) 順序讀出一個(gè)職工的信息;if( 該職工信息的工資符合條件 ) 輸出該職工的信息;關(guān)閉職工信息文件;提示共有幾條符合條件的記錄; else if ( 按學(xué)歷查詢 ) 讀入學(xué)歷查詢的條件; 打開職工信息文件;while( 不到文件結(jié)束 ) 順序讀出一個(gè)職工的信息;if( 該職工信息的學(xué)歷符合條件 ) 輸出該職工的信息;關(guān)閉職工信息文件;提示符合條件的記錄數(shù); else 提示輸入不合適;提示是否繼續(xù)查詢; 信息修改模塊:while( 繼續(xù)修改 )從給出信息文件中所有的記錄情況;提示并讀入待修改的記錄的職工的職工號;打開職工信息文件;查找并讀出該職工的信息到一個(gè)中間變量中;提示并讀入要針對該職工的哪個(gè)屬性進(jìn)行修改;根據(jù)用戶的選擇提示并讀入所要修改屬性的新值;在該職工的中間變量中修改剛剛讀入的屬性值;提示是否確定要進(jìn)行修改;如果用戶確定則將中間變量重新寫回到原職工信息文件中;關(guān)閉職工信息文件; 信息刪除模塊:while( 繼續(xù)刪除 ) 顯示所有職工的信息; 提示并讀入待刪除的職工的職工號; 打開職工信息文件; 查找是否有符合條件的職工記錄; if( 有符合條件的記錄) 提示是否確認(rèn)該刪除操作;if (用戶確認(rèn)此操作) 創(chuàng)建一個(gè)新的臨時(shí)文件; 打開原信息文件; while( 原信息文件中記錄未讀完 ) 讀出原信息文件中的下一條記錄; if( 此條記錄不是待刪除記錄) 寫入臨時(shí)文件中去;關(guān)閉原信息文件;關(guān)閉臨時(shí)文件;讀方式打開臨時(shí)文件;寫方式重建與原信息文件同名的新信息文件;將臨時(shí)文件中的內(nèi)容寫入到新信息文件中去;關(guān)閉新信息文件;關(guān)閉臨時(shí)文件;刪除臨時(shí)文件;else 提示沒有符合條件的記錄存在; 菜單選擇模塊:給出信息提示;清屏;繪制菜單(包含輸入、顯示、查詢、修改、刪除、退出);提示菜單選擇并讀入到變量;根據(jù)讀入變量的值調(diào)用不同的模塊函數(shù)。6.系統(tǒng)測試7、參考文獻(xiàn)1 c/c+程序設(shè)計(jì)教程,王連相,中國鐵道出版社,20062 c語言程序設(shè)計(jì),譚浩強(qiáng),清華大學(xué)出版社,19993 . c程序設(shè)計(jì)題解與上機(jī)指導(dǎo),譚浩強(qiáng),清華大學(xué)出版社,19994. c/c+程序設(shè)計(jì)上機(jī)指導(dǎo)與測試,王連相,中國鐵道出版社,20065 . c語言函數(shù)手冊,機(jī)械工業(yè)出版社,19996 . c語言的實(shí)際應(yīng)用,安徽科學(xué)技術(shù)出版社,20008、課程設(shè)計(jì)總結(jié)在這兩周的計(jì)算機(jī)課程設(shè)計(jì)中,我們組的課程設(shè)計(jì)題目是:職工信息管理系統(tǒng)。即是以某企業(yè)職工信息管理業(yè)務(wù)為背景,設(shè)計(jì)開發(fā)一套“職工信息管理系統(tǒng)”軟件。一開始,接到這個(gè)題目,我們對“職工信息管理”,這個(gè)概念不是很了解,所以在機(jī)房上機(jī)時(shí),我們查閱了許多資料,了解到即是對職工的工號,姓名,年齡,學(xué)歷等復(fù)雜多樣的信息,能夠較清晰,快捷而又系統(tǒng)方便的現(xiàn)代化管理。弄清了這個(gè)基本概念以后,我們又詳細(xì)理解了老師所講的設(shè)計(jì)要求和注意事項(xiàng),開始集中討論分析問題,大致確定了總體的設(shè)計(jì)思路,初步提出問題的解決方案,以及軟件系統(tǒng)的體系結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方案,接下來我們就著手編程。在編程過程中,我們先是根據(jù)系統(tǒng)所要求,找出所需要的我們在c語言課程中所學(xué)的函數(shù),結(jié)合實(shí)際背景,依次編寫了主函數(shù)以及各個(gè)模塊所要的子函數(shù)。編完程序,我們在機(jī)房進(jìn)行了一次又一次的調(diào)試,找出了其中的錯(cuò)誤,一一糾正,并且修改了其中不太完善的部分,力求做到實(shí)用并且精確。在寫設(shè)計(jì)說明書的時(shí)候, 由于之前沒有寫過類似的文章,所以對摘要、前言、關(guān)鍵詞等概念比較模糊,經(jīng)過查資料和請教同學(xué),我們弄清楚了這些概念并且很認(rèn)真地完成了設(shè)計(jì)說明書的書寫。通過兩周的課設(shè),我們對c語言有了更深的認(rèn)識,同時(shí)認(rèn)識到了團(tuán)隊(duì)合作的重要性。在老師和同學(xué)的幫助下,我們在課設(shè)中學(xué)到了許多知識,提高了自己的解決實(shí)際問題的能力。附錄:源代碼#include #include #include #includetypedef struct Empk int EmpNum; / 職工編號 char EmpName12; / 姓名 int Sex; / 性別 1- 女 2- 男char Position12; / 職務(wù)char Address12; / 住址 int Tell; /電話 int Day; /出生年月int Cult; /學(xué)歷 1-初中 2-高中 3-大學(xué)Emp;Emp emp100;Emp s1;void open()int i; FILE *fp;if(fp=fopen(d:bkdat,rb+)=NULL)printf(can not do it!n);exit(0); for(i=0;i100;i+) if(fread(&empi,sizeof(Emp),1,fp)=EOF)printf(輸出失敗n); exit(0); fclose(fp);void close() int i; FILE *fp;if(fp=fopen(d:bkdat,wb+)=NULL)printf(can not do it!n);exit(0);for(i=0;i100;i+)fwrite(&empi,sizeof(Emp),1,fp); fclose(fp);void inputEmpInfo()int i,k;void open();for(i=0;i100;i+)printf(請輸入職工編號:);scanf(%d, &empi.EmpNum);printf(n請輸入姓名:);scanf(%s, empi.EmpName);printf(n請輸入性別 1- 女 2- 男:);scanf(%d, &empi.Sex);printf(n請輸入職務(wù):);scanf(%s, empi.Position);printf(n請輸入住址:);scanf(%s, empi.Address);printf(n請輸入電話:);scanf(%d, &empi.Tell);printf(n請輸入出生年月:);scanf(%d, &empi.Day);printf(n請輸入學(xué)歷 1-初中 2-高中 3-大學(xué):);scanf(%d, &empi.Cult);printf(繼續(xù)?(1.y 2.n));scanf(%d,&k);if(k=2) break;close();void add()int i=0;void open();while(empi.EmpNum!=0) i+;printf(請輸入職工編號:);scanf(%d, &empi.EmpNum);printf(n請輸入姓名:);scanf(%s, empi.EmpName);printf(n請輸入性別 1- 女 2- 男:);scanf(%d, &empi.Sex);printf(n請輸入職務(wù):);scanf(%s, empi.Position);printf(n請輸入住址:);scanf(%s, empi.Address);printf(n請輸入電話:);scanf(%d, &empi.Tell);printf(n請輸入出生年月:);scanf(%d, &empi.Day);printf(n請輸入學(xué)歷 1-初中 2-高中 3-大學(xué):);scanf(%d, &empi.Cult);close();void show() int j; for(j=0;empj.EmpNum!=0;j+)printf(n-職工信息-n);printf(職工編號:%dn,empj.EmpNum);printf(姓名:%s, empj.EmpName);printf(n性別 1- 女 2- 男:%d, empj.Sex);printf(n職務(wù):%s, empj.Position);printf(n住址:%s, empj.Address);printf(n電話:%d, empj.Tell);printf(n出生年月:%d, empj.Day);printf(n學(xué)歷 1-初中 2-高中 3-大學(xué) :%d, empj.Cult);void deleteEmp()int j,k,m=1,d,i=0;open();printf(請輸入要刪除的職工編號 :n);scanf(%d,&d);for(j=0;empj.EmpNum!=0;j+)if(empj.EmpNum=d)s0=empj;for(k=j;empj.EmpNum!=0;k+)empk=empk+1;i+;printf(%d,i);/*if(i=0) printf(職工管理系統(tǒng)中沒有職工記錄!n);return;*/close();printf(刪除成功n);void findByEmpName()int j,i,k=0; FILE *fp; void open();printf(請輸入要的職工編號:n);scanf(%d,&i);for(j=0;empj.EmpNum!=0;j+)if(empj.EmpNum=i)printf(n-職工信息-n);printf(職工編號:%dn,empj.EmpNum);printf(姓名:%s, empj.EmpName);printf(n性別 1- 女 2- 男:%d, empj.Sex);printf(n職務(wù):%s, empj.Position);printf(n住址:%s, empj.Address);printf(n電話:%d, empj.Tell);printf(n出生年月:%d, empj.Day);printf(n學(xué)歷 1-初中 2-高中 3-大學(xué) :%d, empj.Cult);k+;if(k=0)printf(沒有此職工記錄!);close(); void tong()int t1=0,t2=0,t3=0,j;FILE *fp;Emp *p;p=(Emp *)malloc(sizeof(Emp);if(fp=fopen(d:bkdat,rb+)=NULL)printf(can not do it!n);exit(0);for(j=0;jEmpNum=0)break;if(1=p-Cult)t1+;if(2=p-Cult)t2+;if(3=p-Cult)t3+;printf(初中,高中,大學(xué) 的人數(shù)分別

溫馨提示

  • 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

提交評論