版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 成成 績(jī)績(jī) 評(píng)評(píng) 定定 表表學(xué)生姓名初珊珊班級(jí)學(xué)號(hào)1203060111專 業(yè)通信工程課程設(shè)計(jì)題目小型人員信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)評(píng)語(yǔ)組長(zhǎng)簽字:成績(jī)?nèi)掌?20 年 月 日課程設(shè)計(jì)任務(wù)書課程設(shè)計(jì)任務(wù)書學(xué) 院信息科學(xué)與工程專 業(yè)通信工程學(xué)生姓名初珊珊班級(jí)學(xué)號(hào)1203060111課程設(shè)計(jì)題目小型人員信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)實(shí)踐教學(xué)要求與任務(wù)實(shí)踐教學(xué)要求與任務(wù)某小型公司主要有四類人員:經(jīng)理、兼職技術(shù)人員、銷售經(jīng)理和兼職推銷員。現(xiàn)在,需要存儲(chǔ)這些人員的姓名、編號(hào)、級(jí)別、當(dāng)月薪水,計(jì)算月薪總額并顯示全部信息。人員編號(hào)基數(shù)為 1000,每輸入一個(gè)人員信息編號(hào)順序加 1。程序要有對(duì)所有人員提升級(jí)別的功能。本例
2、中為簡(jiǎn)單起見,所有人員的初始級(jí)別均為 1 級(jí),然后進(jìn)行升級(jí),經(jīng)理升為 4 級(jí),兼職技術(shù)人員和銷售經(jīng)理升為 3 級(jí),推銷員認(rèn)為 1 級(jí)。月薪計(jì)算辦法是:經(jīng)理拿固定月薪 8000 元;兼職技術(shù)人員按每小時(shí) 100 元領(lǐng)取月薪;兼職推銷員的月薪按該推銷員當(dāng)月銷售額的 4提成;銷售經(jīng)理即拿固定月薪也領(lǐng)取銷售提成,固定月薪為 5000 元,銷售提成為所管轄部門當(dāng)月銷售總額的千分之五。要求為每一類人員單獨(dú)建立文件,并在每個(gè)文件中手工錄入一些人員基本信息,并根據(jù)這些基本信息計(jì)算職工的月薪,并將計(jì)算結(jié)果保存入相應(yīng)的磁盤文件中。要求編寫程序?qū)崿F(xiàn)上述功能,并且可以通過(guò)實(shí)例演示上述功能。工作計(jì)劃與進(jìn)度安排工作計(jì)劃與
3、進(jìn)度安排第 17 周:分析題目,查閱課題相關(guān)資料,進(jìn)行類設(shè)計(jì)、算法設(shè)計(jì);第 18 周:程序的設(shè)計(jì)、調(diào)試與實(shí)現(xiàn);第 19 周:程序測(cè)試與分析,撰寫課程設(shè)計(jì)報(bào)告,進(jìn)行答辯驗(yàn)收。指導(dǎo)教師: 201 年 月 日專業(yè)負(fù)責(zé)人:201 年 月 日學(xué)院教學(xué)副院長(zhǎng):201 年 月 日摘 要C+是支持面向過(guò)程的設(shè)計(jì),更是支持基于對(duì)象和面向?qū)ο蟮某绦蛟O(shè)計(jì)。類是C+中十分重要的概念,它是實(shí)現(xiàn)面向?qū)ο蟪绦蛟O(shè)計(jì)的基礎(chǔ)。本文采用虛基類及其派生類實(shí)現(xiàn)了對(duì)小型人員信息的管理,類的封裝性和信息隱蔽性可以很好的保護(hù)公司員工的信息,同時(shí)采用了 Visual C+ 6.0 的控制臺(tái)工程和 MFC 工程實(shí)現(xiàn)了對(duì)員工基本信息的輸入和全部信
4、息的輸出及保存。關(guān)鍵詞:信息管理;類;控制臺(tái)工程;MFC 工程目 錄1 需求分析.12 算法基本原理.13 類設(shè)計(jì).24 基于控制臺(tái)的應(yīng)用程序.34.1 類的接口設(shè)計(jì).44.2 類的實(shí)現(xiàn).74.3 主函數(shù)設(shè)計(jì).114.4 基于控制臺(tái)的應(yīng)用程序測(cè)試.125 基于 MFC 的應(yīng)用程序.145.1 基于 MFC 的應(yīng)用程序設(shè)計(jì).155.1.1 MFC 程序界面設(shè)計(jì).155.1.2 MFC 程序代碼設(shè)計(jì).165.2 基于 MFC 的應(yīng)用程序測(cè)試.21結(jié) 論.23參考文獻(xiàn).241 需求分析(1)對(duì)小型公司進(jìn)行小型人員信息操作管理系統(tǒng)。該公司主要有四類人員:經(jīng)理、銷售經(jīng)理、兼職技術(shù)人員、兼職推銷員;定義一
5、個(gè)虛基類并且派生四個(gè)子類。(2)系統(tǒng)需要存儲(chǔ)這些人員的姓名、編號(hào)、級(jí)別、當(dāng)月薪水,輸入基本信息,計(jì)算月薪總額,顯示并保存全部信息;每個(gè)派生類的構(gòu)造函數(shù)要實(shí)現(xiàn)對(duì)其特有數(shù)據(jù)成員的初始化。(3)系統(tǒng)具體要求:編號(hào)要求:人員編號(hào)基數(shù)為 1000,每輸入一個(gè)員工姓名編號(hào)加 1;編號(hào)定義為全局靜態(tài)變量即可。級(jí)別要求:所有人員的初始級(jí)別均為 1 級(jí),然后進(jìn)行升級(jí),經(jīng)理升為4 級(jí),兼職技術(shù)人員和銷售經(jīng)理升為 3 級(jí),兼職推銷員為 1 級(jí);直接對(duì)級(jí)別賦值即可。月薪要求:經(jīng)理拿固定月薪 8000 元;兼職技術(shù)人員按每小時(shí) 100 元領(lǐng)取月薪;兼職推銷員的月薪按該推銷員當(dāng)月銷售額的 4提成;銷售經(jīng)理既拿固定月薪也領(lǐng)
6、取銷售提成,固定月薪為 5000 元,銷售提成為所管轄部門當(dāng)月銷售總額的千分之五??傮w要求:為每一類人員單獨(dú)建立文件,并在每個(gè)文件中手工錄入一些人員基本信息,并根據(jù)這些基本信息計(jì)算職工的月薪,并將計(jì)算結(jié)果保存入相應(yīng)的磁盤文件中。2 算法基本原理(1)定義一個(gè)員工虛基類 Employmee( ),包括員工姓名、級(jí)別、編號(hào)月薪共有的基本數(shù)據(jù)成員;(2)在基類的基礎(chǔ)上派生出經(jīng)理 Mansger( )類、銷售經(jīng)理 Salemansger( )類、兼職技術(shù)人員 Technology( )類和兼職推銷員 Saleman( )類,并在這四個(gè)派生類中添加各自數(shù)據(jù)成員和成員函數(shù)。具體分析如下:?jiǎn)T工編號(hào)的可以定義
7、全局靜態(tài)變量 static int count=0;并且初始化員工編號(hào) number=1000+count;每輸入一個(gè)員工的姓名編號(hào)加 1。員工等級(jí)按照要求直接賦值即可;在派生類的構(gòu)造函數(shù)中初始化數(shù)據(jù)成員并且按照要求計(jì)算各成員的月薪。(3)定義一個(gè)結(jié)構(gòu)體鏈表 struct Linked,并將鏈表的頭指針頭封裝在友元類 Head( )中。(4)運(yùn)行時(shí)構(gòu)造對(duì)象指針,并存在鏈表中,利用類中的成員函數(shù)來(lái)實(shí)現(xiàn)對(duì)鏈表節(jié)點(diǎn)的打印、添加、保存。這些操作均作為數(shù)據(jù)結(jié)構(gòu)中對(duì)單鏈表的操作。3 類設(shè)計(jì)首先定義一個(gè)員工基類 Employee,由于要派生出多個(gè)子類,所以將其定義為虛基類;在類外定義全局靜態(tài)變量,用于記錄員
8、工的編號(hào)。虛基類 Employee中的數(shù)據(jù)成員包括姓名、編號(hào)、等級(jí)、月薪。虛基類的成員函數(shù)包括打印函數(shù) printf( ),并聲明友元類。然后派生出經(jīng)理 Mansger 類、銷售經(jīng)理 Salemansger 類、兼職技術(shù)人員Technology 類和兼職推銷員 Saleman 類。在派生類 Mansger 的構(gòu)造函數(shù)直接對(duì)月薪和等級(jí)賦值:月薪 8000,等級(jí) 4;在派生類 Salemansger 的構(gòu)造函數(shù)中定義特有的數(shù)據(jù)成員:銷售總額 sum1,并根據(jù)要求計(jì)算月薪,等級(jí)賦值 3;在派生類 Technology 的構(gòu)造函數(shù)中定義特有的數(shù)據(jù)成員:工作時(shí)間 time,并根據(jù)要求計(jì)算月薪,等級(jí)賦值
9、3;在派生類 Saleman 的構(gòu)造函數(shù)中定義特有的數(shù)據(jù)成員:銷售額 sum2,并根據(jù)要求計(jì)算月薪,等級(jí)賦值 1。派生類的功能有打印函數(shù) printf( ),儲(chǔ)存函數(shù) save( )。友元類 Head 存放的數(shù)據(jù)成員有 Linked top,功能有構(gòu)造函數(shù) Head( )、插入函數(shù) Insert( )、打印函數(shù) printf( )以及析構(gòu)函數(shù)Head( );其中功能構(gòu)造函數(shù)用來(lái)開辟儲(chǔ)存空間,插入函數(shù)采用單鏈表現(xiàn)實(shí)信息的輸入,打印函數(shù)用來(lái)輸出錄入員工的全部信息,析構(gòu)函數(shù)用來(lái)釋放空間?;惻c各派生類之間的關(guān)系如下圖所示:char name30;int number;int level;float
10、wages;Employee()void printf()friend class Headvoid save()void printf()friend class Headint sum1Salemansger():Employee()void save ()Technology():Employee()float timevoid printf()friend class Headvoid save ()int sum2Saleman():Employee()void printf()friend class Headvoid save ()Mansger():Employee() 圖 1
11、 Employee 類和其派生類關(guān)系的圖形表示在程序?qū)崿F(xiàn)過(guò)程中,各派生類的成員函數(shù)需要訪問(wèn)基類 Employee 的數(shù)據(jù)成員,利用公有繼承方式派生,同時(shí)將 Employee 類中的數(shù)據(jù)成員的訪問(wèn)控制設(shè)置為保護(hù)類型。這樣,經(jīng)過(guò)公有派生之后,基類的保護(hù)成員在派生類中依然是保護(hù)成員,可以被派生類的成員函數(shù)訪問(wèn)。4 基于控制臺(tái)的應(yīng)用程序整個(gè)程序分為三部分,各種職員的類,結(jié)構(gòu)體鏈表以及封裝在結(jié)構(gòu)體鏈表的類。實(shí)現(xiàn)時(shí)先生成各種職員的對(duì)象指針,之后將生成的對(duì)象指針插入到鏈表中,最后通過(guò)封裝類類的成員函數(shù)對(duì)鏈表節(jié)點(diǎn)進(jìn)行操作,實(shí)現(xiàn)對(duì)員工的操作。4.1 類的接口設(shè)計(jì)#include#include#includeu
12、sing namespace std;static int count=0; /全局動(dòng)態(tài)變量,用于記錄員工編號(hào)/定義虛基類class Employee public: Employee() /構(gòu)造函數(shù),初始化員工基本信息 coutname; +count; number=count+1000; level=1; void printf(); /打印函數(shù) friend class Head; /聲明友元類protected: /數(shù)據(jù)成員為保護(hù)類型char name30;int number;int level;float wages;/派生類 Mansgerclass Mansger: publ
13、ic virtual Employee public: Mansger():Employee()level=4;wages=8000; /構(gòu)造函數(shù)定義 void save(); /儲(chǔ)存函數(shù) void printf(); /打印函數(shù) friend class Head; /聲明友元類; /派生類 Salemansgerclass Salemansger: public virtual Employee public: Salemansger():Employee() /構(gòu)造函數(shù)定義 level=3; coutsum1; wages=5000+0.005*sum1; /計(jì)算銷售經(jīng)理工資 void
14、save (); /儲(chǔ)存函數(shù) void printf(); /打印函數(shù) friend class Head;protected: int sum1; /銷售總額;/派生類 Technologyclass Technology: public virtual Employee public: Technology():Employee() /構(gòu)造函數(shù)定義 level=3; couttime; wages=100*time; /計(jì)算技術(shù)人員工資 void save(); /儲(chǔ)存函數(shù) void printf(); /打印函數(shù) friend class Head;protected: float ti
15、me; /工作時(shí)間;/派生類 Salemanclass Saleman: public virtual Employee /public: Saleman():Employee() /構(gòu)造函數(shù)定義 level=1; coutsum2; wages=0.04*sum2; /計(jì)算銷售員工資 void save (); /儲(chǔ)存函數(shù) void printf(); friend class Head;protected:int sum2; /銷售總額;/定義友元類class Head public: Head(); /構(gòu)造函數(shù) void Insert(Employee*temp); /單鏈表的插入函數(shù)
16、void printf(); /打印函數(shù) Head(); /析構(gòu)函數(shù)private: Linked*top; /單鏈表的頭結(jié)點(diǎn);經(jīng)過(guò)公有派生,四個(gè)派生類獲得了除構(gòu)造函數(shù)之外的 Employee 類的全部成員,由于基類的成員是公有和保護(hù)類型,因此在派生類中的成員函數(shù)中,基類繼承來(lái)的成員全部可以訪問(wèn),而對(duì)于建立派生類對(duì)象的外部模塊來(lái)講,基類的保護(hù)成員是無(wú)法訪問(wèn)的。通過(guò)保護(hù)訪問(wèn)類型和公有的繼承方式,實(shí)現(xiàn)了基類Employee 的數(shù)據(jù)的有效共享和可靠保護(hù)。友元類可以實(shí)現(xiàn)外部函數(shù)對(duì)類中數(shù)據(jù)成員的調(diào)用,在程序中,員工的基本信息的輸入,全部信息的保存都是在基類、派生類的構(gòu)造函數(shù)以及友元類的成員函數(shù)中完成,它
17、們的清理工作在友元類析構(gòu)函數(shù)中完成。4.2 類的實(shí)現(xiàn)類的實(shí)現(xiàn)/基類輸出函數(shù)void Employee:printf() cout姓名:name 編號(hào):number 等級(jí):level 月薪:wagesendl;/派生類 Mansger 輸出函數(shù)void Mansger:printf() cout姓名:name 編號(hào):number 等級(jí):level 月薪:wagesendl;/派生類 Mansger 儲(chǔ)存函數(shù)void Mansger:save() ofstream fs(f:Mansger.txt); fs姓名:name 編號(hào):number 等級(jí):level 月薪:wagesendl; coutM
18、ansger OKendl; /派生類 Salemansger 輸出函數(shù)void Salemansger:printf() cout姓名:name 編號(hào):number 等級(jí):level 月薪:wagesendl;/派生類 Salemansger 儲(chǔ)存函數(shù)void Salemansger:save()ofstream fs(f:Salemansger.txt); fs姓名:name 編號(hào):number 等級(jí):level 月薪:wagesendl; coutSalemansger OKendl; /派生類 Technology 輸出函數(shù)void Technology:printf() cout姓名
19、:name 編號(hào):number 等級(jí):level 月薪:wagesendl;/派生類 Technology 儲(chǔ)存函數(shù)void Technology:save()ofstream fs(f:Technology.txt); fs姓名:name 編號(hào):number 等級(jí):level 月薪:wagesendl; coutTechnology OKendl; /派生類 Saleman 輸出函數(shù)void Saleman:printf() cout姓名:name 編號(hào):number 等級(jí):level 月薪:wagesendl;/派生類 Saleman:儲(chǔ)存函數(shù)void Saleman:save()ofst
20、ream fs(f:Saleman.txt); fs姓名:name 編號(hào):number 等級(jí):level 月薪:wagesendl; coutSaleman OKnext=NULL;void Head:Insert(Employee*temp) /鏈表的插入函數(shù)Linked*ttop=top; while(ttop-next) /鏈表的頭結(jié)點(diǎn)的下個(gè)結(jié)點(diǎn)不為空時(shí),開辟空間ttop=ttop-next; ttop-next=new Linked; ttop-next-p=temp; ttop-next-next=0;/鏈表的輸出函數(shù)void Head:printf() Linked*pbuf=to
21、p-next; while(pbuf!=NULL)pbuf-p-printf(); /插入打印函數(shù)pbuf=pbuf-next;/鏈表的析構(gòu)函數(shù)Head:Head() Linked*ttop,*q;ttop=top-next;while(ttop!=NULL) q=ttop;ttop=ttop-next;delete q; /釋放空間/菜單函數(shù)void menu(Head*Data) int n;coutn;switch(n) /多分支選擇語(yǔ)句 case 1: Data-printf(); /輸出鏈表節(jié)點(diǎn) break; case 0: break;coutn;if(n!=0)menu(Data
22、); /遞歸調(diào)用/菜單函數(shù) 1void menu1(Head*Data) Mansger*M; /聲明類指針Salemansger*S;Technology*T;Saleman*S1;int n;coutn;switch(n) case 1:M=new Mansger; /構(gòu)造對(duì)象指針M-save(); /儲(chǔ)存對(duì)象數(shù)據(jù)Data-Insert(M); /將對(duì)象指針插入到鏈表中break;case 2:S=new Salemansger; /構(gòu)造對(duì)象指針S-save(); /儲(chǔ)存對(duì)象數(shù)據(jù)Data-Insert(S); /將對(duì)象指針插入到鏈表中break;case 3:T=new Technolog
23、y; /構(gòu)造對(duì)象指針T-save(); /儲(chǔ)存對(duì)象數(shù)據(jù)Data-Insert(T); /將對(duì)象指針插入到鏈表中break;case 4:S1=new Saleman; /構(gòu)造對(duì)象指針S1-save(); /儲(chǔ)存對(duì)象數(shù)據(jù)Data-Insert(S1); /將對(duì)象指針插入到鏈表中break;case 0:break;coutn;if(n!=0)menu1(Data); /遞歸調(diào)用 在類的成員函數(shù)實(shí)現(xiàn)過(guò)程中,派生類的成員函數(shù)調(diào)用了基類的構(gòu)造函數(shù),只是整個(gè)調(diào)用過(guò)程中完全是由系統(tǒng)內(nèi)部完成?;惖谋Wo(hù)數(shù)據(jù)成員,經(jīng)過(guò)公有派生之后,在派生類中是以保護(hù)成員的身份出現(xiàn)的,派生類的成員函數(shù)可以自由地進(jìn)行訪問(wèn)。通過(guò)定
24、義友元類訪問(wèn)類內(nèi)的保護(hù)成員,并通過(guò)單鏈表法開辟輸入空間以便插入員工的信息。最后通過(guò)友元類的析構(gòu)函數(shù)釋放空間。4.3 主函數(shù)設(shè)計(jì)/主函數(shù)void main() Head Data; /構(gòu)造對(duì)象int n;while(1) coutn;switch(n) /多分支語(yǔ)句進(jìn)行菜單的選擇case 1:menu1(&Data); break;case 2:menu(&Data);break;case 0:system(pause);return;system(cls);在程序的主函數(shù)部分,定義一個(gè)構(gòu)造對(duì)象以便實(shí)現(xiàn)調(diào)用。Switch 多分支選擇語(yǔ)句可以選擇菜單從而實(shí)現(xiàn)輸入、打印操作。4.4
25、基于控制臺(tái)的應(yīng)用程序測(cè)試程序運(yùn)行結(jié)果如圖 2-1 和 2-2 所示。 圖 2-1 程序運(yùn)行結(jié)果 1圖 2-2 程序運(yùn)行結(jié)果 2為每類員工保存的文件夾如圖 3-1 所示的Mansger.txt、Salemansger.txt、Saleman.txt、Technology.txt:圖 3-1 存盤文件夾為經(jīng)理建立的文件夾打開后如圖 3-2 所示: 圖 3-2 顯示經(jīng)理文件夾為銷售經(jīng)理建立的文件夾打開后如圖 3-3 所示: 圖 3-3 顯示銷售經(jīng)理文件夾 為兼職技術(shù)人員建立的文件夾打開后如圖 3-4 所示:圖 3-4 顯示兼職技術(shù)人員文件夾為兼職推銷員建立的文件夾打開后如圖 3-5 所示:圖 3-5
26、 顯示兼職推銷員文件夾從圖 2-1 到 3-5 可以看出,在 DOS 界面通過(guò)對(duì)菜單的選擇可以輸入和打印員工的信息。經(jīng)理只需要輸入姓名,銷售經(jīng)理要輸入姓名和當(dāng)月的部門的銷售總額,兼職技術(shù)人員要輸入姓名和工作時(shí)間,兼職推銷員要輸入姓名和月銷售額,然后選擇打印菜單即可輸出各類人員的全部信息,而這些信息已經(jīng)通過(guò)程序的文件輸出流以 TXT 的格式保存在了電腦磁盤 F:梁庶芹文件夾中。打開后便可顯示各類員工的全部信息。5 基于 MFC 的應(yīng)用程序MFC 是通過(guò)窗口和控件實(shí)現(xiàn)輸入輸出,設(shè)置 MFC 界面也很重要,界面的美觀程度直接影響了程序設(shè)計(jì)的好壞。下面在 MFC 類的框架下加入上述類并實(shí)現(xiàn)人員的信息管
27、理,通過(guò)圖形界面的輸入和輸出。5.1 基于 MFC 的應(yīng)用程序設(shè)計(jì)5.1.1 MFC 程序界面設(shè)計(jì)首先在 VC 中建立 MFC AppWizard(exe)工程,名稱為 lsq,并在向?qū)У腟tep1 中選擇 Dialog based,即建立基于對(duì)話框的應(yīng)用程序,如下圖 41 和 4-2所示。圖 4-1 建立 MFC AppWizard(exe)工程圖 4-2 建立基于對(duì)話框的應(yīng)用程序?qū)?duì)話框資源中的默認(rèn)對(duì)話框利用工具箱改造成如下界面,如圖 4-3 所示。圖 4-3 顯示員工信息程序界面設(shè)計(jì)圖 4-3 所示的界面中包含了 5 個(gè) Group Box,7 個(gè) Static Text 控件,5 個(gè)B
28、utton 控件,和 15 個(gè) Edit Box 控件,控件的基本信息列表如下表 1 所示。表 1 控件基本信息控件類別控件 ID控件 Caption說(shuō)明職位 姓名 級(jí)別 月薪Group Box IDC_STATIC 存盤見圖 6經(jīng)理銷售經(jīng)理技術(shù)人員推銷員銷售總額工作時(shí)間Static TextIDC_STATIC銷售額見圖 6 IDC_BUTTON1 提交 IDC_BUTTON2 Mansger IDC_BUTTON3Salemansger IDC_BUTTON4TechnologyBotton IDC_BUTTON5 Saleman見圖 6 IDC_JL姓名欄第一個(gè) Edit IDC_XSJ
29、L姓名欄第二個(gè) EditIDC_JSRY姓名欄第三個(gè) EditIDC_TXY姓名欄第四個(gè) Edit IDC_DJ1級(jí)別欄第一個(gè) Edit IDC_DJ2級(jí)別欄第二個(gè) Edit IDC_DJ3級(jí)別欄第三個(gè) Edit IDC_DJ4級(jí)別欄第四個(gè) EditEdit BoxIDC_YX1月薪欄第一個(gè) EditIDC_YX1月薪欄第二個(gè) EditIDC_YX1月薪欄第三個(gè) EditIDC_YX1月薪欄第四個(gè) Edit IDC_XSZE銷售總額右邊 EditIDC_GZSJ工作時(shí)間右邊 EditIDC_XSE銷售額右邊 Edit5.1.2 MFC 程序代碼設(shè)計(jì)為了能夠?qū)?duì)話框界面上的控件能夠與代碼聯(lián)系起來(lái)
30、,需要為 15 個(gè) Edit Box 控件建立 Member Variables,按 Ctrl+w 鍵進(jìn)入 MFC ClassWizard 界面,選擇 Member Variables 選項(xiàng)卡,可顯示成員變量設(shè)置界面,如圖 4-4 所示。圖 4-4 成員變量設(shè)置界面 1通過(guò)該界面設(shè)置與 15 個(gè) Edit Box 控件對(duì)應(yīng)的成員變量,具體 Type 與Member 請(qǐng)?jiān)斠妶D 4-4MFC 編寫代碼也是非常重要的階段,可以借鑒在設(shè)計(jì)基于 DOS 界面的控制臺(tái)應(yīng)用程序的代碼,并將其作必要的改寫,具體改寫如下。各員工的姓名直接在 MFC 界面的姓名檔中輸入,等級(jí)和月薪直接賦值即可。修改內(nèi)容包括:將顯
31、示員工信息的 prinft( )函數(shù)去掉,因?yàn)樵趫D形界面的程序上已經(jīng)不需要連個(gè)函數(shù)承擔(dān)輸出功能了;將存盤函數(shù) save( )去掉直接在 MFC 界面的存盤檔位每類員工建立文件夾并保存,仍然使用文件輸出流;菜單函數(shù)也不再需要,直接通過(guò)對(duì)按鈕的選擇進(jìn)行輸入輸出和存盤操作。具體代碼如下:/為提交鍵編寫的程序,用來(lái)實(shí)現(xiàn)信息的輸出:void CLsqDlg:OnButton1( ) UpdateData(TRUE);if(m_Mansger) /為經(jīng)理的等級(jí)和月薪賦值 m_level1=4;m_wages1=8000;if(m_Salemansger) /為銷售經(jīng)理的等級(jí)和月薪賦值 m_level2=3
32、;m_wages2=5000+m_sum2*0.005;if(m_Technology) /為兼職技術(shù)人員的等級(jí)和月薪賦值 m_level3=3;m_wages3=m_time*100;if(m_Saleman) /為兼職推銷員的等級(jí)和月薪賦值 m_level4=1;m_wages4=m_sum1*0.04;UpdateData(FALSE);/為經(jīng)理建立文件夾,將其信息保存在磁盤中void CLsqDlg:OnButton2() ofstream fs(f:MFCMansger.txt); fs姓名:m_Mansger 等級(jí):m_level1 月薪:m_wages1endl;/為銷售經(jīng)理建立文件夾,將其信息保存在磁盤中void CLsqDlg:OnButton3() ofstream fs(f:MFCSalemansger.txt); fs姓名:m_Salemansger 等級(jí):m_level2 月薪:m_wages2endl;/為兼職技術(shù)人員建立文件夾,將其信息保存在磁盤中void CLsqDlg:OnButton4() ofstream fs(f:MFCTechnology.txt); fs姓名:m_Technology 等級(jí):m_level3 月
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)二年級(jí)數(shù)學(xué)上冊(cè)口算題
- 2024-2025年高中化學(xué)課時(shí)分層作業(yè)5元素的電負(fù)性及其變化規(guī)律含解析魯科版選修3
- 西門子油煙機(jī)指導(dǎo)書
- 2025年年度尊重生命總結(jié)報(bào)告
- 二次消防改造工程合同范本
- 海南經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院《建筑構(gòu)造Ⅰ》2023-2024學(xué)年第二學(xué)期期末試卷
- 福州科技職業(yè)技術(shù)學(xué)院《德語(yǔ)口譯》2023-2024學(xué)年第二學(xué)期期末試卷
- 常州信息職業(yè)技術(shù)學(xué)院《中學(xué)語(yǔ)文課程與教學(xué)論》2023-2024學(xué)年第二學(xué)期期末試卷
- 宿遷學(xué)院《編譯原理》2023-2024學(xué)年第二學(xué)期期末試卷
- 烏蘭察布職業(yè)學(xué)院《建筑物理》2023-2024學(xué)年第二學(xué)期期末試卷
- 2024年度碳陶剎車盤分析報(bào)告
- 2025年1月 浙江首考英語(yǔ)試卷
- 十首最美的唐詩(shī)
- 2024年中考二輪專題復(fù)習(xí)道德與法治主觀題答題技巧(小論文)之演講稿
- 質(zhì)檢工作計(jì)劃書2025質(zhì)檢部工作計(jì)劃范文
- 《纏論的實(shí)戰(zhàn)技法》課件
- 新版標(biāo)準(zhǔn)化機(jī)電專業(yè)管理體系解讀課件
- 承包魚塘維修施工合同范例
- 耶魯綜合抽動(dòng)嚴(yán)重程度量表正式版
- 水利水電工程建設(shè)常見事故類型及典型事故分析(標(biāo)準(zhǔn)版)
- 政府采購(gòu)項(xiàng)目采購(gòu)需求調(diào)查指引文本
評(píng)論
0/150
提交評(píng)論