欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)-職工管理系統(tǒng)(精選五篇)

      時(shí)間:2019-05-11 23:46:23下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫寫幫文庫(kù)小編為你整理了多篇相關(guān)的《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)-職工管理系統(tǒng)》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫(kù)還可以找到更多《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)-職工管理系統(tǒng)》。

      第一篇:數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)-職工管理系統(tǒng)

      目錄

      一、前言--------2

      二、需求分析--3

      三、概要設(shè)計(jì)--4

      四、詳細(xì)設(shè)計(jì)--5

      五、調(diào)試分析--6

      六、用戶使用說明---------------------------7

      七、測(cè)試結(jié)果--8

      八、總結(jié)-------11

      九、主要參考文獻(xiàn)和附錄-----------------12

      前言

      員工管理系統(tǒng)是一個(gè)工作單位不可缺少的管理工具,它管理的數(shù)據(jù)對(duì)于公司的決策者和管理者來說都至關(guān)重要,所以員工管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄巍5恢币詠砀鱾€(gè)公司基本上都是靠傳統(tǒng)的人工方式來管理員工信息,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于信息的查找、更新和維護(hù)都帶來了不少的困難。

      當(dāng)今社會(huì),信息迅速膨脹,隨著各個(gè)公司的規(guī)模增大,有關(guān)信息管理工作所涉及的數(shù)據(jù)量越來越大,員工信息量也大大增加,利用傳統(tǒng)的手工查詢、登記、修改等方法的處理速度遠(yuǎn)遠(yuǎn)跟不上公司的需求,有的公司不得不靠增加人力、物力來進(jìn)行信息管理。

      隨著計(jì)算機(jī)技術(shù)的不斷提高,計(jì)算機(jī)作為知識(shí)經(jīng)濟(jì)時(shí)代的產(chǎn)物,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)行業(yè)和領(lǐng)域并發(fā)揮著越來越重要的作用,成為人們工作和生活中不可缺少的一部分。

      而作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)員工進(jìn)行管理,具有手工管理所無(wú)法比擬的優(yōu)點(diǎn)。例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高員工管理的效率,也是公司的科學(xué)化、正規(guī)化管理和與世界接軌的重要條件。

      員工管理系統(tǒng)作為一種管理軟件正在各公司中得到越來越廣泛的應(yīng)用,且已達(dá)到了良好效果。

      需求分析

      員工信息管理系統(tǒng)是企業(yè)管理中的一個(gè)重要內(nèi)容,隨著時(shí)代的進(jìn)步,企業(yè)也逐漸變得龐大起來。如何管理好企業(yè)內(nèi)部員工的信息,成為企業(yè)管理中的一個(gè)大問題。在這種情況下,開發(fā)一個(gè)人力資源管理系統(tǒng)就顯得非常必要

      現(xiàn)在,市場(chǎng)上可以選購(gòu)的應(yīng)用開發(fā)產(chǎn)品很多,流行的也有數(shù)十種。在目前市場(chǎng)上這些眾多的程序開發(fā)工具中,有些強(qiáng)調(diào)程序語(yǔ)言的彈性與執(zhí)行效率;有些則偏重于可視化程序開發(fā)工具所帶來的便利性與效率的得高,各有各的優(yōu)點(diǎn)和特色,也滿足了不同用戶的需求。然而,語(yǔ)言的彈性和工具的便利性是密不可分的,只強(qiáng)調(diào)程序語(yǔ)言的彈性,卻沒有便利的工具作配合,會(huì)使一些即使非常簡(jiǎn)單的界面處理動(dòng)作,也會(huì)嚴(yán)重地浪費(fèi)程序設(shè)計(jì)師的寶貴時(shí)間;相反,如果只有便利的工具,卻沒有彈性的語(yǔ)言作支持,許多特殊化的處理動(dòng)作必需要耗費(fèi)數(shù)倍的工夫來處理,使得原來所標(biāo)榜的效率提高的優(yōu)點(diǎn)失去了作用。

      本系統(tǒng)結(jié)合公司實(shí)際的人事、制度,經(jīng)過實(shí)際的需求分析,采用功能強(qiáng)大的Visual C++ 6.0作為開發(fā)工具而開發(fā)出來的管理系統(tǒng)。整個(gè)系統(tǒng)從符合操作簡(jiǎn)便、界面友好、靈活、實(shí)用、安全的要求出發(fā),本管理系統(tǒng)具有如下功能:

      1、問題描述

      對(duì)單位的員工進(jìn)行管理,包括插入、刪除、查找、排序等功能。

      2、要求

      員工對(duì)象包括姓名、性別、年齡、職位、工齡等信息。

      (1)新增一名員工:將新增員工對(duì)象按姓名以字典方式員工管理文件中,基本信息中的編號(hào)是按照添加順序自動(dòng)增加的。

      (2)刪除一名員工:從員工管理文件中刪除一名員工對(duì)象,分為根據(jù)編號(hào)刪除、根據(jù)姓名刪除。

      (3)查詢:從員工管理文件中查詢符合某些條件(編號(hào)、姓名)的員工。(4)修改:根據(jù)編號(hào)檢索出對(duì)象,既可以對(duì)整個(gè)對(duì)象修改,也可對(duì)某個(gè)屬性修改。

      (5)排序:按照年齡、工齡對(duì)所有的員工排序(降序),也可以回復(fù)排序以前的員工現(xiàn)實(shí)狀態(tài)。

      3、實(shí)現(xiàn)提示

      員工對(duì)象數(shù)不必很多,便于一次讀入內(nèi)存,所有操作不經(jīng)過內(nèi)外存交換。(1)當(dāng)啟動(dòng)程序是,自動(dòng)從文件(message.txt)中讀出員工信息(2)由鍵盤輸入員工對(duì)象存入鏈表當(dāng)中。

      (3)對(duì)員工對(duì)象中的“編號(hào)、年齡、工齡”按字典順序進(jìn)行排序。(4)對(duì)排序后的員工對(duì)象進(jìn)行增、刪、查詢、修改、排序等操作。(5)當(dāng)退出程序時(shí),將此刻單鏈表中存儲(chǔ)的數(shù)據(jù)寫入到文件(message.txt)中去,保存起來。

      概要設(shè)計(jì)

      (一)數(shù)據(jù)類型定義:

      typedef struct{ int num;//編號(hào)

      char name[MAX_NUM];//姓名

      int age;//年齡

      char job[MAX_NUM];//職位;

      int workTime;// 工齡

      }People;ypedef struct node{ People people;struct node * next;int len;//表示鏈表長(zhǎng)度

      }linklist;

      (二)流程圖:

      (圖1)

      (三)各程序模塊之間的層次圖:

      (圖2)

      詳細(xì)設(shè)計(jì)

      1、主菜單模塊:顯示員工管理系統(tǒng)的主菜單,供用戶選擇所需的功能,通過自己定義的void main()函數(shù)來實(shí)現(xiàn)。

      2、添加員工模塊:輸入員工的編號(hào)、姓名、年齡、職位、工齡以,通過自己定義的void addMessage()函數(shù)來實(shí)現(xiàn)。

      3、查詢員工信息模塊:瀏覽所有員工的相關(guān)信息,通過自己定義的void searchPeople()函數(shù)來實(shí)現(xiàn)。

      (1)按員工姓名查詢:可以按員工工號(hào)來查詢員工的相關(guān)信息,通過自己定義的void searchPeopleByName()函數(shù)來實(shí)現(xiàn)。

      (2)按員工編號(hào)查詢:可以按員工職務(wù)來查詢員工的相關(guān)信息,通過自己定義的void searchPeopleByNum()函數(shù)來實(shí)現(xiàn)。

      (3)退出。

      4、刪除員工模塊:刪除需要?jiǎng)h除的員工的所有信息,通過自己定義的void deletePeople()函數(shù)來實(shí)現(xiàn)。

      (1)按員工姓名刪除模塊:可以按員工工號(hào)來刪除員工的相關(guān)信息,通過自己定義的void deletePeopleByName()函數(shù)來實(shí)現(xiàn)。

      (2)按員工編號(hào)刪除模塊:可以按員工編號(hào)刪除員工的相關(guān)信息,通過自己定義void deletePeopleByNum()函數(shù)來實(shí)現(xiàn)。

      (3)退出

      5、修改模塊:可以修改需要修改的員工的相關(guān)信息,通過自己定義的 void editMessage()函數(shù)來實(shí)現(xiàn)。

      (1)修改整條記錄,可以修改該員工的全部信息,通過自己定義的void editAll()函數(shù)來實(shí)現(xiàn)。

      (2)修改部分記錄,可以修改該員工的部分信息,通過自己定義的void editSome()

      函數(shù)來實(shí)現(xiàn)。

      (3)退出。

      6、員工信息排序模塊:可以按照規(guī)定要求對(duì)員工信息排序,通過自己定義的void sort()函數(shù)來實(shí)現(xiàn)。

      (1)按年齡排序:可以按員工工號(hào)對(duì)員工信息排序,通過自己定義的void sortByAge()函數(shù)來。

      (2)按工齡排序:可以按員工工齡對(duì)員工信息排序,通過自己定義的void sortByWorkTime()函數(shù)來實(shí)現(xiàn)。

      (3)回復(fù)原排序:可以回復(fù)排序前的順序,通過自己定義的void sortByNum()函數(shù)來實(shí)現(xiàn)。

      (4)退出。

      7、退出系統(tǒng)模塊:退出員工信息管理系統(tǒng),通exit(0)函數(shù)來實(shí)現(xiàn)。

      函數(shù)調(diào)用圖:

      (圖3)

      調(diào)試分析

      測(cè)試是使用人工或者自動(dòng)手段來運(yùn)行或測(cè)試某個(gè)系統(tǒng)的過程,其目的在于檢驗(yàn)是否滿足規(guī)定的需求或弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別。

      在調(diào)試查詢修改功能過程中,查詢的結(jié)果顯示,沒有找到員工信息,最后發(fā)現(xiàn)查找的結(jié)點(diǎn)不正確,查詢應(yīng)該與輸入的值和頭結(jié)點(diǎn)next比較。此外查詢結(jié)點(diǎn)不知道如何循環(huán),反復(fù)修改程序才知道如何繼續(xù)查找而不出錯(cuò)誤。

      本次課程設(shè)計(jì)是圍繞數(shù)據(jù)結(jié)構(gòu)進(jìn)行。根據(jù)問題描述可知,需要解決問題并不復(fù)雜,整個(gè)問題只需要實(shí)現(xiàn)一個(gè)員工管理系統(tǒng)功能,那就是在這個(gè)系統(tǒng)中實(shí)現(xiàn)對(duì)員工信息的插入、刪除、查詢、排序、修改。但是,為了實(shí)現(xiàn)該功能,卻需要優(yōu)秀的算法和數(shù)據(jù)結(jié)構(gòu)以保證實(shí)現(xiàn)的時(shí)間和空間效率。把員工信息存儲(chǔ)在一個(gè)單鏈表中,利用指針實(shí)現(xiàn)對(duì)員工信息的各項(xiàng)基本操作。

      雖然設(shè)計(jì)的程序完成了題目描述所需要實(shí)現(xiàn)的功能,但是仍然存在不如人意的地方。可以排序上面多設(shè)計(jì)幾個(gè)算法,實(shí)現(xiàn)多角度排序。在這個(gè)系統(tǒng)中沒有員工序號(hào)的信息,所以允 6

      許員工姓名相同,在一定程度上可能存在員工信息重復(fù)。

      經(jīng)過這次數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì),我們不僅及時(shí)鞏固的了數(shù)據(jù)結(jié)構(gòu)、算法、以及軟件工程的知識(shí),并明白數(shù)據(jù)結(jié)構(gòu)和算法對(duì)于程序時(shí)間和空間性能的影響,及軟件工程提供的開發(fā)流程和工具對(duì)于實(shí)現(xiàn)特定功能程序的重要意義。

      當(dāng)我們面對(duì)一個(gè)實(shí)際問題,應(yīng)該迅速根據(jù)問題性質(zhì)和特點(diǎn)抽象成特定的數(shù)據(jù)結(jié)構(gòu),當(dāng)然每個(gè)問題都有可能能夠抽象成多種數(shù)據(jù)結(jié)構(gòu),每種數(shù)據(jù)結(jié)構(gòu)適應(yīng)于不同的算法。因此應(yīng)該綜合考慮這樣的數(shù)據(jù)結(jié)構(gòu)、算法以及它們的空間和時(shí)間效率,然后從中選擇一個(gè)作為實(shí)現(xiàn)程序的基礎(chǔ)。

      用戶使用說明

      進(jìn)入員工管理系統(tǒng),首先看到的就是主菜單界面,然后提示:“請(qǐng)選擇主菜單(0---6):” 如果選擇1,進(jìn)入添加員工模塊,按照提示語(yǔ)依次錄入員工對(duì)象信息。選擇2,進(jìn)入展示員工所有的信息模塊,DOS界面顯示剛才錄入的員工信息。選擇3,進(jìn)入員工查詢模塊,在此模塊下: 系統(tǒng)提示:按姓名查詢、按編號(hào)查詢,系統(tǒng)根據(jù)用戶選擇進(jìn)行相應(yīng)的處理,退 出查詢模塊時(shí),系統(tǒng)進(jìn)入主菜單模塊。

      選擇4,進(jìn)入刪除員工模塊,在此模塊下: 系統(tǒng)提示:按編號(hào)刪除、按姓名刪除,系統(tǒng)根據(jù)用戶選擇,進(jìn)行相應(yīng)的處理,退出刪除模塊時(shí),系統(tǒng)進(jìn)入主菜單模塊。

      選擇5,進(jìn)入修改員工信息模塊,在該模塊下: 系統(tǒng)提示:修改整條信息,修改部分信息,系統(tǒng)根據(jù)用戶選擇,進(jìn)行相應(yīng)的功 能處理。當(dāng)用戶選擇退出修改模塊時(shí),系統(tǒng)進(jìn)入主菜單模塊。

      選擇6,進(jìn)入排序模塊,在該模塊下: 系統(tǒng)提示:按年齡排序、按工齡排序、回復(fù)原排序,系統(tǒng)根據(jù)用戶的選擇,進(jìn) 行相應(yīng)的處理。

      選擇0,退出系統(tǒng)。

      測(cè)試結(jié)果

      (一)當(dāng)操作人員運(yùn)行程序時(shí),彈出的DOS界面如下:

      (二)根據(jù)提示語(yǔ),輸入1,添加員工信息,操作如下界面:

      (三)在主菜單輸入2,進(jìn)入輸出員工功能,操作如下:

      添加員工、展示所有員工信息功能實(shí)現(xiàn)。

      (四)在主菜單輸入3,查詢員工信息

      按編號(hào)查詢,測(cè)試如下:

      按姓名查詢,測(cè)試如下:

      以上查詢功能測(cè)試功能。

      (五)在主菜單,輸入4,刪除員工功能:

      按編號(hào)刪除,測(cè)試如下:

      按姓名刪除如下:

      以上測(cè)試完成。

      (六)在主菜單輸入5,進(jìn)入修改信息功能:

      上面是對(duì)每一條記錄進(jìn)行的修改。當(dāng)你選擇2的菜單時(shí),則是對(duì)某條信息的某個(gè)字段對(duì)其進(jìn)行內(nèi)容修改,在這里就不做演示了。

      (七)在主菜單輸入6,進(jìn)入排序功能:

      按年齡排序,測(cè)試如下:

      按工齡排序相同操作,測(cè)試成功。回復(fù)排序,回復(fù)到未排序狀態(tài),測(cè)試成功。

      (八)退出,將所有的員工信息寫入message.txt 文件中,實(shí)現(xiàn)永久保存。退出系統(tǒng),測(cè)試完成。

      總結(jié)

      在本系統(tǒng)的開發(fā)過程中由于時(shí)間也比較倉(cāng)促、準(zhǔn)備不充分,系統(tǒng)必然會(huì)存在一些缺陷和不足。對(duì)員工信息管理的整個(gè)流程不夠熟悉,在需求分析時(shí)未能做到完全滿足用戶的需求。

      課程設(shè)計(jì)中我們遇到很多問題。我們?cè)陂_發(fā)時(shí),我們查閱了許多資料,了解到即是對(duì)員工的編號(hào)號(hào),姓名,年齡,工齡等復(fù)雜多樣的信息,能夠較清晰,快捷而操作方便的現(xiàn)代化管理系統(tǒng)。弄清了這個(gè)基本概念以后,我們又詳細(xì)理解了老師所講的設(shè)計(jì)要求和注意事項(xiàng),大致確定了總體的設(shè)計(jì)思路,初步提出問題的解決方案,以及系統(tǒng)大致設(shè)計(jì)方案和框架,接下來我們就著手編程。在編程過程中,先是根據(jù)系統(tǒng)所要求,找出所需要知識(shí)點(diǎn)。編完程序,我們?cè)跈C(jī)房進(jìn)行了一次又一次的調(diào)試,找出了其中的錯(cuò)誤,一一糾正,并且修改了其中不太完善的部分,力求做到實(shí)用并且精確

      盡管本管理系統(tǒng)存在著很多不足,但其功能全面、易于日后程序更新、數(shù)據(jù)庫(kù)管理容易、界面友好、操作方便、效率高、安全性好等優(yōu)點(diǎn)是本管理系統(tǒng)所必需的。通過開發(fā)這個(gè)系統(tǒng),我組掌握了的項(xiàng)目基本開發(fā)過程,用到的知識(shí)鞏固了我對(duì)C語(yǔ)言的學(xué)習(xí),但在這次設(shè)計(jì)中的最大收獲并不是掌握這幾門開發(fā)工具的應(yīng)用,而是學(xué)會(huì)了設(shè)計(jì)系統(tǒng)的思維方法。

      通過本次課程設(shè)計(jì),我們對(duì)數(shù)據(jù)結(jié)構(gòu)知識(shí)掌握了很多,并能將它用以程序編寫中,并且提高了自己的解決實(shí)際問題的能力。

      主要參考文獻(xiàn)

      [1]李云清,楊慶紅,揭安全.數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)[M].北京:人民郵電大學(xué)出版社,2004.6 [2]潘彥.算法設(shè)計(jì)與分析基礎(chǔ)[M].北京:清華大學(xué)出版社,2007.1 [3]軟件工程原理與應(yīng)用/曾強(qiáng)聰,趙歆編著 北京:清華大學(xué)出版社,2011 [4] 呂鳳翥.C++語(yǔ)言程序設(shè)計(jì)(第2版)[M].北京:電子工業(yè)出版社,2007.2 [5] 嚴(yán)蔚敏,吳偉民.數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)[M].北京:清華大學(xué)出版社,2002.9----------------------------11

      附錄:源代碼

      #include #include #include #include

      #define MAX_NUM 40

      typedef struct{ int num;//編號(hào)

      char name[MAX_NUM];//姓名

      int age;//年齡

      char job[MAX_NUM];//職位;

      int workTime;// 工齡

      }People;

      typedef struct node{ People people;struct node * next;int len;//表示鏈表長(zhǎng)度

      }linklist;

      void doAddMessage(linklist * s){ int i=0,value1=0,j;char ch;printf(“t請(qǐng)輸入員工的姓名(以#號(hào)鍵結(jié)束):”);scanf(“%c”,&ch);while(ch!='#'){

      s->people.name[i]=ch;

      i++;

      scanf(“%c”,&ch);} for(j=i;j<40;j++){

      s->people.name[j]='