版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
實(shí)驗(yàn)三、類和對象(10學(xué)時)一、實(shí)驗(yàn)?zāi)康?.掌握聲明類的方法,類和類的成員的概念以及定義對象的方法。2.初步掌握用類和對象編制基于對象的程序。3.學(xué)習(xí)檢查和調(diào)試基于對象的程序。4.掌握類的構(gòu)造函數(shù)和析構(gòu)函數(shù)的概念和使用方法。5.掌握對象數(shù)組、對象的指針及其使用方法。6.掌握共用數(shù)據(jù)的保護(hù)方法二、實(shí)驗(yàn)內(nèi)容1.檢查下面的程序,找出其中的錯誤,并改正之。然后上機(jī)調(diào)試,使之能正常運(yùn)行。(1)#include<iostream>usingnamespacestd;classClock{voidset_clock(void);voidshow_clock(void);inthour;intminute;intsecond;};Clockclock;intmain(){set_clock();show_clock();}intset_clock(void){cin>>t.hour;cin>>t.month;cin>>t.second;}intshow_clock(void){cout<<t.hour<<":"<<t.minute<<":"<<t.second<<endl;}(2)#include<iostream>usingnamespacestd;classA{public:voidA(inti=0){m=i;}voidshow(){cout<<m;}void~A(){}private:intm;};intmain(){Aa(5);a.m+=10;a.show();return0;}(3)classX{private:inta=0;int&b;constintc;voidsetA(inti){a=i;}X(inti){a=i;}public:intX(){a=b=0;}X(inti,intj,intk){a=i;b=j;c=k;}setC(intk)const{c=c+k;}};intmain(){Xx1;Xx2(2)
;Xx3(1,2,3)
;x1.setA(3)
;return0
;}2.請先閱讀下面的程序,寫出程序運(yùn)行的結(jié)果,然后再上機(jī)運(yùn)行程序,驗(yàn)證自己分析的結(jié)果是否正確。(1)#include<iostream>usingnamespacestd;classtest{public:test();intgetint(){returnnum;}floatgetfloat(){returnfl;}~test();private:intnum;floatfl;};test::test(){cout<<"Initalizingdefault"<<endl;num=0;fl=0.0;}test::~test(){cout<<"Destructorisactive"<<endl;}intmain(){testarray[2];cout<<array[1].getint()<<""<<array[1].getfloat()<<endl;return0;}(2)#include<iostream>usingnamespacestd;#include<string>classX{public: X(intx1,char*x2,floatx3):a(x1),c(x3) { b=newchar[sizeof(x2)+1]; strcpy(b,x2); } X():a(0),b("X::X()"),c(10){} X(intx1,char*x2="X::X(....)",intx3=10):a(x1),b(x2),c(x3){} X(constX&other) {a=other.a; b="X::X(constX&other)"; c=other.c; } voidprint(){cout<<"a="<<a<<"\t"<<"b="<<b<<"\t"<<"c="<<c<<endl; }private
:inta; char*b;floatc;};intmain(){ X*A=newX(4,"X::X(int,char,float)",32); XB,C(10),D(B); A->print(); B.print(); C.print(); D.print();return0;}3.某單位的職工工資包括基本工資Wage,崗位津貼Subsidy,房租Rent,水費(fèi)WaterFee,電費(fèi)ElecFee。設(shè)計實(shí)習(xí)工資管理的類Salary,該類的形式如下:classSalary{public:Salary(){初始化工資數(shù)據(jù)的各分項(xiàng)數(shù)據(jù)為0}Salary(……){初始化工資數(shù)據(jù)的各分項(xiàng)數(shù)據(jù)}voidsetXX(doublef){XX=f;}doublegetXX(){returnXX;}doubleRealSalary(){……}//計算實(shí)發(fā)工資……Private:doubleWage,Subsidy,Rent,WaterFee,ElecFee;};其中,成員函數(shù)setXX()用于設(shè)置工資的各分項(xiàng)數(shù)據(jù),成員函數(shù)getXX()用于獲取工資的各分項(xiàng)數(shù)據(jù),XX代表Wage、Subsidy等數(shù)據(jù)成員,如Wage對應(yīng)的成員函數(shù)則為setWage()和getWage()。實(shí)發(fā)工資=Wage+Subsidy-Rent-WaterFee-ElecFee編程完善該類的設(shè)計,并在主函數(shù)中測試該類的各成員函數(shù)。4.設(shè)計一個時鐘類Clock。數(shù)據(jù)成員包括hour(小時)、minute(分鐘)、second(秒)。要求用成員函數(shù)實(shí)現(xiàn)以下功能:(1)創(chuàng)建具有指定時鐘(小時、分鐘、秒)的Clock對象,默認(rèn)時鐘為00:00:00。(2)動態(tài)地設(shè)置時、分、秒。(3)在屏幕上按“時:分:秒”的格式顯示時鐘。(4)在主函數(shù)中測試該類。5.設(shè)計一個職工類Employee。數(shù)據(jù)成員包括字符串型的name(姓名)、street(街道地址)、city(市)、province(?。ostalcode(郵政編碼)。要求用成員函數(shù)實(shí)現(xiàn)以下功能:(1)創(chuàng)建職工對象時,可以按不同方式指定職工信息。(2)動態(tài)地設(shè)置職工對象信息。(3)在屏幕上打印職工信息。(4)在主函數(shù)中測試該類。6.需要求3個三角形的體積,請編寫一個基于對象的程序。數(shù)據(jù)成員包括三角形的三邊長a、b、c。要求用成員函數(shù)實(shí)現(xiàn)以下功能:(1)定義構(gòu)造函數(shù)完成三角形的初始化;(2)求三角形的周長;(3)求三角形的面積;(4)輸出三角形信息。7.下面是一個整型數(shù)組類intArray的聲明,請給出該類所有數(shù)據(jù)成員的類外定義。classintArray{public:intArray(intsize);//構(gòu)造函數(shù)intArray(constintArray&x);//復(fù)制構(gòu)造函數(shù)~intArray();//析構(gòu)函數(shù)boolSet(inti,intelem);//設(shè)置第i個數(shù)組元素的值,設(shè)置成功返回true,失敗返回falseboolGet(inti,int&elem);//獲取第i個數(shù)組元素的值,獲取成功返回true,失敗返回falseintLength()const;//獲取數(shù)組的長度voidReSize(intsize);//重置數(shù)組voidPrint();//輸出數(shù)組private:int*element;//指向動態(tài)數(shù)組的指針intcursize;//數(shù)組的當(dāng)前實(shí)際長度intmaxsize;//數(shù)組的最大長度};8.下面是一個整型鏈表類intList的聲明,請給出該類所有數(shù)據(jù)成員的類外定義。classintList{protected:structNode{ Node*next; intdata;};Node*Head;public:intList();//構(gòu)造函數(shù)~intList();//析構(gòu)函數(shù)//向鏈表的第i個位置插入一個元素,插入成功返回true,失敗返回falseboolInsert(inti,intelem)
;//刪除鏈表的第i個位置的元素,刪除成功返回true,失敗返回falseboolRemove(inti,int&elem);int*Find(intelem)const;//查找值為elem的元素,返回指向該元素的指針intLength()const;//返回鏈表長度voidPrintlist();//輸出鏈表};9.下面是一個整型堆棧類intStack的聲明,請給出該類所有數(shù)據(jù)成員的類外定義。classintStack{public:intStack(intsi
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024財務(wù)外包服務(wù)合同協(xié)議書
- 二零二五版電商直播領(lǐng)域主播形象使用權(quán)合同3篇
- 2024電影拍攝化妝服務(wù)合同3篇
- 2024版中介第三方擔(dān)保合同
- 2024版勞務(wù)用工合同
- 2024水電能源開發(fā)協(xié)議
- 2024版工程建設(shè)合同補(bǔ)充協(xié)議范本
- 二零二五年度法律援助居間服務(wù)合同范本正規(guī)范本2篇
- 2024版知識產(chǎn)權(quán)許可使用協(xié)議
- 二零二五年度網(wǎng)絡(luò)游戲開發(fā)合作經(jīng)營合同協(xié)議書3篇
- 2024年08月云南省農(nóng)村信用社秋季校園招考750名工作人員筆試歷年參考題庫附帶答案詳解
- 防詐騙安全知識培訓(xùn)課件
- 心肺復(fù)蘇課件2024
- 2024年股東股權(quán)繼承轉(zhuǎn)讓協(xié)議3篇
- 2024年認(rèn)證行業(yè)法律法規(guī)及認(rèn)證基礎(chǔ)知識
- 江蘇省建筑與裝飾工程計價定額(2014)電子表格版
- 鑄造工廠設(shè)備管理(共21頁)
- 農(nóng)產(chǎn)品收購臺賬(登記經(jīng)營單位及個體經(jīng)營者投售的農(nóng)產(chǎn)品
- 分紅保險精算規(guī)定
- Proud-of-you中英文歌詞
- 基因的表達(dá)與調(diào)控.ppt
評論
0/150
提交評論