版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
*******************實(shí)踐教學(xué)******************江西理工大學(xué)軟件學(xué)院2023年春季學(xué)期C++語(yǔ)言程序設(shè)計(jì)課程設(shè)計(jì)〔第四組〕題目:職工信息管理系統(tǒng)專(zhuān)業(yè)班級(jí):_______姓名:________學(xué)號(hào):112121指導(dǎo)教師:吉寶玉成績(jī):____2023年6月25日目錄摘要0前言0正文01.系統(tǒng)功能分析02.系統(tǒng)總體設(shè)計(jì)03.詳細(xì)設(shè)計(jì)04.系統(tǒng)測(cè)試05.軟件使用說(shuō)明書(shū)0設(shè)計(jì)總結(jié)0參考文獻(xiàn)0致謝0附錄:原程序代碼0摘要隨著經(jīng)濟(jì)的高速開(kāi)展,一個(gè)好的職工信息管理程序在企業(yè)及用人單位扮演著重要的角色,為了設(shè)計(jì)一個(gè)功能強(qiáng)大的職工信息管理系統(tǒng),在設(shè)計(jì)中我們做出了明細(xì)分工,目的是要讓本組成員都從這次課程設(shè)計(jì)中學(xué)到編程經(jīng)驗(yàn)與團(tuán)隊(duì)精神?!奥毠ば畔⒐芾硐到y(tǒng)〞,系統(tǒng)以菜單方式工作,編寫(xiě)存放有職工根本信息,包含職工工號(hào),姓名,性別,出生年月,學(xué)歷,職務(wù),工資,住址,等,并且要求錄入職工號(hào)不重復(fù);錄入的職工號(hào)信息要求用文件形式保存,并可以對(duì)其進(jìn)行瀏覽、查詢、修改、刪除等根本操作,建立職工信息管理的文件。關(guān)鍵詞:職工信息管理;文件;瀏覽;查詢;修改。前言隨著信息技術(shù)在管理上越來(lái)越深入而廣泛的應(yīng)用,管理信息系統(tǒng)的實(shí)施在技術(shù)上已逐步成熟。管理信息系統(tǒng)是一個(gè)不斷開(kāi)展的新型學(xué)科,任何一個(gè)單位要生存要開(kāi)展要高效率的把內(nèi)部活動(dòng)有機(jī)的組織起來(lái),就必須建立自身特點(diǎn)相適應(yīng)的管理信息系統(tǒng)。本組設(shè)計(jì)的是一個(gè)關(guān)于職工信息管理的數(shù)據(jù)庫(kù)系統(tǒng),通過(guò)這個(gè)系統(tǒng),管理員可以簡(jiǎn)捷方便的對(duì)職工信息進(jìn)行增加、刪除、修改等功能,而用戶也可以通過(guò)這個(gè)系統(tǒng)對(duì)職工信息進(jìn)行查詢等功能。在日益開(kāi)展的現(xiàn)代社會(huì),一個(gè)高效實(shí)用的職工信息管理系統(tǒng)已經(jīng)是企業(yè)必不可少的一個(gè)管理工具,它可以使企業(yè)在管理方面減少很多時(shí)間,本課程設(shè)計(jì)針對(duì)現(xiàn)代社會(huì)企業(yè)對(duì)員工信息的管理而設(shè)計(jì),使員工的管理更加的簡(jiǎn)捷,更加的方便,界面友好,易于操作。采用的的開(kāi)發(fā)環(huán)境是visualstdio2023.在設(shè)計(jì)中,我們放棄的傳統(tǒng)的面對(duì)過(guò)程的結(jié)構(gòu)化設(shè)計(jì)思想,因?yàn)槊嫦蜻^(guò)程的結(jié)構(gòu)體的或鏈表的方法存儲(chǔ)每個(gè)員工的靜態(tài)屬性:編號(hào)、姓名、性別、年齡、、工資等數(shù)據(jù)有很多的不方便也有很多的不平安,所以我們采用C++的對(duì)象的編程思想來(lái)把每個(gè)員工的數(shù)據(jù)封裝成一個(gè)人員的對(duì)象。使得操作的方式更加的合理,平安。也使本組課程設(shè)計(jì)的成員更加的了解面向?qū)ο蟪绦蛟O(shè)計(jì)的解決問(wèn)題的思維方式。正文一.系統(tǒng)功能分析該職工管理系統(tǒng)針對(duì)員工信息數(shù)據(jù)的處理設(shè)計(jì)了以下功能:添加職工信息添加員工信息,提供員工信息的添加,在該模塊中設(shè)計(jì)了平安檢查機(jī)制,即確認(rèn)是否添加員工的信息,假設(shè)對(duì)員工信息的添加不滿意,那么可以選擇重新輸入。還設(shè)置有返回主菜單的選項(xiàng)以方便用戶。修改職工信息修改員工信息設(shè)置了員工人數(shù)檢查,果員工人數(shù)NUM的值為0,那么返回主菜單。如果員工人數(shù)NUM不為0,那么進(jìn)入刪除員工信息的界面。修改員工信息板塊功能強(qiáng)大,界面友好,用循環(huán)控制修改某員工屬性,這樣使得操作極為方便。刪除職工信息刪除員工信息中設(shè)計(jì)了對(duì)員工人數(shù)的檢查,如果員工人數(shù)NUM的值為0,那么返回到主菜單。如果員工人數(shù)NUM不為0,那么進(jìn)入刪除員工信息的界面。界面包括員工信息列表,和刪除選項(xiàng),方便用戶的操作。員工職工查找通過(guò)find()函數(shù)進(jìn)行查找。該函數(shù)比擬簡(jiǎn)單,通過(guò)循環(huán)一次比擬Per[n].num是否與你輸入的num是否相等,如果相等,那么輸入到屏幕上,如果未找到任何匹配的員工,那么顯示“未找該員工〞。保存職工信息保存員工的信息,即為將當(dāng)前所有的員工的信息存入到workerlist.txt中。這里我們采用的是C++的ofstream的寫(xiě)入文件的對(duì)象進(jìn)行控制。職工信息的排序?qū)T工信息進(jìn)行排序,包括按員工編號(hào)排序〔從小到大〕,按員工工資進(jìn)行排序〔從高到低〕。其中也設(shè)置了員工人數(shù)檢查機(jī)制,即:如果員工的人數(shù)為0,那么直接返回主菜單。職工信息的顯示對(duì)職工信息進(jìn)行顯示,包括職工的工號(hào),姓名,年齡,學(xué)歷,工資地址,等信息。方便對(duì)員工了解。系統(tǒng)總體設(shè)計(jì)1,編寫(xiě)要求:先聲明職工人員結(jié)構(gòu),該結(jié)構(gòu)中包含編號(hào)、姓名、出生年月、性別,職稱,部門(mén),根本工資等成員變量,并定義人員結(jié)構(gòu)數(shù)組;編寫(xiě)主函數(shù),要求提供一界面,允許工作人員輸入、修改和刪除員工信息;將員工信息分別按編號(hào)由小到大、根本工資由大到小的順序進(jìn)行顯示,要求采用不同的排序算法;給出某員工編號(hào),可對(duì)該員工信息進(jìn)行查找,假設(shè)找到,顯示相應(yīng)信息,否那么顯示“該員工不存在〞,要求用順序查找和二分查找法進(jìn)行查找;將所有職工信息保存在磁盤(pán)上。界面:***********************************************員工管理系統(tǒng)**-------------------------------**1.職工信息輸入**2.職工信息修改**3.職工信息刪除**4.職工信息查找**5.職工信息保存**6.職工工資排行**7.職工信息顯示**0.退出***********************************************2,編寫(xiě)目的:完成題目所要求的全部功能,并參加本組自己的設(shè)計(jì)風(fēng)格,在界面友好的根底上,增加一些附加功能,使得功能更為強(qiáng)大,最終得到一個(gè)可靠性高,易于操作的職工信息管理的系統(tǒng)。3,功能劃分該系統(tǒng)可以按功能進(jìn)行模塊劃分,如圖主菜單主菜單添加職工信息修改職工信息職工刪除信息職工信息查詢職工信息排序保存員工信息Switch()退出While()開(kāi)始main()讀取數(shù)據(jù)系統(tǒng)模塊圖其中:主菜單模塊完成用戶命令的接受,此模塊也是職工信息管理的入口,用戶所要進(jìn)行的各種操作均需在此模塊中進(jìn)行選擇,并進(jìn)而調(diào)用其他模塊實(shí)現(xiàn)相應(yīng)的功能。信息添加模塊完成職工信息的輸入功能,輸入信息包括職工號(hào)、姓名、性別,出生年月、學(xué)歷、職務(wù)、工資、住址、等。信息顯示模塊完成已錄入職工信息的顯示。信息查詢模塊完成職工信息的查詢,查詢時(shí)對(duì)應(yīng)有按編號(hào)查詢和按姓名查詢兩種方式。信息修改模塊完成職工信息的修改功能。信息刪除功能模塊完成職工信息的刪除功能。信息排序模塊完成對(duì)職工信息的排序,排序內(nèi)容包括工號(hào),工資等。信息保存模塊完成對(duì)職工信息的保存。4.數(shù)據(jù)結(jié)構(gòu)本系統(tǒng)中主要的數(shù)據(jù)結(jié)構(gòu)就是職工的信息,包含職工號(hào)、姓名、性別、出生年月、學(xué)歷、職務(wù)、工資、住址、等,在處理過(guò)程中各項(xiàng)可以作為一個(gè)職工的不同屬性來(lái)進(jìn)行處理。5.程序流程系統(tǒng)的執(zhí)行應(yīng)從功能菜單項(xiàng)選擇擇開(kāi)始,依據(jù)用戶的選擇來(lái)進(jìn)行后續(xù)的處理,直到用戶選擇退出系統(tǒng)為止,其間應(yīng)對(duì)用戶的選擇做出判斷及異常處理。系統(tǒng)的流程圖如下圖:開(kāi)始開(kāi)始菜單項(xiàng)選擇擇輸入?瀏覽?查詢?修改?否否刪除?信息輸入信息瀏覽信息查詢信息修改信息刪除是是是是是結(jié)束否否否UML圖Class_cout:string_num:string_workerlist:string+add:void+dele:void+modify:void+save:void+search:void+showworker:void+sort:void+workerlist:void詳細(xì)設(shè)計(jì)〔編碼實(shí)現(xiàn)〕小組模塊分工〔本人負(fù)責(zé):職工信息修改模塊與保存模塊〕voidWorkerList::modify()//職工信息修改函數(shù)實(shí)現(xiàn){if(NUM<=0) { cout<<"沒(méi)有職工信息存入,系統(tǒng)將返回主菜單"<<endl; menu(); }else { cout<<"職工信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; } cout<<"請(qǐng)輸入需要修改信息職工的工號(hào):"<<endl; stringnum1; cin>>num1;intj=0,k;intflag=1;while(flag) {for(;j<count;j++) {if(num1==w[j].num) { flag=0; k=j;break; } }if(flag) { cout<<"不存在此員工,請(qǐng)重新輸入:"<<endl; j=0; cin>>num1; } } cout<<"你選擇的職工的信息為:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl; cout<<w[k].num<<'\t'<<w[k].name<<'\t'<<w[k].sex<<'\t'<<w[k].edu<<'\t'<<w[k].age<<'\t'<<w[k].salary<<'\t'<<w[k].address<<'\t'<<w[k].tel<<endl; cout<<endl; cout<<"***********************************************"<<endl; cout<<"**1.修改工號(hào)**"<<endl; cout<<"**2.修改姓名**"<<endl; cout<<"**3.修改性別**"<<endl; cout<<"**4.修改學(xué)歷**"<<endl; cout<<"**5.修改年齡**"<<endl; cout<<"**6.修改工資**"<<endl; cout<<"**7.修改地址**"<<endl; cout<<"**8.修改**"<<endl; cout<<"**0.返回主菜單**"<<endl; cout<<"***********************************************"<<endl; cout<<endl; cout<<"請(qǐng)選擇數(shù)字編號(hào)~8"<<endl;inti3; cin>>i3;while(i3<0||i3>8) { cout<<"輸入有誤,請(qǐng)重新輸入:"<<endl; cin>>i3; }switch(i3) {case1: cout<<"請(qǐng)輸入新的職工工號(hào):"; cin>>w[k].num; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case2: cout<<"請(qǐng)輸入新的職工姓名:"; cin>>w[k].name; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case3: cout<<"請(qǐng)輸入新的職工性別:"; cin>>w[k].sex; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case4: cout<<"請(qǐng)輸入新的職工學(xué)歷:"; cin>>w[k].edu; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case5: cout<<"請(qǐng)輸入新的職工年齡:"; cin>>w[k].age; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case6: cout<<"請(qǐng)輸入新的職工工資:"; cin>>w[k].salary; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case7: cout<<"請(qǐng)輸入新的職工地址:"; cin>>w[k].address; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case8: cout<<"請(qǐng)輸入新的職工:"; cin>>w[k].tel; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case0: menu();default:break; }職工信息保存模塊voidWorkerList::save(){if(NUM<=0) { cout<<"沒(méi)有職工信息存入,系統(tǒng)將返回主菜單"<<endl; menu(); }else { ofstreamfout; fout.open("D:\\worker.txt",ios::out); cout<<"文件正在保存......請(qǐng)稍候??!"<<endl; cout<<"數(shù)據(jù)保存成功?。?!"<<endl; fout<<"已保存員工信息如下:"<<endl; fout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl;for(inti=0;i<count;i++) fout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; cout<<"系統(tǒng)返回主菜單:"<<endl; menu(); fout.close(); } }系統(tǒng)測(cè)試通過(guò)對(duì)員工的信息的添加,修改,刪除,保存,排序,查找等功能進(jìn)行檢測(cè)。未發(fā)現(xiàn)任何異?,F(xiàn)象。在這里:我們將測(cè)試的結(jié)果圖片貼在了下面5.軟件使用說(shuō)明書(shū)〔1〕根據(jù)正確的提示安裝軟件。〔2〕PC臺(tái)式機(jī)和便攜式電腦都可運(yùn)行。(3)翻開(kāi)該程序系統(tǒng),瀏覽菜單,根據(jù)需要選擇功能,進(jìn)行各項(xiàng)操作。操作如下:點(diǎn)擊開(kāi)始菜單,進(jìn)入菜單項(xiàng)選擇擇。輸入:將所需的信息輸入。輸出:職工根本信息。輸入:根據(jù)不同的需要選擇,當(dāng)信息輸入顯示出錯(cuò)誤時(shí),進(jìn)入瀏覽信息,找出錯(cuò)誤。當(dāng)錯(cuò)誤不能改正,那么退出瀏覽信息。進(jìn)入查詢信息:那么屏幕會(huì)出現(xiàn)已一個(gè)對(duì)話框——按工號(hào)查找,把相應(yīng)的所需信息的狀態(tài)〔是否借出〕。當(dāng)查詢不能顯示需要時(shí)進(jìn)入修改程序,把所輸入的信息進(jìn)行修改,使之正確能夠正常運(yùn)行或進(jìn)入刪除信息中,重新輸入自己所要的信息。當(dāng)信息輸入正確,進(jìn)入你所需要的菜單程序中:職工信息:顯示職工號(hào)、姓名、性別、出生年月、學(xué)歷、職務(wù)、工資、住址、等。管理員信息:顯示出職工信息管理的負(fù)責(zé)人及他們的工號(hào)。設(shè)計(jì)總結(jié)在本系統(tǒng)的開(kāi)發(fā)過(guò)程中,由于組是初次開(kāi)發(fā)軟件,在知識(shí)、經(jīng)驗(yàn)方面都存在著缺乏。另外,在整個(gè)開(kāi)發(fā)的過(guò)程中,時(shí)間也比擬倉(cāng)促。因此,該系統(tǒng)必然會(huì)存在一些缺陷和缺乏。因?yàn)閷?duì)職工信息管理的整個(gè)流程不夠熟悉,在需求分析時(shí)未能做到完全滿足用戶的需求。盡管本管理系統(tǒng)存在著很多缺乏,但其功能全面、易于日后程序更新、數(shù)據(jù)庫(kù)管理容易、界面友好、操作方便、效率高、平安性好等優(yōu)點(diǎn)是本管理系統(tǒng)所必需的。通過(guò)開(kāi)發(fā)這個(gè)系統(tǒng),我組掌握了的工程根本開(kāi)發(fā)過(guò)程,用到的知識(shí)穩(wěn)固了我組對(duì)C語(yǔ)言的學(xué)習(xí),但在這次設(shè)計(jì)中的最大收獲并不是掌握這幾門(mén)開(kāi)發(fā)工具的應(yīng)用,而是學(xué)會(huì)了設(shè)計(jì)系統(tǒng)的思維方法,以及與同學(xué)們之間相互幫助的精神。參考文獻(xiàn)[1]王連相c++程序設(shè)計(jì)教程,中國(guó)鐵道出版社,2007[2]譚浩強(qiáng)C語(yǔ)言程序設(shè)計(jì)教程,安徽出版社,1999[3]譚浩強(qiáng)C程序設(shè)計(jì)題解與上機(jī)指導(dǎo),清華大學(xué)出版社,1999[4]C語(yǔ)言的實(shí)際應(yīng)用,安徽科學(xué)技術(shù)出版社,2000[5]C語(yǔ)言函數(shù)手冊(cè),機(jī)械工業(yè)出版社,1999[6]C語(yǔ)言實(shí)用程序薈萃,西安電子科技大學(xué)出版社,1993鳴謝。致謝在編寫(xiě)程序的過(guò)程中,我們得到了老師的精心指導(dǎo)以及孜孜不倦的教誨,在老師的指導(dǎo)下,我們的能力得到了提高,同時(shí)養(yǎng)成了科學(xué)、嚴(yán)謹(jǐn)?shù)淖黠L(fēng)和習(xí)慣,在此,我們對(duì)老師的精心栽培表示衷心的感謝!感謝我們小組同學(xué)對(duì)我的幫助和指點(diǎn),尤其感謝我的舍友在非常時(shí)期,在生活和學(xué)習(xí)上幫我許多忙。在課設(shè)即將完成之際,我的心情無(wú)法平靜,從開(kāi)始進(jìn)入課題到課設(shè)的順利完成,有多少可敬的師長(zhǎng)、同學(xué)、朋友給了我無(wú)言的幫助,在這里請(qǐng)接受我誠(chéng)摯的謝意。附錄:本組成員。組長(zhǎng):龔貴彬。組員:樊后濤,任寧寧,方磊,余望明,宋帥。了解工作要求,明確分工內(nèi)容,網(wǎng)上查閱相關(guān)資料。所有組員共同參與。主函數(shù),顯示菜單函數(shù)的編寫(xiě)。由余望明完成。編寫(xiě)信息添加模塊,由任寧寧完成。職工信息修改,保存模塊的編寫(xiě),由龔貴彬完成。5職工信息查詢模塊,由樊后濤完成。6.職工信息刪除模塊,由宋帥完成。職工信息排序模塊,由方磊完成需求分析設(shè)計(jì)由任寧寧和樊后濤完成9.文本編寫(xiě)由龔貴彬完成。最后總結(jié)調(diào)試。由所有組員共同完成。源程序代碼:#include<iostream>#include"string"#include<fstream>#include<stdlib.h>#include<stdio.h>#defineN100//N作為最大職工總數(shù)intf=0;//f作為開(kāi)關(guān)usingnamespacestd;stringp;//p作為接收菜單項(xiàng)選擇項(xiàng)的字符串voidmenu();//顯示菜單classworker{public: worker(){} voidshow();//職工信息顯示 ~worker(){}friendclassWorkerList;private: stringnum,name,sex,edu,address,tel;intage,salary;};classWorkerList{private: workerw[N];intNUM;//用來(lái)計(jì)算職工數(shù)目intcount;//用來(lái)暫時(shí)記錄當(dāng)前操作第幾個(gè)職工public:voidadd();//職工信息錄入voidsort();//職工信息排序voidsearch();//職工信息查找voiddele();//職工信息刪除voidmodify();//職工信息修改voidsave();//職工信息以文件形式保存voidshowworker();//顯示職工信息在屏幕上 WorkerList(){ NUM=0; count=0; }};voidmenu(){ cout<<endl; cout<<"***********************************************"<<endl; cout<<"****"<<endl; cout<<"**職工信息管理系統(tǒng)主菜單**"<<endl; cout<<"****"<<endl; cout<<"**1.職工信息添加**"<<endl; cout<<"**2.職工信息修改**"<<endl; cout<<"**3.職工信息刪除**"<<endl; cout<<"**4.職工信息排序**"<<endl; cout<<"**5.職工信息查找**"<<endl; cout<<"**6.職工信息顯示**"<<endl; cout<<"**7.職工信息保存**"<<endl; cout<<"**0.退出**"<<endl; cout<<"****"<<endl; cout<<"***********************************************"<<endl; cout<<endl;}voiddomain()//主菜單函數(shù)實(shí)現(xiàn){ WorkerListwl;while(1) { system("cls"); menu(); cout<<"請(qǐng)選擇數(shù)字編號(hào)~7"<<endl;inti1; cin>>i1;while(!(i1>=0&&i1<=7)) { cout<<"輸入有誤,請(qǐng)重新輸入:"<<endl; cin>>i1; }switch(i1) {case1: wl.add();break;case2: wl.modify();break;case3: wl.dele();break;case4: wl.sort();break;case5: wl.search();break;case7: wl.save();break;case6: wl.showworker();break;case0: cout<<"系統(tǒng)退出?。?<<endl; exit(0);default:break; } cout<<"是否返回主菜單?Y/N"<<endl; cin>>p;if(p=="n"||p=="N") { cout<<"系統(tǒng)退出??!"<<endl; exit(0); }//getchar(); }}voidWorkerList::add()//職工信息添加函數(shù)實(shí)現(xiàn){ cout<<"請(qǐng)輸入職工信息:"<<endl;cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl; stringnum; cin>>num;for(inti=0;i<NUM;i++)while(num==w[i].num) { cout<<"此職工編號(hào)已存在,請(qǐng)重新輸入:"<<endl; cin>>num; } w[NUM].num=num; cin>>w[NUM].name>>w[NUM].sex>>w[NUM].edu>>w[NUM].age>>w[NUM].salary>>w[NUM].address>>w[NUM].tel; ++NUM; count=NUM;}voidworker::show()//顯示職工信息函數(shù)實(shí)現(xiàn){ cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl; cout<<num<<'\t'<<name<<'\t'<<sex<<'\t'<<edu<<'\t'<<age<<'\t'<<salary<<'\t'<<address<<'\t'<<tel<<endl; cout<<endl;}voidWorkerList::modify()//職工信息修改函數(shù)實(shí)現(xiàn){if(NUM<=0) { cout<<"沒(méi)有職工信息存入,系統(tǒng)將返回主菜單"<<endl; menu(); }else { cout<<"職工信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; } cout<<"請(qǐng)輸入需要修改信息職工的工號(hào):"<<endl; stringnum1; cin>>num1;intj=0,k;intflag=1;while(flag) {for(;j<count;j++) {if(num1==w[j].num) { flag=0; k=j;break; } }if(flag) { cout<<"不存在此員工,請(qǐng)重新輸入:"<<endl; j=0; cin>>num1; } } cout<<"你選擇的職工的信息為:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl; cout<<w[k].num<<'\t'<<w[k].name<<'\t'<<w[k].sex<<'\t'<<w[k].edu<<'\t'<<w[k].age<<'\t'<<w[k].salary<<'\t'<<w[k].address<<'\t'<<w[k].tel<<endl; cout<<endl; cout<<"***********************************************"<<endl; cout<<"**1.修改工號(hào)**"<<endl; cout<<"**2.修改姓名**"<<endl; cout<<"**3.修改性別**"<<endl; cout<<"**4.修改學(xué)歷**"<<endl; cout<<"**5.修改年齡**"<<endl; cout<<"**6.修改工資**"<<endl; cout<<"**7.修改地址**"<<endl; cout<<"**8.修改**"<<endl; cout<<"**0.返回主菜單**"<<endl; cout<<"***********************************************"<<endl; cout<<endl; cout<<"請(qǐng)選擇數(shù)字編號(hào)~8"<<endl;inti3; cin>>i3;while(i3<0||i3>8) { cout<<"輸入有誤,請(qǐng)重新輸入:"<<endl; cin>>i3; }switch(i3) {case1: cout<<"請(qǐng)輸入新的職工工號(hào):"; cin>>w[k].num; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case2: cout<<"請(qǐng)輸入新的職工姓名:"; cin>>w[k].name; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case3: cout<<"請(qǐng)輸入新的職工性別:"; cin>>w[k].sex; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case4: cout<<"請(qǐng)輸入新的職工學(xué)歷:"; cin>>w[k].edu; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case5: cout<<"請(qǐng)輸入新的職工年齡:"; cin>>w[k].age; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case6: cout<<"請(qǐng)輸入新的職工工資:"; cin>>w[k].salary; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case7: cout<<"請(qǐng)輸入新的職工地址:"; cin>>w[k].address; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case8: cout<<"請(qǐng)輸入新的職工:"; cin>>w[k].tel; cout<<"修改信息已保存,現(xiàn)返回主菜單:"<<endl; menu();break;case0: menu();default:break; }}voidWorkerList::showworker()//職工信息顯示函數(shù)實(shí)現(xiàn){if(NUM<=0) { cout<<"沒(méi)有職工信息存入,系統(tǒng)將返回主菜單"<<endl; menu(); }else cout<<"已保存的職工信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl;/*cout<<"是否返回主菜單?Y/N"<<endl; cin>>p; while(1) { if(p=="y"||p=="Y") { menu(); } elseif(p=="n"||p=="N") { cout<<"系統(tǒng)退出!!"<<endl; exit(0); } else { cout<<"輸入有誤,請(qǐng)重新輸入:"; cin>>p; } }*/}voidWorkerList::search(){if(NUM<=0) { cout<<"沒(méi)有職工信息存入,系統(tǒng)將返回主菜單"<<endl; menu(); }else cout<<"請(qǐng)選擇查找方式:"<<endl; cout<<"***********************************************"<<endl; cout<<"**1.按工號(hào)查找**"<<endl; cout<<"**2.按姓名查找**"<<endl; cout<<"**3.按工資查找**"<<endl; cout<<"**4.按學(xué)歷查找**"<<endl; cout<<"**0.返回主菜單**"<<endl; cout<<"***********************************************"<<endl; cout<<endl; cout<<"請(qǐng)選擇數(shù)字編號(hào)~4"<<endl;inti4; cin>>i4;while(i4<0||i4>4) { cout<<"輸入有誤,請(qǐng)重新輸入:"<<endl; cin>>i4; }if(i4==1) { stringnum2; cout<<"請(qǐng)輸入要查詢的職工的工號(hào):"<<endl; cin>>num2;intj=0,k;intflag=1;while(flag) {for(;j<count;j++) {if(num2==w[j].num) { flag=0; k=j; cout<<"查詢的職工信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl; cout<<w[k].num<<'\t'<<w[k].name<<'\t'<<w[k].sex<<'\t'<<w[k].edu<<'\t'<<w[k].age<<'\t'<<w[k].salary<<'\t'<<w[k].address<<'\t'<<w[k].tel<<endl;break; } }if(flag) { flag=0; cout<<"不存在此職工!!\n返回主菜單"<<endl;break; } } } elseif(i4==2) { stringname2; cout<<"請(qǐng)輸入要查詢的職工的姓名:"<<endl; cin>>name2;intj2=0,k2;intflag2=1;while(flag2) {for(;j2<count;j2++) {if(name2==w[j2].name) { flag2=0; k2=j2; cout<<"查詢的職工信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl; cout<<w[k2].num<<'\t'<<w[k2].name<<'\t'<<w[k2].sex<<'\t'<<w[k2].edu<<'\t'<<w[k2].age<<'\t'<<w[k2].salary<<'\t'<<w[k2].address<<'\t'<<w[k2].tel<<endl;break; } }if(flag2) { flag2=0; cout<<"不存在此職工!!\n返回主菜單"<<endl;break; } } }elseif(i4==3) { intsalary2; cout<<"請(qǐng)輸入要查詢的職工的工資:"<<endl; cin>>salary2;intj3=0,k3;intflag3=1;while(flag3) {for(;j3<count;j3++) {if(salary2==w[j3].salary) { flag3=0; k3=j3; cout<<"查詢的職工信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl; cout<<w[k3].num<<'\t'<<w[k3].name<<'\t'<<w[k3].sex<<'\t'<<w[k3].edu<<'\t'<<w[k3].age<<'\t'<<w[k3].salary<<'\t'<<w[k3].address<<'\t'<<w[k3].tel<<endl;break; } }if(flag3) { flag3=0; cout<<"不存在此職工!!\n返回主菜單"<<endl;break; } } }elseif(i4==4) { stringedu2; cout<<"請(qǐng)輸入要查詢的職工的學(xué)歷:"<<endl; cin>>edu2;intj4=0,k4;intflag4=1;while(flag4) {for(;j4<count;j4++) {if(edu2==w[j4].edu) { flag4=0; k4=j4; cout<<"查詢的職工信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl; cout<<w[k4].num<<'\t'<<w[k4].name<<'\t'<<w[k4].sex<<'\t'<<w[k4].edu<<'\t'<<w[k4].age<<'\t'<<w[k4].salary<<'\t'<<w[k4].address<<'\t'<<w[k4].tel<<endl;break; } }if(flag4) { flag4=0; cout<<"不存在此職工!!\n返回主菜單"<<endl;break; } } }elseif(i4==0) menu();}voidWorkerList::sort()//職工信息排序功能實(shí)現(xiàn){ if(NUM<=0) { cout<<"沒(méi)有職工信息存入,系統(tǒng)將返回主菜單"<<endl; menu(); }else cout<<"請(qǐng)選擇排序方式:"<<endl; cout<<"***********************************************"<<endl; cout<<"**1.按工號(hào)排序〔升序〕**"<<endl; cout<<"**2.按工號(hào)排序〔降序〕**"<<endl; cout<<"**3.按姓名排序〔升序〕**"<<endl; cout<<"**4.按姓名排序〔降序〕**"<<endl; cout<<"**5.按工資排序〔升序〕**"<<endl; cout<<"**6.按工資排序〔降序〕**"<<endl; cout<<"**0.返回主菜單**"<<endl; cout<<"***********************************************"<<endl; cout<<endl; cout<<"請(qǐng)選擇數(shù)字編號(hào)~6"<<endl;inti5; cin>>i5;while(i5<0||i5>6) { cout<<"輸入有誤,請(qǐng)重新輸入:"<<endl; cin>>i5; }if(i5==1) { for(inti=0;i<count-1;i++)for(intj=0;j<count-1-i;j++)if(w[j].num>w[j+1].num) { stringtemp; temp=w[j].num; w[j].num=w[j+1].num; w[j+1].num=temp; } cout<<"按工號(hào)升序后的信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; }elseif(i5==2) { for(inti=0;i<count-1;i++)for(intj=0;j<count-1-i;j++)if(w[j].num<w[j+1].num) { stringtemp; temp=w[j].num; w[j].num=w[j+1].num; w[j+1].num=temp; } cout<<"按工號(hào)降序后的信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; }elseif(i5==3) { for(inti=0;i<count-1;i++)for(intj=0;j<count-1-i;j++)if(w[j].name>w[j+1].name) { stringtemp; temp=w[j].name; w[j].name=w[j+1].name; w[j+1].name=temp; } cout<<"按姓名升序后的信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; }elseif(i5==4) { for(inti=0;i<count-1;i++)for(intj=0;j<count-i-1;j++)if(w[j].name<w[j+1].name) { stringtemp; temp=w[j].name; w[j].name=w[j+1].name; w[j+1].name=temp; } cout<<"按姓名降序后的信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; }elseif(i5==5) { for(inti=0;i<count-1;i++)for(intj=0;j<count-i-1;j++)if(w[j].salary>w[j+1].salary) {inttemp; temp=w[j].salary; w[j].salary=w[j+1].salary; w[j+1].salary=temp; } cout<<"按工資升序后的信息如下:"<<endl; cout<<"工號(hào)\t姓名\t性別\t學(xué)歷\t年齡\t工資\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; }elseif(i5==6) { for(inti=0;i<count-1;i++
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 飼料行業(yè)安全管理工作總結(jié)
- 2025年高考?xì)v史一輪復(fù)習(xí)之人民當(dāng)家作主
- 醫(yī)療器械行業(yè)市場(chǎng)推廣活動(dòng)總結(jié)
- 兒科門(mén)診護(hù)理工作總結(jié)
- 網(wǎng)絡(luò)行業(yè)運(yùn)營(yíng)員培訓(xùn)心得
- 音樂(lè)行業(yè)客服工作總結(jié)
- 美容美發(fā)店前臺(tái)服務(wù)感悟
- 2024年美術(shù)教案(匯編9篇)
- 力瓦工程合同(2篇)
- 沖刺班協(xié)議書(shū)(2篇)
- 第二章 粉體制備
- 預(yù)應(yīng)力空心板計(jì)算
- 2024版珠寶鑒定技師勞動(dòng)合同范本3篇
- GA/T 1740.2-2024旅游景區(qū)安全防范要求第2部分:湖泊型
- 2023年開(kāi)封糧食產(chǎn)業(yè)集團(tuán)有限公司招聘筆試真題
- 2024年全國(guó)“紀(jì)檢監(jiān)察”業(yè)務(wù)相關(guān)知識(shí)考試題庫(kù)(附含答案)
- 2025年社區(qū)工作者考試試題庫(kù)及答案
- 期末檢測(cè)卷(三)2024-2025學(xué)年人教PEP版英語(yǔ)四年級(jí)上冊(cè)(含答案無(wú)聽(tīng)力原文無(wú)聽(tīng)力音頻)
- 2024-2030年中國(guó)兒童內(nèi)衣行業(yè)運(yùn)營(yíng)狀況及投資前景預(yù)測(cè)報(bào)告
- 吉首大學(xué)《高等數(shù)學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 打印和復(fù)印服務(wù)協(xié)議
評(píng)論
0/150
提交評(píng)論