版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、簡單的員工管理系統(tǒng)1、問題描述:對單位的職工進(jìn)行管理,包括插入、刪除、查找、排序等功能。2、要求:職工對象包括姓名(字符串)、性別(字符)、出生年月(數(shù)字)、工作年月(數(shù)字)、學(xué)歷(字符串)、職務(wù)(字符串)、住址(字符串)、電話(字符串)等信息。(1)新增一名職工:將新增職工對象按姓名以字典方式職工管理文件中。(2)刪除一名職工:從職工管理文件中刪除一名職工對象。(3)查詢:從職工管理文件中查詢符合某些條件的職工。(4)修改:檢索某個(gè)職工對象,對其某些屬性進(jìn)行修改。(5)排序:按某種需要對職工對象文件進(jìn)行排序。3、實(shí)現(xiàn)功能(1)由鍵盤輸入職工對象,以文件方式保存。程序執(zhí)行時(shí)先將文件讀入內(nèi)存。(
2、2)對職工對象中的“姓名”按字典順序進(jìn)行排序。(3)對排序后的職工對象進(jìn)行增、刪、查詢、修改、排序等操作。4、代碼:#include<stdlib.h>#include<stdio.h>#include<malloc.h>#include<string.h>typedefstructworkerintid;charname20;charsex3;intage;charedu50;intwages;charadr255;charphone13;WORKER,*PWORKER;/typedefstructWORKER*PWORKER;typedefs
3、tructlinkWORKERw;structlink*next;LINK,*PLINK;/typedefstructLINK*PLINK;/*創(chuàng)建職工信息鏈表*/PLINKcreate()PLINKp=(PLINK)malloc(sizeof(LINK);if(NULL!=p)p->next=NULL;returnp;printf("內(nèi)存不足!n");returnNULL;/*顯示程序界面文字*/voidmessage()精選范本,供參考!printf("tt*nn");printf("tt>>>>>>
4、;>>>>>>>>歡迎進(jìn)入職工管理系統(tǒng)<<<<<<<<<<<<<<nn");printf("tt*ChooseFunction*nn");printf("tt*幫助請輸入:0*nn");printf("tt*錄入職工信息請輸入:1*nn");printf("tt*瀏覽職工信息請輸入:2*nn");printf("tt*查詢職工信息請輸入:3*nn");pr
5、intf("tt*刪除職工信息請輸入:4*nn");printf("tt*修改職工信息請輸入:5*nn");printf("tt*清屏請輸入:6*nn");printf("tt*退出請輸入:-1*nn");printf("tt*nn");printf("tt* printf("tt* *nn");*nn");*voidfind_sr(PLINKplink,char*str)for(PLINKcurr=plink->next;curr!=NULL;cu
6、rr=curr->next)if(strcmp(curr->,str)=0)printf("職工工號:%dn",curr->w.id);printf("職工姓名:printf("職工性別:printf("職工年齡:printf("職工學(xué)歷:printf("職工工資:printf("職工住址:printf("職工電話:%sn",curr->);%sn",curr->w.sex);%dn",curr->w.age);%sn
7、",curr->);%dn",curr->w.wages);%sn",curr->w.adr);%sn",curr->w.phone);voidfindid(PLINKplink,intid)for(PLINKcurr=plink->next;curr!=NULL;curr=curr->next)if(curr->w.id=id)printf("職工工號:%dn",curr->w.id);printf("職工姓名:printf("職工性別:printf(&q
8、uot;職工年齡:printf("職工學(xué)歷:printf("職工工資:printf("職工住址:printf("職工電話:%sn",curr->);%sn",curr->w.sex);%dn",curr->w.age);%sn",curr->);%dn",curr->w.wages);%sn",curr->w.adr);%sn",curr->w.phone);voidshow(PLINKplink)for(PLINKcur
9、r=plink->next;curr!=NULL;curr=curr->next)printf("職工工號:%dn",curr->w.id);printf("職工姓名:%sn",curr->);%sn",curr->w.sex);%dn",curr->w.age);%sn",curr->);%dn",curr->w.wages);%sn",curr->w.adr);%sn",curr->w.phone);print
10、f("職工性別:printf("職工年齡:printf("職工學(xué)歷:printf("職工工資:printf("職工住址:printf("職工電話:/*錄入職工信息*/intadd(PLINKp)PLINKh=NULL;PLINKq=(PLINK)malloc(sizeof(LINK);if(NULL=q)printf("錄入失敗提示:內(nèi)存不足!n");return-1;printf("請輸入職工號(數(shù)字):");scanf("%d",&q->w.id);h=p-
11、>next;while(h)if(h->w.id=q->w.id)free(q);!n");printf("錄入失敗提示:此職工號已經(jīng)存在return-1;h=h->next;printf("請輸入職工姓名(文字):");scanf("%s",&q->);printf("請輸入職工性別(文字):");scanf("%s",&q->w.sex);printf("請輸入職工年齡(數(shù)字):");scanf("
12、%d",&q->w.age);printf("請輸入職工學(xué)歷(文字):");scanf("%s",&q->);printf("請輸入職工工資(數(shù)字):");scanf("%d",&q->w.wages);printf("請輸入職工住址(文字):");scanf("%s",&q->w.adr);printf("請輸入職工電話(數(shù)字):");scanf("%s",&
13、amp;q->w.phone);q->next=p->next;p->next=q;printf(".A_A.錄入成功!.A_A.n");return-1;/*按姓名查詢*/PLINKfindname(PLINKp,char*name)message();printf("按姓名查詢n");printf("職工號t姓名t性別t年齡t學(xué)歷t工資t住址t電話n");while(NULL!=p->next)if(0=strcmp(p->next->,name)printf("%d
14、t%st%st%dt%st%dt%st%sn",p->next->w.id,p->next->,p->next->w.sex,p->next->w.adr,p->next->,p->next->w.wages,p->next->w.adr,p->next->w.phone);returnp;p=p->next;printf(",_A.查詢結(jié)束!.A_A.n");returnNULL;/*按職工號刪除職工信息*/intdel(PLINKp,in
15、tid)message();printf("按職工號刪除職工信息n");while(NULL!=p->next)if(p->next->w.id=id)PLINKq=p->next;p->next=p->next->next;free(q);printf(".A_A.刪除成功!.A_A.n");return1;p=p->next;printf("沒有你輸入的職工號!n");return-1;/*程序結(jié)束釋放內(nèi)存*/voidrelease(PLINKp)PLINKq;while(NULL!
16、=p->next)q=p;p=p->next;free(q);free(p);/*查詢調(diào)用*/voidsearch()intid;charname20;charstr20;PLINKpworker;intl;printf("tttt*姓名查找按:1*n");printf("tttt*學(xué)歷查找按:2*n");printf("tttt*職工號查按:3*n");scanf("%d",&l);if(l>0&&l<4)switch(l)case1:printf("請輸
17、入要查詢的職工姓名:");scanf("%s",name);findname(pworker,name);break;case2:printf("請輸入要查詢的職工學(xué)歷:");scanf("%s",str);find_sr(pworker,str);break;case3:printf("請輸入要查詢的職工號:");scanf("%d",&id);findid(pworker,id);break;printf("nn選擇完畢!");elseprintf(&q
18、uot;tttt輸入有誤!");/*修改職工信息*/intmodify(PLINKp)intid;PLINKq;PLINKh=NULL;printf("請輸入職工號(數(shù)字):");scanf("%d",&id);h=p->next;while(h)if(h->w.id=id)break;h=h->next;if(h=NULL)n");printf("找不到此職工,請重試return-1;printf("請輸入職工姓名(文字):");scanf("%s",&am
19、p;h->);printf("請輸入職工性別(文字):");scanf("%s",&h->w.sex);printf("請輸入職工年齡(數(shù)字):");scanf("%d",&h->w.age);printf("請輸入職工學(xué)歷(文字):");scanf("%s",&h->);printf("請輸入職工工資(數(shù)字):");scanf("%d",&h->w.w
20、ages);printf("請輸入職工住址(文字):");scanf("%s",&h->w.adr);printf("請輸入職工電話(數(shù)字):");scanf("%s",&h->w.phone);q->next=p->next;p->next=q;printf("A_A.修改成功!.A_An");return-1;intmain()intcmd=0;intid;charname20;charstr20;PLINKpworker;if(!(pworke
21、r=create()exit(0);while(cmd!=-1)switch(cmd)case0:message();break;case 1: add(pworker);break;case 2: show(pworker);break;case 3: search();break;case 4: printf("請輸入要?jiǎng)h除的職工號:");scanf("%d",&id);del(pworker,id);break;case 5: modify(pworker);break;case 6: message();break;printf("請輸入操作命令數(shù)字:n");scanf("%d",&cmd);printf("tt>>>>>>>>>>>>>>>>>>>>謝謝使用<<<<<<<<<<<<
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鐵嶺衛(wèi)生職業(yè)學(xué)院《民間建筑傳承與創(chuàng)新設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 天津中醫(yī)藥大學(xué)《生物無機(jī)化學(xué)與技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024-2025學(xué)年高中數(shù)學(xué)第三章三角恒等變換3.1.2.2兩角和與差的正切公式課時(shí)作業(yè)含解析新人教A版必修4
- 2024秋高中英語單元質(zhì)量評估五含解析新人教版選修6
- 2024-2025學(xué)年高中歷史課時(shí)分層作業(yè)25經(jīng)濟(jì)全球化的趨勢含解析岳麓版必修2
- 死亡體驗(yàn)課程設(shè)計(jì)
- 最小費(fèi)用最大流課程設(shè)計(jì)
- 淘寶買課程設(shè)計(jì)能退嗎
- 抗生素類藥物相關(guān)行業(yè)投資方案
- 有特色的課程設(shè)計(jì)評語
- T∕CAAA 005-2018 青貯飼料 全株玉米
- s鐵路預(yù)應(yīng)力混凝土連續(xù)梁(鋼構(gòu))懸臂澆筑施工技術(shù)指南
- 撥叉831006設(shè)計(jì)說明書
- 程序語言課程設(shè)計(jì)任意兩個(gè)高次多項(xiàng)式的加法和乘法運(yùn)算
- WLANAP日常操作維護(hù)規(guī)范
- GE公司燃?xì)廨啓C(jī)組支持軸承結(jié)構(gòu)及性能分析
- 石油鉆井八大系統(tǒng)ppt課件
- 北師大版二年級數(shù)學(xué)上冊期末考試復(fù)習(xí)計(jì)劃
- 人教PEP版六年級英語上冊《Unit4_B_Let’s_learn教學(xué)設(shè)計(jì)》
- 農(nóng)村供水工程設(shè)計(jì)技術(shù)要點(diǎn)
- 收貨回執(zhí)單1頁
評論
0/150
提交評論