實(shí)驗(yàn)5-類和對(duì)象習(xí)題目_第1頁(yè)
實(shí)驗(yàn)5-類和對(duì)象習(xí)題目_第2頁(yè)
實(shí)驗(yàn)5-類和對(duì)象習(xí)題目_第3頁(yè)
實(shí)驗(yàn)5-類和對(duì)象習(xí)題目_第4頁(yè)
實(shí)驗(yàn)5-類和對(duì)象習(xí)題目_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余4頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、實(shí)驗(yàn)5 類和對(duì)象程序填空1. 題目描述:仔細(xì)閱讀下列求兩個(gè)點(diǎn)之間距離的程序,程序的輸出結(jié)果是50,根據(jù)程序的輸出結(jié)果在劃線處填入正確語(yǔ)句。代碼:#include#includeusing namespace std;class pointpublic: point(float a,float b) x=a; y=b; float Distance(point &p) float dx=; float dy=; return (float)sqrt(dx*dx+dy*dy);private: float x,y;int main() point p1(2,3),p2(32,43); cout(p

2、2)endl; return 0;2. 題目描述:設(shè)計(jì)一個(gè)矩陣類CRectangle,該類中的私有成員變量存放Rectangle的長(zhǎng)和寬,并設(shè)置它們的默認(rèn)值為1,通過(guò)成員函數(shù)set()來(lái)設(shè)定長(zhǎng)和寬的值,并確保長(zhǎng)寬都在(0,50)范圍之內(nèi),求其周長(zhǎng)Perimeter并顯示輸出。以下是完成此項(xiàng)工作的程序,請(qǐng)將未完成的部分填入,使之完整。代碼:#includeusing namespace std;class CRectanglepublic: void Set(float a,float b) if(a0)&(a0)&(b50) width=b; else width=1; float perim

3、eter() return 2*(length+width); private: float length; float width;int main() CRectangle R; float l,w;題目描述:設(shè)計(jì)一個(gè)類CRectangle,要求如下所述。(1)定義兩個(gè)點(diǎn)坐標(biāo)x1,y1,x2,y2,兩點(diǎn)所確定的一條直線構(gòu)成了矩形的對(duì)角線。(2)初始化矩形的兩個(gè)點(diǎn)時(shí),判斷給定的兩個(gè)點(diǎn)是否能夠構(gòu)成一個(gè)矩形,如果不能構(gòu)成矩形,則矩形對(duì)角線的兩點(diǎn)初始化為(0,0)和(1,1)。如果可以構(gòu)成,則用形參初始化對(duì)象的數(shù)據(jù)成員。根據(jù)以上描述完成下列程序。代碼:#include#includeusing n

4、amespace std;class CRectanglepublic: CRectangle(float Rx1=0,float Ry1=0, float Rx2=1,float Ry2=1); bool IsSquare( ); void PrintRectangle( );private: 題目描述:下列程序中聲明了類girl,其中函數(shù)“display”是類girl的友元函數(shù),請(qǐng)?jiān)冢?)、(2)和(3)處各填入正確的內(nèi)容,使程序能正常運(yùn)行。代碼:#includeusing namespace std;class girlprivate: char name; int age;public

5、: girl(char n, int d) name, age is :endl; 題目描述:,請(qǐng)完善下面程序,使程序的運(yùn)行結(jié)果如下:This is a constructor ! This is a constructor ! The value of ch is a The value of ch is b This is a destructor of b This is a destructor of a 代碼:#includeusing namespace std;class MyClass char ch;public: MyClass( ) coutThis is a const

6、ructor! endl; ch=a; MyClass(char character ) coutThis is a constructor! endl; ch=character; void Print( ) coutThe value of ch is chendl; MyClass( ) coutThis is a destructor ofchendl; ;int main( ) MyClass first, second(b); ( ); ( ); return 0;程序設(shè)計(jì)6.題目標(biāo)題:計(jì)算兩點(diǎn)間的距離 題目描述:仿照本次實(shí)驗(yàn)預(yù)習(xí)的程序填空題1,將以上Distance函數(shù)定義為類p

7、iont的友元函數(shù),實(shí)現(xiàn)程序的功能。并在主函數(shù)中增加輸入兩點(diǎn)作為友元函數(shù)的實(shí)參。其主函數(shù)如下:輸入描述:輸入四個(gè)數(shù),用空格隔開。輸出描述:兩個(gè)點(diǎn)的距離。樣例輸入:1 3 5 6樣例輸出:5#include#includeusing namespace std;class pointpublic: point(float a,float b) x=a; y=b; friend float Distance( point &p1, point &p2);private: float x,y;float Distance( point &p1, point &p2) float dx= float

8、dy= return (float)sqrt(dx*dx+dy*dy);int main() float p1_x,p1_y,p2_x,p2_y; 目標(biāo)題:日期類CDateInfo的設(shè)計(jì)。題目描述:根據(jù)以下主函數(shù)的功能來(lái)設(shè)計(jì)日期類CDateInfo,使其能正確運(yùn)行。類CDateInfo中應(yīng)該具有描述年、月、日的三個(gè)數(shù)據(jù)成員和相應(yīng)的成員函數(shù)。#includeusing namespace std;class CDateibfoint day,month,year;public:CDateibfo();CDateibfo(int yy,int mm,int dd);void setdate(int

9、 yy,int mm,int dd);void getdate();CDateibfo:CDateibfo()day=10;month=10;year=2011;CDateibfo:CDateibfo(int yy,int mm,int dd)year=yy;month=mm;day=dd;void CDateibfo:setdate(int yy,int mm,int dd)year=yy;month=mm;day=dd;void CDateibfo:getdate()coutyear-month-dayymd;(y,m,d);();();return 0;輸入描述: 三個(gè)整數(shù),分別用來(lái)設(shè)置

10、對(duì)象data1的年、月、日輸出描述:兩行:第1行為對(duì)象data1的年月日;第2行為data2的年月日。樣例輸入:2011 12 5樣例輸出:2012-12-52011-10-108.題目標(biāo)題:學(xué)生類Student的設(shè)計(jì)題目描述:根據(jù)以下主函數(shù)的功能來(lái)設(shè)計(jì)日期類Student,使其能正確運(yùn)行。類Student中應(yīng)該具有描述學(xué)生姓名、性別、年齡的三個(gè)數(shù)據(jù)成員和相應(yīng)的成員函數(shù)。輸入描述:3行,第一行為一個(gè)長(zhǎng)度不超過(guò)10的字符串表示姓名;第二行為0和1中的一個(gè)整數(shù);第三行為一個(gè)整數(shù),表示年齡。輸出描述: 按主函數(shù)要求輸出。#include#includeusing namespace std;clas

11、s Studentprivate:char name20;int sex;unsigned old;public:void SetName(char *chOne);void SetGender(int isex);void SetAge(unsigned iold);void GetName();void GetGender();void GetAge();void Student:SetName(char *chOne)strcpy(name,chOne);void Student:SetGender(int isex)sex=isex;void Student:SetAge(unsign

12、ed iold)old=iold;void Student:GetName()coutZhang_Sans name is nameendl;void Student:GetGender()coutZhang_Sans gender is sexendl;void Student:GetAge()coutZhang_Sans age is oldchOne; ciniSex; ciniOld; (chOne); (iSex); (iOld); coutendl; (); (); (); return 0;樣例輸入:ZhangSan020樣例輸出:Zhang_Sans name is Zhang

13、SanZhang_Sans gender is 0Zhang_Sans age is 209.題目標(biāo)題:計(jì)算器類Calculator的設(shè)計(jì)題目描述:根據(jù)以下主函數(shù)的功能來(lái)設(shè)計(jì)計(jì)算器類Calculator,使其能正確運(yùn)行。類Calculator中應(yīng)該具有描述運(yùn)算數(shù)的a和b及其表示a和b運(yùn)算結(jié)果的三個(gè)數(shù)據(jù)成員和相應(yīng)計(jì)算并顯示結(jié)果的成員函數(shù)。#includeusing namespace std;class Calculatorfloat x,y;public:Calculator(int a,int b)x=a;y=b;void add()coutx+y=x+yendl;void subtract

14、()coutx-y=x-yendl;void multiply()coutx*y=x*yendl;void divide()coutx/y=x/yab;Calculator cal(a,b);();();();();return 0;輸入描述:2個(gè)整數(shù)a和b,表示參與運(yùn)算的兩個(gè)數(shù)據(jù)。輸出描述: 4行,分別顯示a+b、a-b、a*b和a/b的結(jié)果樣例輸入:1 2樣例輸出:1+2=31-2=-11*2=21/2=10. 題目標(biāo)題:復(fù)數(shù)類Imaginary的設(shè)計(jì)題目描述:根據(jù)以下主函數(shù)的功能來(lái)設(shè)計(jì)復(fù)數(shù)類Imaginary,使其能正確運(yùn)行。類Imaginary中應(yīng)該具有描述復(fù)數(shù)的實(shí)部和虛部的私有數(shù)據(jù)成

15、員a和b,還有相應(yīng)的構(gòu)造函數(shù)和按照“abi”格式顯示復(fù)數(shù)的成員函數(shù)print()。設(shè)計(jì)類Imaginary的2個(gè)友元函數(shù)分別進(jìn)行復(fù)數(shù)的加、減運(yùn)算,并在這些函數(shù)調(diào)用類Imaginary的成員函數(shù)print()顯示結(jié)果。#include#includeusing namespace std;class Imaginaryfloat x,y;public:Imaginary(int a,int b)x=a;y=b;friend void Add(Imaginary &p,Imaginary &b);friend void Sub(Imaginary &p,Imaginary &q);void Add(Imaginary &p,Imaginar

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論