




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、江 西 農(nóng) 業(yè) 大 學(xué) 職工檔案管理系統(tǒng)實(shí)驗(yàn)報(bào)告一、 實(shí)驗(yàn)?zāi)康?、加深對(duì)講授內(nèi)容的理解2、通過設(shè)計(jì),熟練上機(jī)調(diào)試程序3、C語言綜合程序設(shè)計(jì)能力的提高二、實(shí)驗(yàn)題目與相關(guān)說明題目:職工檔案管理系統(tǒng)設(shè)計(jì)功能:職工檔案管理系統(tǒng)設(shè)計(jì),每個(gè)職工是一條記錄,包括編號(hào),姓名,性別,出生年月,所在部門,職稱,工資級(jí)別、 等。系統(tǒng)可實(shí)現(xiàn)以下功能:1、輸入功能:輸入每一位職工記錄,將其信息存入文件中。2、顯示功能:完成全部職工記錄的顯示。3、查找功能:完成按編號(hào)或姓名查找職工的相關(guān)記錄,并顯示。分步實(shí)施:1、初步完成總體設(shè)計(jì),搭好框架,確定人機(jī)對(duì)話的界面,確定函數(shù)個(gè)數(shù)。2、建立一個(gè)文件,將每位職工的信息寫入文件中并
2、能顯示于屏幕上。3、完成上述查找(編號(hào),姓名,性別等)、修改等功能。4、進(jìn)一步要求,修改記錄設(shè)置密碼操作。要求:1、用C語言實(shí)現(xiàn)程序設(shè)計(jì);2、利用結(jié)構(gòu)體數(shù)組實(shí)現(xiàn)職工信息的數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì);3、系統(tǒng)的各個(gè)功能模塊要求用函數(shù)的形式實(shí)現(xiàn);4、界面友好(良好的人機(jī)交互),程序加必要的注釋。三、程序功能簡(jiǎn)介該系統(tǒng)主要用于管理職工的個(gè)人信息,它具有存儲(chǔ)、添加、查詢、修改、刪除、瀏覽等功能。其中修改信息需要權(quán)限密碼,在程序中我已將初始密碼設(shè)為“1828”。但我只是完成了初始密碼的設(shè)置,修改密碼及其它有關(guān)密碼的程序設(shè)計(jì)還沒有完成。另外,我將查找功能分為“姓名查找”和“工號(hào)查找”,這樣可使得查找的成功率增加。 下面
3、,就給出該系統(tǒng)源代碼。四、程序源碼(帶注釋)#include<stdio.h>#include<stdlib.h>struct staffchar name8;char num10;char sex10;char bir15;char dep10;char pos10;char wage10;char tel15;char addr50;worker; /*定義一個(gè)結(jié)構(gòu)體*/char filename20="123456" /*文件名*/FILE *fp; void creat(); /*定義一個(gè)創(chuàng)建函數(shù)*/void browse(); /*定義一個(gè)
4、輸出信息的函數(shù)*/void search1(); /*定義一個(gè)查詢的函數(shù)*/void search2(); /*定義一個(gè)查詢的函數(shù)*/ void append(); /*定義一個(gè)添加函數(shù)*/void modify(); /*定義一個(gè)修改函數(shù)*/void delete(); /*定義一個(gè)刪除函數(shù)*/void main() /*主函數(shù)*/int m;system("color 0a");a:while(1)printf(" nt* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *n"
5、;);printf(" t*t * 職工檔案管理系統(tǒng) * *n");printf(" t*t * * *n");printf(" t*t * * * * * * * * * * * * * * * * * * * * * *n");printf(" t*t * 1.存入檔案 * *n");printf(" t*t * * *n");printf(" t*t * 2.添加信息 * *n");printf(" t*t * * *n");printf("
6、; t*t * 3.查詢職工信息(姓名) * *n");printf(" t*t * * *n");printf(" t*t * 4. 查詢職工信息(工號(hào)) * *n");printf(" t*t * * *n");printf(" t*t * 5.修改信息(需要權(quán)限密碼) * *n");printf(" t*t * * *n");printf(" t*t * 6.刪除信息 * *n");printf(" t*t * * *n");printf(
7、" t*t * 7.瀏覽信息 * *n");printf(" t*t * * *n");printf(" t*t * 8.退出系統(tǒng) * *n");printf(" t* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *n"); /*輸出提示信息*/printf("選擇功能(1-8): bb"); scanf("%d",&m);if(m>=1 && m<=8 &am
8、p;& m!=5)switch(m)case 1: creat();break;case 2: append();break;case 3: search1();break;case 4: search2();break;case 6: delete();break;case 7: browse();break;case 8: exit();printf("nn操作完畢,請(qǐng)?jiān)俅芜x擇!");goto a; if(m=5) int i; printf("請(qǐng)輸入密碼 (初始密碼為1828):") ; scanf("%d",&
9、i); while(i != 1828) /初始密碼為1828 printf("密碼錯(cuò)誤,請(qǐng)重輸 : ") ; scanf("%d",&i); printf("Congratulations!"); printf("n") ;modify( );printf("nn操作完畢,請(qǐng)?jiān)俅芜x擇!");elseprintf("nn選擇錯(cuò)誤,請(qǐng)?jiān)俅芜x擇!");void creat()struct staff one;if(fp=fopen(filename,"w&quo
10、t;)=NULL) /*打開文件,實(shí)現(xiàn)向文件輸入數(shù)據(jù)*/printf("n不能建立!");exit();fprintf(fp,"%-10s%-10s%-10s%-18s%-10sn%-10s%-10s%-18s%-15sn","姓名","工號(hào)","性別","出生年月","所在部門","職位","工資"," 號(hào)碼","住址");printf("n請(qǐng)輸入職工信息(以0結(jié)束
11、)n");printf("姓名:n");scanf("%s",);while(strcmp(,"0")printf("工號(hào):n");scanf("%s",one.num);printf("性別:n");scanf("%s",one.sex);printf("出生年月:n");scanf("%s",one.bir);printf("所在部門:n");scan
12、f("%s",one.dep);printf("職位:n");scanf("%s",one.pos);printf("工資:n");scanf("%s",one.wage);printf(" :n");scanf("%s",one.tel);printf("住址:n");scanf("%s",one.addr); /*輸出職工的相關(guān)信息*/fprintf(fp,"%-10s%-10s%-10s%-18s%-
13、10sn%-10s%-10s%-18s%-15sn",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);printf("姓名:n");scanf("%s",);fclose(fp); /*關(guān)閉文件*/void browse() /*輸出函數(shù)*/struct staff one;if(fp=fopen(filename,"r")=NULL) /*打開文件*/printf("n不能打開該文件!"
14、;);exit();printf("nn%20sn","ttt職工個(gè)人信息");/*向文件輸入數(shù)據(jù)*/while(!feof(fp)fscanf(fp,"%s%s%s%s%s%s%s%s%sn",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);printf("%-10s%-10s%-10s%-20s%-10sn%-10s%-10s%-20s%-15sn",,one.num,one.sex,one.
15、bir,one.dep,one.pos,one.wage,one.tel,one.addr);fclose(fp);/*關(guān)閉文件*/void append() /*添加函數(shù)*/struct staff one;if(fp=fopen(filename,"a")=NULL) /*打開文件*/printf("n不能打開該文件!");exit();printf("n請(qǐng)輸入要添加的職工信息,各項(xiàng)之間以回車隔開.n(姓名 工號(hào) 性別 出生年月 所在部門 職位 工資 地址)n");/*向文件中輸入數(shù)據(jù)*/scanf("%s%s%s%s%
16、s%s%s%s%s",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);fprintf(fp,"%-10s%-10s%-10s%-20s%-10sn%-10s%-10s%-20s%-15sn",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);fclose(fp); /*關(guān)閉文件*/void search1() /*查詢函數(shù)*/int k=0;char namek
17、ey8;struct staff one;printf("n請(qǐng)輸入您要查找的職工姓名:");scanf("%s",namekey);if(fp=fopen(filename,"rb")=NULL) /*打開文件*/printf("n不能打開文件!");exit();while(!feof(fp)fscanf(fp,"%s%s%s%s%s%s%s%s%sn",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.
18、addr);if(!strcmp(namekey,)printf("nn已查到,記錄為:");printf("n%-10s%-10s%-10s%-20s%-10sn%-10s%-10s%-20s%-15sn",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);k=1;if(!k)printf("nn對(duì)不起,查無此人!。");fclose(fp);void search2() /*查詢函數(shù)*/int k=0;char n
19、umkey8;struct staff one;printf("n請(qǐng)輸入您要查找的職工姓工號(hào):");scanf("%s",numkey);if(fp=fopen(filename,"rb")=NULL) /*打開文件*/printf("n不能打開文件!");exit();while(!feof(fp)fscanf(fp,"%s%s%s%s%s%s%s%s%sn",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,o
20、ne.addr);if(!strcmp(numkey,one.num)printf("nn已查到,記錄為:");printf("n%-10s%-10s%-10s%-20s%-10sn%-10s%-10s%-20s%-15sn",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);k=1;if(!k)printf("nn對(duì)不起,查無此人!。");fclose(fp);void modify() /*修改函數(shù)*/int m,k=0;long
21、 offset;char namekey8;struct staff one;printf("n請(qǐng)輸入您要修改的職工的姓名:");scanf("%s",namekey);if(fp=fopen(filename,"r+")=NULL) /*打開文件*/printf("n不能打開該文件!");exit();while(!feof(fp)offset=ftell(fp); /*查找信息*/fscanf(fp,"%s%s%s%s%s%s%s%s%sn",,one.num,one.sex
22、,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);if(!strcmp(namekey,)k=1;break;if(k)printf("n已查到,記錄為:");printf("n%-10s%-10s%-10s%-20s%-10sn%-10s%-10s%-20s%-15sn",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);printf("n請(qǐng)輸入信息,各項(xiàng)之間以回車隔開.n
23、(姓名、工號(hào)、性別、出生年月、所在部門、職位、工資、 、地址):n");scanf("%s%s%s%s%s%s%s%s%s",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);fseek(fp,offset,SEEK_SET);printf("%ld",ftell(fp);fprintf(fp,"%-10s%-10s%-10s%-20s%-10sn%-10s%-10s%-20s%-15sn",,one.num
24、,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);elseprintf("n對(duì)不起,查無此人,無法進(jìn)行修改。");fclose(fp); /*文件關(guān)閉*/void delete() /*刪除函數(shù)*/int m,k=0,flag;long offset1,offset2;char namekey8, valid4;struct staff one;printf("n請(qǐng)輸入您要?jiǎng)h除的職工姓名:");scanf("%s",namekey);if(fp=fopen(file
25、name,"r+")=NULL) /*打開文件*/printf("n不能打開該文件!");exit();while(!feof(fp)offset1=ftell(fp); /*查詢文件中相關(guān)的信息*/fscanf(fp,"%s%s%s%s%s%s%s%s%sn",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);if(!strcmp(namekey,)k=1;break;if(k)printf("n已查到,記
26、錄為");printf("n%-10s%-10s%-10s%-20s%-10sn%-10s%-10s%-20s%-15sn",,one.num,one.sex,one.bir,one.dep,one.pos,one.wage,one.tel,one.addr);printf("n確實(shí)要?jiǎng)h除,按1;不刪除,按0:");scanf("%d",&m);if(m)fseek(fp,offset1,SEEK_SET);fprintf(fp,"%-10s%-10s%-10s%-20s%-10sn%-10
27、s%-10s%-20s%-15sn","","","","","","","","","");elseprintf("n對(duì)不起,查無此人。");fclose(fp); /*關(guān)閉文件*/五、程序測(cè)試說明:檢測(cè)程序是否運(yùn)行正常,并瀏覽系統(tǒng)界面。六、系統(tǒng)各功能測(cè)試1、存入檔案說明:輸入“甲、1、男、1970.1.23、宣傳部、部長(zhǎng)、1600元/月江西省南昌市”、“乙、
28、2、女、1960.2.22、財(cái)務(wù)部、部長(zhǎng)、1600元/月。注:輸入職工信息時(shí),以輸入姓名“0”結(jié)束。2、添加信息說明:輸入“丙、3、男、1973.3.13、科技部、部長(zhǎng)、2300元/月江西省南昌市”。3、查詢職工信息(姓名)說明:輸入要查找的職工姓名為“甲”。4、查詢職工信息(工號(hào))說明:輸入要查找的職工工號(hào)為“1”。5、修改信息(需要權(quán)限密碼)說明:將甲信息中的 號(hào)碼修改為。6、刪除信息說明:刪除乙的個(gè)人信息。7、瀏覽信息8、退出系統(tǒng)說明:若所有操作完成,可在主菜單中輸入“8”退出系統(tǒng)。七、實(shí)驗(yàn)心得 通過本次C語言
29、上機(jī)實(shí)驗(yàn),我對(duì)這個(gè)介于人類與非人類之間的計(jì)算機(jī)編程語言有了一定的體驗(yàn)。其間開心過、郁悶過、無奈過、彷徨過隨著實(shí)驗(yàn)的勝利成功與實(shí)驗(yàn)報(bào)告的順利完成,有點(diǎn)微微的自豪感使人難忘。感謝鄧松老師的高標(biāo)準(zhǔn)、嚴(yán)要求,感謝實(shí)驗(yàn)課上鄧?yán)蠋煹哪托闹更c(diǎn),也感謝我在實(shí)驗(yàn)中經(jīng)歷過的點(diǎn)點(diǎn)滴滴伴隨著學(xué)習(xí)的深入,我發(fā)現(xiàn)高深的東西還有很多很多,等待著我自己去挖掘。對(duì)C語言,我會(huì)更加努力。 小學(xué)教師培養(yǎng)工作總結(jié) 一年來,我校在上級(jí)部門的指導(dǎo)下,積極開展教師教育教學(xué)能力的提高培訓(xùn)工作,有效提高了教師的各種教育教學(xué)實(shí)際能力,為我校取得良好的辦學(xué)成效起了重要的作用?;仡櫸覀兊墓ぷ鳎饕邢旅鎺c(diǎn)做法和體會(huì):一、制定計(jì)劃,常抓不懈這一學(xué)年雖然新來教師不多只有湯毛毛一位老師,但是我們還是很重視對(duì)她的成長(zhǎng)。為了使她能盡快進(jìn)入教師角色,更好地促進(jìn)她的專業(yè)成長(zhǎng),我校采取了以下措施:1、以老帶新,促其成長(zhǎng)。每一位新教師到我校后,學(xué)校都會(huì)指派一位有經(jīng)驗(yàn)的老教師來帶,目的是通過一對(duì)一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小兒紅細(xì)胞葡萄糖-6-磷酸脫氫酶缺乏癥的臨床護(hù)理
- 眼眶爆裂性骨折的臨床護(hù)理
- 【房地產(chǎn)】山水芙蓉國(guó)際新城-主題宣傳推廣創(chuàng)意案
- 誘導(dǎo)透析治療
- 護(hù)理美學(xué)美育
- 肝膽護(hù)理年終總結(jié)
- 新質(zhì)生產(chǎn)力會(huì)議
- 原發(fā)性十二指腸惡性淋巴瘤的臨床護(hù)理
- 感染科院感管理規(guī)范實(shí)施要點(diǎn)
- 2025屆河北省保定市蓮池區(qū)十三中學(xué)七下數(shù)學(xué)期末質(zhì)量檢測(cè)模擬試題含解析
- GB/T 14601-2025電子特氣氨
- 湖北省武漢第二中學(xué)2025屆高三3月高考模擬考試數(shù)學(xué)試題試卷
- 培訓(xùn)機(jī)構(gòu)兼職老師聘用協(xié)議書范本
- 透析患者貧血的護(hù)理查房
- 2025年上半年生態(tài)環(huán)境部信息中心招聘工作人員22人重點(diǎn)基礎(chǔ)提升(共500題)附帶答案詳解
- 艾灸師(高級(jí))職業(yè)技能競(jìng)賽考試題庫
- (高清版)DB11∕T1008-2024建筑光伏系統(tǒng)安裝及驗(yàn)收規(guī)程
- 天然氣泄露調(diào)查報(bào)告范文
- 《心臟驟停的急救護(hù)理》課件
- 做最勇敢的自己
- 2024年歷年江西農(nóng)商銀行員工招聘筆試真題
評(píng)論
0/150
提交評(píng)論