


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
實(shí)驗(yàn)十任務(wù)1:程序調(diào)試與程序設(shè)計(jì)。類與構(gòu)造函數(shù)、對(duì)象的定義。數(shù)據(jù)半徑r及高h(yuǎn),公有的成員函數(shù)有構(gòu)造函數(shù)與輸出圓柱參數(shù)的函數(shù),在main函數(shù)中,輸入兩個(gè)參數(shù),定義并初始化此類的一個(gè)對(duì)象,對(duì)象調(diào)用輸出圓柱參數(shù)的函數(shù)。程序代碼如下:#include"stdafx.h"#include<iostream>usingnamespacestd;classcolumn{private:doubler,h;public:column(doubleri,doublehi){r=ri;h=hi;}voidprin(){cout<<"圓柱的高為:"<<h<<"圓柱的半徑為:"<<r<<endl;{}};intmain(){columnc(3,10);c.prin();return0;}請調(diào)試次程序。再定義計(jì)算圓柱面積與體積的私有成員函數(shù),在公有的成員函數(shù)prin中調(diào)用,在main函數(shù)中輸入半徑r及高h(yuǎn),請?jiān)O(shè)計(jì)程序并調(diào)試。程序設(shè)計(jì)如下:#include"stdafx.h"#include<iostream>usingnamespacestd;#definepi3.1415926classcolumn{private:doubler,h;public:column(doubleri,doublehi){r=ri;h=hi;}doublearea(){doubles;s=2*pi*r*r+2*pi*r*h;returns;}doublev(){returnpi*r*r*h;}voidprin(){cout<<"圓柱的面積為:"<<area()<<"{
圓柱的體積為:"<<v()<<endl;}};intmain(){columnc(3,10);c.area();c.v();c.prin();return0;}在main函數(shù)中也能以下列形式定義對(duì)象,請重新設(shè)計(jì)程序。Columnc;程序設(shè)計(jì)如下:#include"stdafx.h"#include<iostream>usingnamespacestd;classcolumn{private:doubler,h;public:column(doubleri=3,doublehi=10){r=ri;h=hi;}doublearea(){doubles;s=2*3.14*r*r+2*3.14*r*h;returns;}doublev(){return3.14*r*r*h;}voidprin(){cout<<"圓柱的面積為:"<<area()<<"圓柱的"<<v()<<endl;{體積為:}};intmain(){columnc;c.area();c.v();c.prin();return0;}任務(wù)2:程序設(shè)計(jì)。重載構(gòu)造函數(shù)的類設(shè)計(jì)有一個(gè)類A,其中測試函數(shù)main為:intmain(){Aa;Ab(35);Ac(32,90);a.print();b.print();c.print(return0;}程序的執(zhí)行結(jié)果為:}執(zhí)行無參構(gòu)造函數(shù):x=0,y=0執(zhí)行有一個(gè)參數(shù)的構(gòu)造函數(shù):x=35,y=0執(zhí)行有二個(gè)參數(shù)的構(gòu)造函數(shù):x=32,y=90運(yùn)算的結(jié)果為:s=0運(yùn)算的結(jié)果為:s=35運(yùn)算的結(jié)果為:s=122執(zhí)行析構(gòu)函數(shù):x=32,y=90執(zhí)行析構(gòu)函數(shù):x=35,y=0執(zhí)行析構(gòu)函數(shù):x=0,y=0請定義類,完成類中構(gòu)造函數(shù)與析構(gòu)函數(shù)的定義。程序設(shè)計(jì)為:#include"stdafx.h"#include<iostream>usingnamespacestd;classA{private:intx,y;public:A(){x=0;y=0;cout<<"執(zhí)行無參構(gòu)造函數(shù):"<<"x="<<x<<",y="<<y<<endl;}A(intxi){x=xi;y=0;cout<<"執(zhí)行有一個(gè)參數(shù)的構(gòu)造函數(shù):"<<"x="<<x<<",y="<<y<<endl;}A(intxi,intyi){x=xi;y=yi;cout<<"執(zhí)行有二個(gè)參數(shù)的構(gòu)造函數(shù):"<<"x="<<x<<",y="<<y<<endl;}voidprint(}
){cout<<"運(yùn)算的結(jié)果為:"<<"s="<<x+y<<endl;執(zhí)行析構(gòu)函數(shù)~A(){cout<<"}};
:"<<"x="<<x<<",y="<<y<<endl;int_tmain(intargc,_TCHAR*argv[]){Aa;Ab(35);Ac(32,90);print();print();return0;}任務(wù)3:程序設(shè)計(jì)。類與構(gòu)造函數(shù)、對(duì)象的定義。設(shè)計(jì)一個(gè)表示貓的類Cat,包括貓的顏色、體重、年齡(Color,age,)等數(shù)據(jù),并且具有設(shè)置或修改貓的顏色、體重、年齡的功能,也能顯示貓的顏色、體重、年齡等操作。程序設(shè)計(jì)如下:#include"stdafx.h"#include<iostream>usingnamespace#include<string.h>classcat{private:charch[80];doubleweight;intage;public:cat(charc[80],doublewei,inta){strcpy(ch,c);weight=wei;age=a;}voidprint(){cout<<"貓的顏色是:"<<ch<<endl;cout<<"貓的體重是:"<<weight<<"kg"<<endl;cout<<"貓的年齡是:"<<age<<"歲"<<endl;}};intmain(){charch1[80];doubleweight1;intage1;cin>>ch1>>weight1>>age1;catA(ch1,weight1,age1);A.print();return0;}運(yùn)行結(jié)果如下:任務(wù)4:程序設(shè)計(jì)設(shè)計(jì)一個(gè)長方體類,用它能計(jì)算不同長方體的體積和表面積。提示:在這個(gè)類Box中必須要有3長、寬、高(分別用、b、c表示),構(gòu)造函數(shù)Box(inti,intj,intk)和計(jì)算體積GetVolume()、表面積GetArea()的成員函數(shù)程序設(shè)計(jì)為:#include<iostream.h>classbox{private:inta,b,c;public:box(inti,intj,inta=i;b=j;c=k;}voidgetvolume(){ints;s=a*b*c;cout<<"長方體的體積是:"<<s<<endl;}voidgetarea(){ints1;s1=2*(a*b+b*c+a*c);cout<<"長方體的表面積是:"<<s1<<endl;}};intmain(){intx,y,z;cin>>x>>y>>z;boxA(x,y,z);A.getvolume();A.getarea();return0;}任務(wù)5:程序調(diào)試。重載構(gòu)造函數(shù)的定義。(1)定義一個(gè)類,根據(jù)對(duì)象初始化時(shí)的參數(shù)不同,對(duì)象自動(dòng)調(diào)用重載的構(gòu)造函數(shù)調(diào)用。程序如下:#include"stdafx.h"#include<iostream>usingnamespacestd;#include<string.h>classdate{intyear,month,day;public:date(intm,intd);date(inty,intm,intvoidprint();};date::date(inty,intm,intd){year=y;month=m;day=d;cout<<"3dateconstructorcalled"<<endl;date::date(intm,intd)}year=2012;month=m;day=d;cout<<"2dateconstructorcalled"<<endl;{}{voiddate::print(){cout<<"今天是"<<year<<"年"<<month<<"月"<<day<<"日"<<endl;}int_tmain(intargc,_TCHAR*argv[]){dateDATE1(10,1),DATE2(2012,5,15);DATE1.print();DATE2.print();return0;}2)如果把main函數(shù)寫成:{dateDATE1(10,1),DATE2(2012,5,15),DATE3();DATE1.print();DATE2.print();return0;}程序能通過編譯嗎?請重新設(shè)計(jì)程序。程序如下:#include"stdafx.h"#include<iostream>usingnamespacestd;#include<string.h>classdate{intyear,month,day;public:date(intm,intd);date(inty,intm,intvoidprint();};date::date(inty,intm,intd){year=y;month=m;day=d;cout<<"3dateconstructorcalled"<<endl;date::date(intm,intd)}{year=2012;month=m;day=d;cout<<"2dateconstructorcalled"<<endl;voiddate::print()}cout<<"今天是"<<year<<"年"<<month<<"月"<<day<<"日"<<endl;}int_tmain(intargc,_TCHAR*argv[]){dateDATE1(10,1),DATE2(2012,5,15),DATE3();DATE1.print();DATE2.print();return0;}任務(wù)6:程序調(diào)試。默認(rèn)值的構(gòu)造函數(shù)設(shè)計(jì)。程序如下:#include"stdafx.h"#include<iostream>usingnamespacestd;#include<string.h>classdate{private:intyear,month,day;public:date(inty,intm,intd);voidprint();};date::date(inty=2012,intm=01,intd=01){year=y;month=m;day=d;cout<<"dateconstructorcalled"<<endl;}voiddate::print(){cout<<"今天是"<<year<<"年"<<month<<"月"<<day<<"日"<<endl;{}int_tmain(intargc,_TCHAR*argv[]){dateA(2012,5,15),B(2013);A.print();B.print();return0;}(1)調(diào)試程序。(2)如果把“dateA(2012,5,15),B(2013)”替換成“dateA(2012,10),B()”,編譯時(shí)能通過嗎?請調(diào)試。答:不能。(3)如果把“date(inty,intm,intd)”替換成“date(inty=2012,intm=01,intd=01)”,編譯時(shí)能通過嗎?答:不能通過,date::date重復(fù)定義默認(rèn)參數(shù)。任務(wù)7:程序調(diào)試。拷貝構(gòu)造函數(shù)設(shè)計(jì)拷貝構(gòu)造函數(shù)的應(yīng)用代碼如下:#include"stdafx.h"#include<string.h>#include<iostream>usingnamespaceclassPerson{private:char*buffer;intage;public:Person(constPerson&me);Person(char*p,inta);voidDisplay();};Person::Person(constPerson&me){buffer=newchar[strlen(me.buffer)+1];strcpy(buffer,me.buffer);this->age=me.age;}Person::Person(char*p,inta){buffer=newchar[strlen(p)+1];strcpy(buffer,p);age=a;}voidPerson::Display(){cout<<"Thenameis"<<buffer<<"ageis"<<age<<endl;}int_tmain(intargc,_TCHAR*argv[]){PersonA("Liu",50);PersonB(A);B.Display();return0;}任務(wù)8:程序設(shè)計(jì)??截悩?gòu)造函數(shù)設(shè)計(jì)。設(shè)計(jì)一個(gè)矩形類熱沖突,其數(shù)據(jù)成員定義為長doublelength和寬
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度珠寶企業(yè)社會(huì)責(zé)任與環(huán)保合作合同
- 二零二五年度汽車贈(zèng)與及二手車置換增值服務(wù)合同
- 二零二五年度放棄祖屋繼承權(quán)的明確合同
- 2025年度石材幕墻安裝與維護(hù)管理合同協(xié)議
- 二零二五年度水資源保護(hù)融資合同
- 二零二五年度土地租賃合同糾紛處理指南
- 2025年度貨物損失賠償協(xié)議書:跨境電商供應(yīng)鏈風(fēng)險(xiǎn)分擔(dān)合同
- 二零二五年度師徒互助職業(yè)技能提升協(xié)議
- 二零二五年度足浴店轉(zhuǎn)讓與市場推廣合作框架協(xié)議
- 2025年度涂料行業(yè)綠色生產(chǎn)推廣合同
- 2025年湖北宜昌枝江金潤源集團(tuán)招聘17人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2023CSCO兒童及青少年白血病診療指南
- 第一單元 閱讀綜合實(shí)踐(同步課件)【知識(shí)精研】七年級(jí)語文下冊高效課堂(統(tǒng)編版)
- 初中物理競賽及自主招生專題講義:第8講 電路 (共5節(jié))含解析
- 2024年版慢性阻塞性肺疾病(COPD)診療指南解讀課件
- 2024解析:第八章牛頓第一定律、二力平衡-基礎(chǔ)練(解析版)
- 《傳媒法的原則》課件
- 2024解析:第十三章內(nèi)能-基礎(chǔ)練(解析版)
- 2024年網(wǎng)格員考試題庫含答案
- GB/Z 44047-2024漂浮式海上風(fēng)力發(fā)電機(jī)組設(shè)計(jì)要求
- (完整)2019年風(fēng)廉政建設(shè)主體責(zé)任落實(shí)情況監(jiān)督檢查記錄表
評(píng)論
0/150
提交評(píng)論