C++程序設(shè)計實(shí)踐指導(dǎo)書7(答案)_第1頁
C++程序設(shè)計實(shí)踐指導(dǎo)書7(答案)_第2頁
C++程序設(shè)計實(shí)踐指導(dǎo)書7(答案)_第3頁
C++程序設(shè)計實(shí)踐指導(dǎo)書7(答案)_第4頁
C++程序設(shè)計實(shí)踐指導(dǎo)書7(答案)_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、C+程序設(shè)計實(shí)踐上機(jī)指導(dǎo)書(第七次)專業(yè)班級學(xué)號姓名沈陽工程學(xué)院信息學(xué)院實(shí)踐成績評價說明1 上機(jī)前充分準(zhǔn)備實(shí)踐材料,對上機(jī)內(nèi)容有程序草稿。(10分2 獨(dú)立完成實(shí)踐任務(wù),對實(shí)踐過程非常清晰。(30分3 認(rèn)真理解知識點(diǎn),能夠與理論知識相結(jié)合。(10分4 在機(jī)房遵守上機(jī)守則,接受實(shí)踐指導(dǎo)教師的監(jiān)督與管理。(20分5 認(rèn)真填寫實(shí)踐指導(dǎo)書,寫出實(shí)踐小結(jié)。(10分6 在實(shí)踐中具備一定的創(chuàng)新思想,能夠主動與指導(dǎo)教師探討。(5分7 加大實(shí)踐工作量,主動完成實(shí)踐指導(dǎo)書中的選做題目。(5分8 掌握程序調(diào)試的方法,認(rèn)真完成程序調(diào)試工作,使程序能夠運(yùn)行(10分上機(jī)七繼承與派生(二)、目的1 .理解繼承與派生、單繼承與

2、多繼承的概念;2 .理解基類與派生類的定義及使用方法,派生類對象及初始化方法;3 .理解繼承與派生過程中,把派生類作為基類構(gòu)成類族的概念及虛基類的概念。一、要求:1 .在上課之前,每一個同學(xué)必須將題目、程序編寫完畢,做好充分的準(zhǔn)備。2 .所有環(huán)節(jié)均由每位同學(xué)獨(dú)立完成,嚴(yán)禁抄襲他人結(jié)果。三、步驟和內(nèi)容1由學(xué)生類、課程類作為基類,共同派生選課類。聲明一個學(xué)生類,有成員數(shù)據(jù):學(xué)號、姓名、性別、年齡,要求有如下成員函數(shù):構(gòu)造函數(shù)、輸出所有成員的函數(shù)。聲明一個課程類,有成員數(shù)據(jù):課程編號(cnum)、課程名稱(cname)、學(xué)時數(shù)(chour),要求有如下成員函數(shù):構(gòu)造函數(shù)、輸出所有成員的函數(shù)。將學(xué)生類

3、和課程類作為基類,通過公有繼承,共同派生選課類,派生類新增成員數(shù)據(jù)有:成績(score);新增成員函數(shù)有:構(gòu)造函數(shù)、輸出所有成員的函數(shù)。main()完成派生類對象的定義和有關(guān)成員函數(shù)的測試。2、由二維坐標(biāo)點(diǎn)類作為基類派生出圓類;再由圓類作為基類派生出圓柱體類。(提示:點(diǎn)類Point的數(shù)據(jù)成員為點(diǎn)坐標(biāo)x、y,函數(shù)成員有構(gòu)造函數(shù)和顯示點(diǎn)坐標(biāo)的函數(shù)show;Circle類新增數(shù)據(jù)成員為圓的半徑radius,其成員函數(shù)show除了顯示圓心的坐標(biāo)外還能顯示半徑大小;Cylinder類新增數(shù)據(jù)成員為圓柱體高度height,其成員函數(shù)除了顯示基類的所有數(shù)據(jù)成員外,還得顯示圓柱體的高度)1#include&l

4、t;iostream>#include<string>usingnamespacestd;classStudentpublic:Student(inti,stringn,chars,inta)ID=i;name=n;sex=s;age=a;intgetID()returnID;voidshow()cout<<"ID:"<<ID<<endl;cout<<"name:"<<name<<endl;cout<<"sex:"<<se

5、x<<endl;cout<<"age:"<<age<<endl;private:intID;stringname;charsex;intage;classCoursepublic:Course(intcno,char*cn,floatch)cnum=cno;cname=cn;chour=ch;voidshow()coutvv"Coursenumber:"<<cnum<<endl;coutvv"Coursename:"<<cname<<end

6、l;coutvv"Coursehours:"<<chour<<endl;private:intcnum;stringcname;floatchour;classSelCourse:publicStudent,publicCoursepublic:SelCourse(inti,stringn,chars,inta,intcno,char*cn,floatch,floatg):Student(i,n,s,a),Course(cno,cn,ch)score=g;voidshow()Student二show();Course二show();cout<&

7、lt;"Score: " <<score<<endl;private :float score;;void main()Student s1(0001,"林維",'S' ,21);s1.show();cout<<endl;Course c1(1001,"高級語言程序設(shè)計”,64);c1.show();cout<<endl;SelCourse sc1(9901,"張帥",'M',22,1002,"面向?qū)ο蟪绦蛟O(shè)計C+”,56,89);sc

8、1.show();mravf,ELM IWiCJMI -TIPQI «I>1 才將用 Iftci JsuCnUf1:+1ll«n-E ,口口»“ AX-fBIIDE MdL 力r; rn rw I E W1 kw mAim: KKZVxjia -iRlIE-mmF EUiH M5-Ti 卻怯期襄MhI !曲1口由甥JUHI*用Mil需取f茸./法|M anmdLtfrR.工看工出手用莖4“、:也叫甘*mi*fcn:口_<口冉注以f.壬通”吊*曠0:斷 注 3Jt!AKiWr* -UVa-RM3AAiEtine*式甲.hvebtje? wimTwii u

9、rFTMnivj r»w rw * *nMft*y- ®*.七三篁*三飛:4dT fin-簽由 M«sr fl% - Jtt* . F.e-34 -L-TWBHEBttTMflff' . 94 FC,, AW的"ng4 WTXHrfl*lMC . .ihMI .E=1fitaE甘 f ¥ UM訪度kWLFfclF.W.IME."XIH勾星凰乎日廿 fCl MMl .2、#include <iostream >#include <string >using namespacestd;classPointp

10、ublic:Point(intxx=0,intyy=0)x=xx;y=yy;intgetX()returnx;intgetY()returny;voidshow()cout<<"("<<x<<","<<y<<")"<<endl;protected:intx,y;classCircle:virtualpublicPointpublic:Circle(intxx=0,intyy=0,floatr=1):Point(xx,yy)radius=r;intgetR()ret

11、urnradius;voidshow()cout<<"圓心坐標(biāo):"Point二show();cout<<"圓半徑:"<<radius<<endl;protected:floatradius;classcylinder:publicCirclepublic:cylinder(intxx=0,intyy=0,floatr=1,floath=2):Point(xx,yy),Circle(r)height=h;intgetH()returnheight;voidshow()Circle二show();cout<

12、;<"圓柱體高度:"<<height<<endl;private:floatheight;intmain()Pointp1(1,2);pl.show();cout<<endl;Circlec1(2,2,3);cl.show();cout<<endl;cylindercyl;cyl.show();system("pause");return0;不使用虛基類。如果circle類繼承point,cylinder繼承circle,并且在cylinder類中Point(xx,yy),Circle(r)這樣在構(gòu)造

13、函數(shù)中賦值就會報錯“錯誤1errorC2614:"cylinder":非法的成員初始化:“Point”不是基或成員”。修改辦法一,將point設(shè)置為虛基類,修改辦法二,在cylinder構(gòu)造函數(shù)中通過Circle(xx,yy,r)傳值給point。#include<iostream>#include<string>usingnamespacestd;classPointpublic:Point(intxx=0,intyy=0)x=xx;y=yy;)intgetX()returnx;intgetY()returny;voidshow()cout<

14、<"("<<x<<","<<y<<")"<<endl;protected:intx,y;classCirclepublicPointpublic:Circle(intxx=0,intyy=0,floatr=1):Point(xx,yy)radius=r;intgetR()returnradius;voidshow()cout<<"圓心坐標(biāo):";Point:show();cout<<"圓半徑:"<<radius<<endl;protected:floatradius;;classcylinderpublicCirclepublic:cylinder(intxx=0,intyy=0,floatr=1,floath=2):Circle(xx,yy,r)height=h;intgetH()returnheight;voidshow()Circle:show();cout<<"圓柱體高度:"<<heigh

溫馨提示

  • 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

提交評論