實驗報告格式_C++程序設(shè)計基礎(chǔ)_第1頁
實驗報告格式_C++程序設(shè)計基礎(chǔ)_第2頁
實驗報告格式_C++程序設(shè)計基礎(chǔ)_第3頁
實驗報告格式_C++程序設(shè)計基礎(chǔ)_第4頁
實驗報告格式_C++程序設(shè)計基礎(chǔ)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、北京郵電大學(xué)c+程序設(shè)計基礎(chǔ)實驗報告題目: 繼承和派生班級: 2011211127 專業(yè): 信息工程姓名: 劉文韜成績:注:本次實驗完成第1、4 題,分別40、60 分,總分100。1、第五章習(xí)題,編程題1,p109( 40 分)如下圖所示的類層次,請寫出d 的構(gòu)造函數(shù)。2(1)類的設(shè)計class a public : a( int =0); a(a &); / 拷貝構(gòu)造函數(shù); a:a(a& a):a(a) / 拷貝構(gòu)造函數(shù)a=a.a; a:a( int a):a(n) a=0; class b: virtualpublic a public : b( int =0); b(b

2、 &); / 拷貝構(gòu)造函數(shù); ; b:b(b& b):a(b) / 拷貝構(gòu)造函數(shù)b=b.b; b:b( int b):a(a) a=0; class c: virtualpublic a public : c( int =0); c(b &); / 拷貝構(gòu)造函數(shù); ; c:c(b& b):a(a) / 拷貝構(gòu)造函數(shù)c=c.c; bc:c( int c):a(a) a=0; class d: virtualpublic b, virtualpublic c public : d( int =0); d(d&); / 拷貝構(gòu)造函數(shù); ; d:d(d&

3、d):a(a) / 拷貝構(gòu)造函數(shù)b=b.b; d:d( int d):a(a) a=d; 關(guān)系為 abd -c-(2)各函數(shù)、變量的說明class a 類 a class b 類 b class c 類 c class d 類 d(3)關(guān)鍵問題說明int main() printf(a=anb=bnc=cnddn); getch(); (4)實驗結(jié)果(5)實驗討論對繼承之間的關(guān)系不太明白,編譯過程中有重復(fù)繼承的現(xiàn)象發(fā)生過。2、4、構(gòu)建如下繼承關(guān)系,設(shè)計實現(xiàn)各類人員的薪酬(60 分)兼職技術(shù)人員按小時計算;雇員工資包括基本工資和獎金;管理人員工資包括基本工資和管理人員獎金;銷售人員包括基本工資和

4、銷售提成;銷售經(jīng)理包括基本工資、銷售提成和管理人員獎金。測試程序中包括:構(gòu)造函數(shù)和析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù),請采用多文件結(jié)構(gòu)實現(xiàn)。(1)類的設(shè)計class employee protected: string name;/ 姓名int id; / 職工號int grade;/ 工資級別double salary;/ 月double base_salary;/ 基本月薪double career_salary;/ 業(yè)績工資public : employee(string= , int =0, int =0); employee(employee &); / 拷貝構(gòu)造函數(shù)virtualvoi

5、d pay(); / 月薪計算函數(shù)void show(); double getsalary()return salary; double getbase_salary()return base_salary; double getcareer_salary()return career_salary; ; class manager: virtualpublic employee / 虛基類protected: double prize;/ 固定獎金額double factor;/ 業(yè)績系數(shù)public : manager(string= , int =0,int =0, double =0

6、); manager(manager&mag); / 拷貝構(gòu)造函數(shù)void pay(); ; class technician:virtualpublic employee protected: double hours; / 月工作時數(shù)double perhour;/ 每小時附加酬金double shfactor;/ 研究進(jìn)度系數(shù)public : technician(string= , int =0, int =0, double =0); technician(technician &); / 拷貝構(gòu)造函數(shù)void pay(); ; class salesman: vir

7、tualpublic employee protected: double amount; / 銷售額double slfactor;/ 提成比例public : salesman(string= , int =0, int =0, double =0); salesman(salesman &); / 拷貝構(gòu)造函數(shù)void pay(); ;class salesmanager:public manager, public salesman public : salesmanager(string= , int =0, int =0, double pr=0, double slfac

8、=0); salesmanager(salesmanager &); / 拷貝構(gòu)造函數(shù)void pay(); ;(2)各函數(shù)、變量的說明double getsalary()得到的工資double getbase_salary()基本工資double getcareer_salary()獎金(3)關(guān)鍵問題說明int main() employee eml1( 張偉 ,10012,0),*emlp; manager mag1( 姚婕,20005,4,1000); technician tec1( 王茜 ,30047,5,10); salesman sal1(朱明 ,40038,2,0.05

9、); developermanager dem1( 沈俊 ,50069,6,1500,12); salesmanager sam1( 況鐘 ,60007,3,1000,0.05); eml1.pay(); eml1.show(); mag1.pay(); mag1.show(); tec1.pay(); tec1.show(); sal1.pay(); sal1.show(); emlp=&dem1; emlp-pay(); emlp-show(); emlp=&sam1; emlp-pay(); emlp-show(); coutendl; employee eml0(eml1); manager mag0(mag1); technician tec0(tec1); salesman sal0(sal1); developermanager dem0(dem1); salesmanager sam

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論