




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、文檔從網(wǎng)絡(luò)中收集,已重新整理排版.word版本可編輯.歡迎下載支持.4word版本可編輯.歡迎下載支持.課程設(shè)計(jì)報(bào)告 基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的思想和方法;能夠利用所學(xué)的基本知識和技能,解決簡單 的面向?qū)ο蟪绦蛟O(shè)計(jì)問題,從而提高動手編程解決實(shí)際問題的能力。課程名稱課題名稱面向?qū)ο蟪绦蛟O(shè)計(jì)高校工資管理系統(tǒng)專班學(xué)姓業(yè) 級 號, 名計(jì)算機(jī)科學(xué)與技術(shù)計(jì)算機(jī)1181班 201113030122 宋思達(dá)指導(dǎo)教師2012年 12 月 15日湖南工程學(xué)院課程設(shè)計(jì)任務(wù)書課程名稱而向?qū)ο蟪绦蛟O(shè)計(jì)課 題高校工資管理系統(tǒng)專業(yè)班級計(jì)算機(jī)1181班學(xué)生姓名宋思達(dá)學(xué) 號 201113030122指導(dǎo)老師 李珍輝譚小蘭審 批
2、任務(wù)書下達(dá)日期2012年12月15日任務(wù)完成日期2013年01月05日一、設(shè)計(jì)內(nèi)容與設(shè)計(jì)要求1 .課程設(shè)計(jì)目的:面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)是集中實(shí)踐性環(huán)節(jié)之一,是學(xué)習(xí)完面向?qū)ο蟪绦蛟O(shè)計(jì) 課程后進(jìn)行的一次全面的綜合練習(xí)。要求學(xué)生達(dá)到熟練掌握C+語言的基本知識和技能;2 .課題題目高校工資管理系統(tǒng)3 .設(shè)計(jì)要求:(1)根據(jù)自己對應(yīng)的課題完成以下主要工作:完成系統(tǒng)需求分析:包括 系統(tǒng)設(shè)計(jì)目的與意義;系統(tǒng)功能需求(系統(tǒng)流程圖);輸入輸出的要求。完 成系統(tǒng)總體設(shè)計(jì):包括系統(tǒng)功能分析;系統(tǒng)功能模塊劃分與設(shè)計(jì)(系統(tǒng)功能模 塊圖)。完成系統(tǒng)詳細(xì)設(shè)計(jì):包括數(shù)據(jù)庫需求分析;數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)(E -R圖);數(shù)據(jù)庫邏
3、輯結(jié)構(gòu)設(shè)計(jì);類層次圖;界面設(shè)計(jì)與各功能模塊實(shí)現(xiàn)。系 統(tǒng)調(diào)試:調(diào)試出現(xiàn)的主要問題,編譯語法錯(cuò)誤及修改,重點(diǎn)是運(yùn)行邏輯問題修 改和調(diào)整。使用說明書及編程體會:說明如何使用你編寫的程序,詳細(xì)列出 每一步的操作步驟。關(guān)鍵源程序(帶注釋)(2)按規(guī)定格式完成課程設(shè)計(jì)報(bào)告,將其打印稿(A4紙)上交給老師存 檔。(3)不得抄襲他人程序、課程設(shè)計(jì)報(bào)告,每個(gè)人應(yīng)體現(xiàn)自己的個(gè)性設(shè)計(jì)。文檔從網(wǎng)絡(luò)中收集,己重新整理排版.word版本可編輯,歡迎下載支持.二、進(jìn)度安排第17周 星期二8: 0012: 00星期三 8: 0012: 00星期四8: 0012: 00星期五8: 0012: 00星期六 8: 0012: 00
4、第18周星期五8: 0012: 00三、參考書籍1.C+ +程序設(shè)計(jì)課程設(shè)計(jì)劉振安編著TP312C5632.C+ Builder和Delphi課程設(shè)計(jì)與系統(tǒng)開發(fā)案例伍俊良 清華大學(xué)出版社7-302-06072-X3. Visual C+課程設(shè)計(jì)案例精編 嚴(yán)華峰 中國水利水電出版社7-5084-2007-1 20044. Visual C+課程設(shè)計(jì)與系統(tǒng)開發(fā)案例 伍俊良 清華大學(xué)出版社7-302-05968-3 20025. Visual C+語言課程設(shè)計(jì):案例精選與編程指導(dǎo)陳清華朱紅 東南大學(xué)出版社 7-81089-275-4 20036. VisualC+課程設(shè)計(jì)案例精編中國水利水電出版社7
5、-5084-1004-1 20027. 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)案例精編:用C/C+描述李建學(xué)李光元吳春芳 清華大學(xué) 出版社 7-302-14536-9 2007(編程平臺不限,vc+, c+ Builder等等。)9word版本可編輯,歡迎下載支持.高校工資管理系統(tǒng)(一)、課程設(shè)計(jì)題目:高校工資管理系統(tǒng)(二)、目的與要求:1、目的:(1)要求學(xué)生達(dá)到熟練掌握C+語言的基本知識和技能;(2)基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思路和方法;(3)能夠利用所學(xué)的基本知識和技能,解決簡單的面向?qū)ο蟪绦蛟O(shè)計(jì)問題。2、基本要求:(I)要求利用面向?qū)ο蟮姆椒ㄒ约癈+的編程思想來完成系統(tǒng)的設(shè)計(jì);(2)要求在設(shè)計(jì)的過程中,
6、建立清晰的類層次;(3)在系統(tǒng)中至少要定義四個(gè)類,每個(gè)類中要有各自的屬性和方法;(4)在系統(tǒng)的設(shè)計(jì)中,至少要用到面向?qū)ο蟮囊环N機(jī)制。3、創(chuàng)新要求:在基本要求達(dá)到后,可進(jìn)行創(chuàng)新設(shè)計(jì),如根據(jù)查找結(jié)果進(jìn)行修改的功能。4、寫出設(shè)計(jì)說明書(三)、設(shè)計(jì)方法和基本原理:1、問題描述(功能要求):現(xiàn)一高校有五類職工:教師,實(shí)驗(yàn)員,行政人員,教師兼職實(shí)驗(yàn)員,行政人員兼 職教師。為了實(shí)現(xiàn)工資發(fā)放的自動功能,現(xiàn)要求編寫程序來自動完成此功能。同時(shí)注 意生成的相關(guān)數(shù)據(jù)結(jié)果以文件方式存放在硬盤中。程序應(yīng)具備從鍵盤錄入,文件的可 繼續(xù)錄入,任意職工的工資查詢(可由職工編號和職工姓名來實(shí)現(xiàn)),如若有職工由于 工作調(diào)動,則可進(jìn)
7、行相對應(yīng)的刪除動作。相關(guān)信息:每一學(xué)期將學(xué)校職工的本學(xué)期任職情況及上學(xué)期工作的相關(guān)情況輸入”算機(jī),則 本學(xué)期職工的月工資按程序處理后的結(jié)果發(fā)放,其中職工的工資計(jì)算方法如下:其中工資的基本構(gòu)成如下:教師:實(shí)驗(yàn)員:行政人員:教師兼職實(shí)驗(yàn)員:基本工資+課時(shí)費(fèi);基本工資+實(shí)驗(yàn)室補(bǔ)助;基本工資+行政補(bǔ)貼;基本,:資+課時(shí)費(fèi)+實(shí)驗(yàn)室補(bǔ)助:行政人員兼職教師:基本工資+行政補(bǔ)貼+課時(shí)費(fèi):(其中:(1、)課時(shí)費(fèi):教師每一學(xué)期的基本工作量為120,實(shí)驗(yàn)員每學(xué)期基本工作量為70, 行政人員沒有基本工作量,每節(jié)課時(shí)費(fèi)為20元;課時(shí)費(fèi)二(上學(xué)期工作量-基本 工作量)*20;注意:如果上學(xué)期基本工作量沒完成,則其(上學(xué)期
8、工作量-基本工作量)*20為負(fù) 值。(2)基本工資:教師800元,實(shí)驗(yàn)員650元,行政人員750元。(3)行政補(bǔ)貼:250元。(4)實(shí)驗(yàn)室補(bǔ)助:150元。2、問題的解決方案:文檔從網(wǎng)絡(luò)中收集,己重新整理排版.word版本可編輯.歡迎下載支持.根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟:(1)寫出需求分析(做什么);(2)分析系統(tǒng)中的各個(gè)實(shí)體之間的關(guān)系及其屬性和行為;(3)根據(jù)問題描述,設(shè)計(jì)系統(tǒng)的類層次;(4)完成類層次中各個(gè)類的描述(包括屬性和方法);(5)完成類中各個(gè)成員函數(shù)的定義;(6)用戶界面的設(shè)計(jì);(7)分析系統(tǒng)功能模塊(系統(tǒng)流程圖);(8)代碼編寫,功能調(diào)試;(9)完成系統(tǒng)總結(jié)報(bào)告
9、以及系統(tǒng)使用說明書。目錄1.系統(tǒng)需求分析3Z總體設(shè)計(jì)8工詳細(xì)設(shè)計(jì)12生系統(tǒng)調(diào)試161結(jié)果分析19團(tuán)總結(jié)201 .系統(tǒng)化需求分析隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展計(jì)算機(jī)在高校管理中應(yīng)用的普及利用計(jì)算機(jī)實(shí)現(xiàn) 高校人事管理勢在必行。對于高校來說利用計(jì)算機(jī)支持高校高效率完成人事管理的日 常事務(wù)是適應(yīng)現(xiàn)代高校制度的要求推動高校人事管理走向科學(xué)化、規(guī)范化的必要條 件 計(jì)算機(jī)管理所無法比擬的優(yōu)點(diǎn)檢索迅速、查找方便、可靠性高、存儲量大、保密性 好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大的提高人事管理的效率 也是高??茖W(xué)化、 正規(guī)化的管理與世界接軌的重要條件,學(xué)校有對職工具體信息操作,對職工信息的查詢, 修改,增加和刪除,工
10、資的計(jì)算和發(fā)放需求.這個(gè)系統(tǒng)可以保存員工信息,根據(jù)輸入的數(shù) 據(jù)自動實(shí)現(xiàn)工資發(fā)放功能,也可以查詢該職工所有信息,也可以按職工在編號或姓名來 實(shí)現(xiàn)職工在修改,增加和刪除功能,實(shí)現(xiàn)了任意職工的工資查詢。職工信息保存在文件 里,實(shí)現(xiàn)文件保存功能2 .總體設(shè)計(jì)文檔從網(wǎng)絡(luò)中收集,己重新整理排版.word版本可編輯,歡迎下載支持.3 .詳細(xì)設(shè)計(jì)GUANLI-name: string-sex: string-address: string-id: string-job: string-number: int-classhour: int-newclsshour: int-pay: int"year:
11、 int-month: int-day: int«static»-laoshiji: int«static»-shiyanji: int«static»-xingzhengji: int«static»-shiyanbu: int«static»-xingzhengbu: int«static»-classpay: int+GUANLK)+outname(): string+outsex(): string+outaddress(): string+outid(): stri
12、ng+outjob(): string+outnumber(): int+outclasshour(): int+outnewclasshour(): int+outpay(): int+outyear(): int+outmonth(): int+outday(): int+changejob(): void+pay(): void+display(): void+newpay(): void+shanpay(): void4 .系統(tǒng)調(diào)試1 .圖:進(jìn)入主菜單:2 .圖:職工信息錄入:9word版本可編輯,歡迎下載支持.文檔從網(wǎng)絡(luò)中收集,己重新整理排版.word版本可編輯,歡迎下載支持.3 .
13、圖:輸入“N”回到主菜單:4 .圖:查詢職工信息:5 .圖:修改職工信息:6 .圖:增加職工信息:7 .圖:瀏覽職工信息:8 .圖:刪除職工信息:9 .返回主菜單,退出程序。10 結(jié)果分析這個(gè)設(shè)計(jì)的獨(dú)到指出就是,操作簡單,實(shí)現(xiàn)方便,基本實(shí)現(xiàn)了員工基本資料的查詢和修 改,對工資的操作也很簡潔方便。不足之處是挺多的功能都未實(shí)現(xiàn),比如整個(gè)系統(tǒng),職 工資料對外都是全部開放的,任何人都可對系統(tǒng)進(jìn)行操作,員工的資料還沒進(jìn)行保密和 封鎖工作,系統(tǒng)還有很多需要完善的地方,系統(tǒng)的實(shí)用性和靈活性都還很缺乏,不完善 之處還需繼續(xù)努力的修改11 總結(jié)這次的程序設(shè)計(jì)相對于上學(xué)期還是有了進(jìn)步的,這次的課設(shè)中,我遇到了很多
14、的問題,有的通過 思考或查看書本解決了,有的還留在腦子里,只有通過孜孜不倦的求索我們才會有進(jìn)步,不懂得思 考就不能真正的掌握一門知識。這次的實(shí)驗(yàn)給以了我警示,它讓我明白我所掌握的知識還很欠缺, 對于繼承與派生這一章的知識,我以為自己勉強(qiáng)掌握了,這次實(shí)驗(yàn)后我發(fā)現(xiàn)我掌握得還不夠?;?的保護(hù)成員公有繼承到派生類,類外是否可以通過對象來訪問呢,原先我認(rèn)為是可以的,經(jīng)過這次 程序設(shè)計(jì),我知道我錯(cuò)了??傊?,我覺得做學(xué)問不應(yīng)該馬虎,對于所學(xué)一定要有深入的理解,這也 是我這次課設(shè)得到的啟示。課程設(shè)計(jì)總體感覺就是有點(diǎn)小麻煩,也終于知道到當(dāng)初李珍輝 老師講的C+比上學(xué)期學(xué)的C語言要難要深奧很多也難了狠多,因?yàn)镃
15、+的知識面和深 度都比C大很多,學(xué)起來相對也比較吃力。而這次的課設(shè),把我在學(xué)這門課程存在的弊 端全部暴露出來了,原來對于這門課,我學(xué)到的僅僅是一些皮毛而已,在做程序的過程 中,發(fā)現(xiàn)好多功能我都無法用我腦中的知識去實(shí)現(xiàn)它,必須翻開課本依葫蘆畫瓢才能把 程序?qū)懗鰜?,還有遇到的一些要求根本沒遇到過,比如用文件保存的方式保存,這就得 用到C+里的文件流來輸入輸出,并保存到指定的文件里,這些知識點(diǎn)老實(shí)雖然沒講, 但是作為一個(gè)大學(xué)生,并不是老師不講就不看的,應(yīng)該自己去看,因?yàn)楹筮叺闹皇屈c(diǎn)反 而是最重要的,在我們班,有了好幾個(gè)同學(xué)都已經(jīng)把后邊的知識看了兒遍了,所以他們 用起來就得心應(yīng)手了,而我,也來不及去好
16、好看書了,只能厚著臉皮去問他們,讓他們 列個(gè)模版給我,然后再由自己去想程序的具體實(shí)行部分,這直接導(dǎo)致的結(jié)果就是浪費(fèi)了好多時(shí)間,所以我決定以后一定認(rèn)真聽課,堅(jiān)決不曠課早退,要把這么只是徹徹底底的 學(xué)好,學(xué)扎實(shí)。附:源程序#include <fstream.h>#include <string.h>class Person 人員類(抽象類)(protected:double num;編號char Name20; 姓名int Duty;人員類別標(biāo)志(1-教師,2-實(shí)驗(yàn)員,3-行政人員,4-教師兼實(shí)驗(yàn)員,5-行政兼教師)double Salary; 基本工資Person *ne
17、xt;指針域public:Person() 基類構(gòu)造next=0; 指針域設(shè)置為空)virtual -Person() 基類虛析構(gòu))virtual void Input()=O;從鍵盤輸入數(shù)據(jù)virtual void Input(ifstream& ifs)=O;從文件輸入數(shù)據(jù)virtual void Output()=0;向屏幕輸出數(shù)據(jù)virtual void Output(ofstream& ofs)=0: 向文件輸出數(shù)據(jù)virtual double lncoming()=0;計(jì)算收入friend class College;;class Teacher:virtual p
18、ublic Person 教師類(protected:int Hours; 教師課時(shí)public:為對象設(shè)置數(shù)據(jù)分為兩種途徑,通過1)構(gòu)造函數(shù),2)一般成員函數(shù)分開可以使得程序中應(yīng)用更加靈活本程序采用:缺省構(gòu)造+Input()Teacher() 構(gòu)造函數(shù),初始化部分?jǐn)?shù)據(jù)Duty=l;Salary=800;void Input() 鍵盤補(bǔ)充輸入其它數(shù)據(jù)cout«Hn 編號:";cin»num;cout«Hn 姓名:";cin»Name;cout«"n教師上學(xué)期課時(shí):";cin»Hours;Sala
19、ry=Incoming();)void Input(ifstream& ifs)(ifs»num»Name»Duty»Hours»Salary;)void Output()cout«num«nt,«Name«HtH«Duty«ntn«Hours«ntH«Salary«ntH«endl;)void Output(ofstream& ofs)(ofs«num«ntH«Name«ntH&
20、#171;Duty«HtM«Hours«"tH«Salary«Htn«endl;)double IncomingOif(Hours>120)return SaIary+(Hours-120)*20;elsereturn Salary;);class Assistant:virtual public Person 實(shí)驗(yàn)員protected:int Allowance;int Hours;public:Assistant()Duty=2;Salary=650;Allowance=150;)void Input()cout&
21、#171;Hn 編號:"cin»num;cout«Hn 姓名:";cin»Name;cout«"n實(shí)驗(yàn)員上學(xué)期實(shí)驗(yàn)課時(shí):";cin»Hours;Salary=Incoming();)void Input(ifstream& ifs)ifs»num»Name»Duty»Hours»Salary;)void Output()cout«num«ntH«Name«"tH«Duty«Htn
22、«Hours«HtH«Salary«,tH«endl;)void Output(ofstream& ofs)ofs«num«"t,'«Name«,'t"«Duty«,t"«Hours«"t"«Salary«"t"«endl;)double IncomingOif(Salary>70)return SaIary+Allowance+(Hou
23、rs-70)*20;else9word版本可編輯,歡迎下載支持.文檔從網(wǎng)絡(luò)中收集,己重新整理排版.word版本可編輯,歡迎下載支持.return Salary+Allowance;);class Manager:virtual public Person 行政人員(protected:int Allowance;public:Manager()Duty=3;Salary=750;Allowance=250;1void Input()(cout« "編號:“;cin»num;cout«H 姓名:";cin»Name;Salary=Inc
24、oming();)void Input(ifstream& ifs)ifs»num»Name»Duty»Salary;)void Output()cout«num«"t"«Name«"t"«Duty«,t"«"t"«Salary«"t"«endI;)void Output(ofstream& ofs)(ofs«num«ntH
25、1;Name«,tH«Duty«,tH«Salary«nt"«endl;)double IncomingOreturn Salary+Allowance;);class Teacher_Assistant:public Teachenpublic Assistant 教師兼實(shí)驗(yàn)員(public:Teacher_Assistant()Duty=4;Teacher: Salary=800;Assistant: :Allowance= 150;)void Input()cout«Hn 編號:";cin»
26、;num;cout«Hn 姓名:";cin»Name;cout«"n 教師上學(xué)期課時(shí):";cin»Teacher:Hours;Salary=Incoming();)void Input(ifstream& ifs)ifs»num»Name»Duty»Teacher:Hours»Salary;void Output()(cout«num«HtH«Name«HtH«Duty«ntH«Teacher:Ho
27、urs<<ntH«Salary«endl;)void Output(ofstream& ofs)ofs«num«ntH«Name«Htn«Duty«HtH«Teacher:Hours«HtH«Salary«HtH«endl:)double IncomingOif(Teacher: Hours> 120)return SaIary+(Teacher:Hours-120)*20+Allowance;elsereturn Salary+AIlow
28、ance;);class Manager_Teacher:public Manager,public Teacher 行政人員兼教師(public:Manager_Teacher()Duty=5;Manager: :Salary=750;void Input()cout«Hn 編號:";cin»num;cout«Hn 姓名:";cin»Name;cout«"n行政人員兼職教師上學(xué)期課時(shí):";cin»Hours;Salary=Incoming();)void Input(ifstream&
29、 ifs)(ifs»num»Name»Duty»Hours»Salary;)void Output()cout«num«HtH«Name«HtH«Duty«Htn«Hours«HtH«Salary«ntH«endl;)void Output(ofstream& ofs)(ofs«num«ntH«Name«,t,«Duty«HtM«Hours«&quo
30、t;tH«Salary«Htn«encIl;)double IncomingOreturn Manager:Salary+Allowance+Hours*20;);class College(private:Person *PL;void Clear();int College:Cfind(int ID,Person Person *p2);public:College();構(gòu)造-College。;析構(gòu)void Add();增加職工void Delete(); /刪除職工void ModifyO;/修改職工void Print(); 輸出職工信息void Save
31、();/職工信息存盤void Load();職工信息裝入void Find();查找void BuildQ;導(dǎo)引void Stat();/統(tǒng)計(jì);College: :College() /構(gòu)造函數(shù)(創(chuàng)建1個(gè)頭結(jié)點(diǎn)的鏈表)Person *p=new Teacher;PL=p;coutvv"自動裝入數(shù)據(jù)n"Build();)Conege:Conege()析構(gòu)函數(shù)(僅保留1個(gè)頭結(jié)點(diǎn))(Person *p=PL;while(p) 逐個(gè)刪除結(jié)點(diǎn),包括頭結(jié)點(diǎn)(PL=p->next;delete p;p=PL;)PL=O;)void College:Add() 增力口職工char c
32、;do(cout«"n* 增加職工查找尾結(jié)點(diǎn)Person *p=PL;while(p->next)p=p->next;int ch;cout<< ”輸入職工分類碼1-教師,2-實(shí)驗(yàn)員,3-行政人員,4-教師兼實(shí)驗(yàn)員,5-行政兼教 師:n”; cin»ch;創(chuàng)建新結(jié)點(diǎn),錄入數(shù)據(jù),連接到鏈表Teacher *pt;Assistant *pa;Manager *pm;Teacher_Assistant *pta;Manager_Teacher *pmt;switch(ch)(case 1: pt=new Teacher; pt->Input
33、();p->next=pt;break;case 2: pa=new Assistant; pa->Input();p->next=pa;break;case 3: pm=new Manager; pm->Input();p->next=pm;break;case 4: pta=new Teacher_Assistant; pta->Input();p->next=pta;break;case 5: pmt=new Manager_leacher; pnit->Input();p->next=pmt;break;default: retur
34、n;1coutvv"是否進(jìn)行循環(huán)?y/nn"cin»c;while(c=,y'llc=,Y,);Save();)void College:Clear() /清除所有的職工結(jié)點(diǎn)(僅保留頭結(jié)點(diǎn))Person *p=PL->next;while(p)(PL->next=p->next;delete p;p=PL->next;)/查找void College:Find()double ID;Person *pl;Person *p2;coutvv"輸入你要查詢的編號:”;cin»ID;pl=PL->next;p2=
35、PL;while(pl)if(p 1 ->num=ID)break; 找到else(p2=pl; 繼續(xù)查找pl=pl->next;)if(!pl) cout«H找不到你所查詢的人!n請確認(rèn)你所查詢的編號是否出 錯(cuò)! !iT;retum;else cout«"n* 職工信息表 *n"coutv<”編號姓名 崗位 課時(shí)收入情況(元)n”;pl->Output();)查找職工結(jié)點(diǎn)(返回1-找到,0-未找至IJ.結(jié)點(diǎn)指針由pl返回,p2為前看指針)int College:Cfind(int ID,Person *pl,Person *p2
36、)*pl=PL->next;*p2=PL;while(*pl)20 word版本可編輯,歡迎下載支持.文檔從網(wǎng)絡(luò)中收集,己重新整理排版.word版本可編輯.歡迎下載支持.p2->next=p 1 ->next; 連接delete pl;coutvv"正確刪除!n”;)Save();)void College:Modify() 修改職工(cout«"n* 修改職工int num;Person *pl,*p2;coutvv"編號:"cin»num;if(!Cfind(num,&pl,&p2)coutvv”
37、指定的人員沒有找到!n")else(pl->Output(); 輸出原來的職工信息(做提示)pl->Input(); /輸入新的職工信息(更新)22word版本可編輯.歡迎下載支持.coutvv”修改完成八屋;)Save();)void College:Print()輸出職工信息(cout«"n* 職工信息表 *n"COUt<<”編號姓名 崗位 課時(shí)收入情況(元)!1";Person *p=PL->next;if(!p)(coutvv"無職工記錄!n"return;1while(p) 遍歷鏈表,
38、輸出職工信息(p->Output();p=p->next;) void College:Save() 職工信息存盤?23word版本可編輯.歡迎下載支持.文檔從網(wǎng)絡(luò)中收集,己重新整理排版.word版本可編輯,歡迎下載支持.ofstream f("Person.dat",ios:out); 打開文件遍歷輸出至文件Person *p=PL->next;while(p)p->Output(f);p=p->next;)f.close(); 關(guān)閉文件coutvv"職工信息已經(jīng)保存在Person.dat.n")void College:
39、Build()職工信息(char buf81; 臨時(shí)空間int Duty; 人員類型Person *p2; 新建結(jié)點(diǎn)的指針long t; 讀寫位置清除現(xiàn)有結(jié)點(diǎn)(保留頭結(jié)點(diǎn))Clear();打開文件ifstream f("Person.dat",ios:in);建立結(jié)點(diǎn),讀數(shù)據(jù)Person *p=PL; /尾結(jié)點(diǎn)指針while(l)讀取人員類型t=f.tellg();f»buf»buf»Duty;if(f)(根據(jù)人員類型創(chuàng)建新結(jié)點(diǎn)switch(Duty)(case 1: p2=new Teacher; break;case 2: p2=new A
40、ssistant; break;case 3: p2=new Manager; break;case 4: p2=new Teacher_Assistant; break;case 5: p2=new Manager_Teacher; break; default: f.close(); return;) p->next=p2;p=p->next;f.seekg(t);p->Input(f);)elsebreak;)關(guān)閉文件f.close();)void College:Load()職工信息錄入(char ah;int c;cout«"n*職工信息錄入do
41、(coutvv”輸入要錄入的職工個(gè)數(shù):n";cin»c;for(int i=l:i<=c;i+)查找尾結(jié)點(diǎn)Person *p=PL;while(p->next)p=p->next;int ch;coutv<”輸入職工分類碼口-教師,2-實(shí)驗(yàn)員,3-行政人員,4-教師兼實(shí)驗(yàn)員,5-行政兼教師 cin»ch;創(chuàng)建新結(jié)點(diǎn),錄入數(shù)據(jù),連接到鏈表Teacher *pt;Assistant *pa;Manager *pm;Teacher_Assistant *pta;Manager_Teacher *pmt;switch(ch)(case 1: pt=
42、new Teacher; pt->Input();p->next=pt;break;case 2: pa=new Assistant; pa->Input();p->next=pa;break;case 3: pm=new Manager; pm->Input();p->next=pm;break;case 4: pta=new Teacher_Assistant; pta->Input();p->next=pta;break;case 5: pmt=new Manager_leacher; pmt->Input();p->next=pmt;break;default: return;)Save();coutv<”是否還要繼續(xù)錄入職工信息?? y/nn"cin»ah; while(ah='Y,llah=,y,);)void College:Stat()(Person *pl;Person *p2;double Sa=0;int a,b,i=0;doubl
溫馨提示
- 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ù)相關(guān)項(xiàng)目投資計(jì)劃書
- 歷史題材電影辛亥革命的評析
- 教育咨詢服務(wù)合同協(xié)議書
- 大型設(shè)備安裝與調(diào)試工程合同
- 初中語文課文中的比喻與擬人教學(xué)教案
- 2024年全國英語競賽《A類研究生》決賽試題及答案
- 醫(yī)療影像診斷軟件授權(quán)協(xié)議
- 弱電智能化安裝工程承包合同
- 企業(yè)工礦產(chǎn)品購銷合同
- 建筑裝飾工程招投標(biāo)與合同管理
- 2022年江蘇省五年制專轉(zhuǎn)本考試英語真題(試卷+答案)
- 手術(shù)室穿脫手術(shù)衣小講課
- 2024年蕪湖職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫及答案解析
- (正式版)SHT 3075-2024 石油化工鋼制壓力容器材料選用規(guī)范
- (2024年)幼兒園營養(yǎng)膳食
- 2024年度-小學(xué)語文教師經(jīng)驗(yàn)交流
- 電網(wǎng)防高墜安全教育
- 中醫(yī)養(yǎng)生-春季養(yǎng)生
- 幼兒園防欺凌家長會內(nèi)容
- 興隆街辦拆遷規(guī)劃方案
- 2《秦腔》公開課一等獎(jiǎng)創(chuàng)新教學(xué)設(shè)計(jì) 統(tǒng)編版高中語文選擇性必修下冊
評論
0/150
提交評論