員工管理數(shù)據(jù)結(jié)構(gòu)員工管理系統(tǒng)_第1頁
員工管理數(shù)據(jù)結(jié)構(gòu)員工管理系統(tǒng)_第2頁
員工管理數(shù)據(jù)結(jié)構(gòu)員工管理系統(tǒng)_第3頁
員工管理數(shù)據(jù)結(jié)構(gòu)員工管理系統(tǒng)_第4頁
員工管理數(shù)據(jù)結(jié)構(gòu)員工管理系統(tǒng)_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、(員多年的企業(yè)咨詢網(wǎng)問經(jīng)驗(yàn).壹、設(shè)計(jì)題目問題描述每個(gè)員工的信息包括:編號、姓名、性別、出生年月、學(xué)歷職務(wù)、電話、住址等。系統(tǒng)能夠完成員工信息的查詢、更新、插入、刪除、排序等功能。基本要求(1)排序:按不同關(guān)鍵字,對所有員工的信息進(jìn)行排序。(2)(2)查詢:按特定條件查找員工。(3)(3)更新:按編號對某個(gè)員工的某項(xiàng)信息進(jìn)行修改。(4)(4)插入:加入新員工的信息。(5)(5)刪除:按編號刪除已離職的員工的信息。二、運(yùn)行環(huán)境MrosoftVisualC+6.0三、算法設(shè)計(jì)的思想構(gòu)造鏈表存儲用戶記錄。四、算法的流程圖五、算法設(shè)計(jì)分析(1)構(gòu)造順序表存儲用戶記錄。(2)利用冒泡法對用戶名和號碼分別進(jìn)

2、行排序(3)利用直接查找法進(jìn)行查找六、源代碼#include"stdio.h"#include"stdlib.h"#include"string.h"/定義節(jié)點(diǎn)類型typedefstructnodecharid10;charname10;charsex10;charbirth10;charxueli10;charzhiwu10;charphone10;charaddress10;structnode*next;node,*linklist;/頭插法生成單鏈表intcreatlist(linklist&L)linklistp;p

3、=(linklist)malloc(sizeof(node);if(!p)return(0);elseprintf("請輸入員工編號n");scanf("%s",p->id);printf("請輸入員工姓名n");scanf("%s",p->name);printf("請輸入員工性別n");scanf("%s",p->sex);printf("請輸入員工生日n");scanf("%s",p->birth);pri

4、ntf("請輸入員工學(xué)歷n");scanf("%s",p->xueli);printf("請輸入員工職務(wù)n");scanf("%s",p->zhiwu);printf("請輸入員工電話n");scanf("%s",p->phone);printf("請輸入員工地址n");scanf("%s",p->address);p->next=L->next;L->next=p;/初始化單鏈表intinit

5、list(linklist&L)L=(linklist)malloc(sizeof(node);if(!L)return(0);L->next=NULL;return1;/顯示所有員工信息voiddisplay(linklist&L)linklistp;for(p=L->next;p;p=p->next)printf("編號%s",p->id);printf("姓名%s",p->name);printf("性別%s",p->sex);printf("生日%s",p

6、->birth);printf("學(xué)歷%s",p->xueli);printf("職務(wù)%s",p->zhiwu);printf("電話%s",p->phone);printf("地址%sn",p->address);/按id刪除intdel(linklist&L,charid10)node*p;node*r;p=L->next;r=L;while(!(strcmp(p->id,id)=0)&&p)r=p;p=p->next;if(!p)prin

7、tf("n刪除位置不合理n");elser->next=p->next;free(p);printf("刪除成功n");return1;/查詢idintsearchid(linklist&L,charid10)node*p;p=L;while(p)if(strcmp(p->id,id)=0)printf("編號%s",p->id);printf("姓名%s",p->name);printf("性別%s",p->sex);printf("生日%

8、s",p->birth);printf("學(xué)歷%s",p->xueli);printf("職務(wù)%s",p->zhiwu);printf("電話%s",p->phone);printf("地址%sn",p->address);p=p->next;return1;/查詢姓名intsearchname(linklist&L,charname10)node*p;p=L;while(p)if(strcmp(p->name,name)=0)printf("編

9、號%s",p->id);printf("姓名%s",p->name);printf("性別%s",p->sex);printf("生日%s",p->birth);printf("學(xué)歷%s",p->xueli);printf("職務(wù)%s",p->zhiwu);printf("電話%s",p->phone);printf("地址%sn",p->address);p=p->next;return1;

10、/修改intxiugai(linklist&L,charid10)node*p;p=L;while(p)if(strcmp(p->id,id)=0)printf("請輸入員工編號n");scanf("%s",p->id);printf("請輸入員工姓名n");scanf("%s",p->name);printf("請輸入員工性別n");scanf("%s",p->sex);printf("請輸入員工生日n");scanf(&

11、quot;%s",p->birth);printf("請輸入員工學(xué)歷n");scanf("%s",p->xueli);printf("請輸入員工職務(wù)n");scanf("%s",p->zhiwu);printf("請輸入員工電話n");scanf("%s",p->phone);printf("請輸入員工地址n");scanf("%s",p->address);p=p->next;return

12、1;/排序voidSort(linklist&L)linklistLa;linklistp,q,m;La=(linklist)malloc(sizeof(node);La->next=NULL;while(L->next)for(q=L->next,p=L->next;p->next;p=p->next)if(strcmp(p->next->id,q->id)>0)m=p;q=p->next;if(q=L->next)L->next=L->next->next;elsem->next=q-&

13、gt;next;q->next=La->next;La->next=q;L=La;display(L);#include"stdio.h"#include"stdlib.h"#include"string.h"#include"head.h"/主函數(shù)voidmain()linklistL;inta;charm;charname10;charid10;initlist(L);inty;intx=1;while(x)printf("*n");printf("1添加員工信息

14、n");printf("2修改員工信息n");printf("3刪除員工信息n");printf("4查詢員工信息n");printf("5排序員工信息n");printf("6顯示所有員工信息n");printf("7退出n");printf("I*n");printf("請輸入代碼:");scanf("%d",&y);switch(y)case1:creatlist(L);doprintf(&q

15、uot;否繼續(xù)輸入?(y/n)");getchar();scanf("%c",&m);if(m='y')creatlist(L);while(m!='n');break;case2:printf("請輸入修改員工編號");getchar();scanf("%s",&id);xiugai(L,id);break;case3:printf("請輸入刪除員工編號");getchar();scanf("%s",&id);del(L,id)

16、;break;case4:printf("請輸入查詢方式(1按編號查詢,2按姓名查找)");scanf("%d",&a);if(a=1)printf("請輸入查詢員工編號n");scanf("%s",&id);searchid(L,id);if(a=2)printf("請輸入查詢員工姓名n");scanf("%s",&name);searchname(L,name);break;case5:Sort(L);break;case6:printf(&quo

17、t;所有員工信息如下所示n");display(L);break;case7:x=0;break;七、運(yùn)行結(jié)果主界面添加員工信息修改員工信息刪除員工信息查詢員工信息排序顯示八、收獲及體會(huì)實(shí)訓(xùn)期間,讓我學(xué)到了很多東西,不僅使我于理論上對軟件行業(yè)有了全新的認(rèn)識,于實(shí)踐能力上也得到了提高,真正地做到了學(xué)以致用,對我來說受益非淺。除此以外,我仍學(xué)會(huì)了如何更好地和別人溝通,如何更好地去陳述自己的觀點(diǎn),如何說服別人認(rèn)同自己的觀點(diǎn)。第壹次親身感受到理論和實(shí)際的相結(jié)合,讓我大開眼界。也是對以前所學(xué)知識的壹個(gè)初審吧!這次實(shí)訓(xùn)對于我以后學(xué)習(xí)、找工作也真是受益菲淺,于這短短的幾天中相信這些寶貴的經(jīng)驗(yàn)會(huì)成為

18、我今后成功的重要的基石。作為壹名大二的學(xué)生,經(jīng)過倆年的于校學(xué)習(xí),對程序設(shè)計(jì)有了理性的認(rèn)識和理解。于校期間,壹直忙于理論知識的學(xué)習(xí),沒有機(jī)會(huì)也沒有相應(yīng)的經(jīng)驗(yàn)來參和項(xiàng)目的開發(fā)。所以于實(shí)訓(xùn)之前,軟件項(xiàng)目開發(fā)對我來說是比較抽象的,壹個(gè)完整的項(xiàng)目要怎么來分工以及完成該項(xiàng)目所要的基本步驟也不明確。而經(jīng)過這次實(shí)訓(xùn),讓我明白壹個(gè)完整項(xiàng)目的開發(fā)它所要經(jīng)歷的階段包括:規(guī)劃和用例說明、項(xiàng)目結(jié)構(gòu)、業(yè)務(wù)功能說明書、詳細(xì)設(shè)計(jì)說明書、代碼實(shí)現(xiàn)、測試、實(shí)訓(xùn)手冊。壹個(gè)項(xiàng)目的開發(fā)所需要的財(cái)力、人力均是大量的,如果沒有壹個(gè)好的遠(yuǎn)景規(guī)劃,對以后的開發(fā)進(jìn)度會(huì)產(chǎn)生很大的影響,嚴(yán)重時(shí)導(dǎo)致于預(yù)定時(shí)間內(nèi)不能完成該項(xiàng)目或者完成的項(xiàng)目跟原先計(jì)劃所要實(shí)現(xiàn)的項(xiàng)目功能不符合。壹份好的項(xiàng)目結(jié)構(gòu)、業(yè)務(wù)功能和詳細(xì)設(shè)計(jì)說明書對壹個(gè)項(xiàng)目的開發(fā)有明確的指引

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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

提交評論