




已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
c+面向對象編程試驗 源程序(原解) 實驗內(nèi)容 二、編寫函數(shù)實現(xiàn)最大公約數(shù)的求取。/-#pragma hdrstop/-#pragma argsused#include#includeint main(int argc, char* argv) int x,y,t; int i,j; coutplease input x,y:xy;if(xy)t=x;x=y;y=t; for(i=2.0;ix;i+) if(x%i=0) if(y%x=0) j=x; else if(y%i=0) j=i; coutzuida gongyue shu:x) coutcant find!endl; return 0;/-三、編寫函數(shù)實現(xiàn)最小公倍數(shù)的求取。/-#pragma hdrstop/-#pragma argsused#include#includeint main(int argc, char* argv) int x,y; int i,m; coutplease input x,y:xy; if(x%y=0) m=x; else for(i=2;i1000;i+) m=x*i; if(m%y=0) break; coutzuixiao gongbeishu:mendl; return 0;/-一、編寫函數(shù)fabs和abs求實數(shù)和整數(shù)的絕對值。/-#pragma hdrstop/-#pragma argsused#include#includeint abs(int *);float abs(float *);int main(int argc, char* argv) int x,m; float y,n; cinx; ciny; m=abs(&x); n=abs(&y); coutmendl; coutnendl; return 0;/- int abs(int *c) int a; a=*c; if(a0) a=-1*a; return a; float abs(float *d) float b; b=*d; if(b0.0) b=-1*b; return b; 實驗二 C+基本程序設計實驗內(nèi)容一、定義一個學生結構Student,包括姓名,性別,年齡。分別編制一下函數(shù)或運算符重載實現(xiàn)對應的功能,并編制主程序調(diào)試通過:1) 編制函數(shù)StuSet,實現(xiàn)為學生變量賦值的操作;2) 重載運算符+和-,實現(xiàn)對學生年齡的修改;3) 重載運算符,實現(xiàn)從輸入流上輸入學生信息。/-#pragma hdrstop/-#pragma argsused#include#include#includeclass Student private: char *name; char sex; int age; public: StuSet(); friend Student operator +(Student stud1,Student stud2); friend Student operator -(Student stud1,Student stud2); friend ostream& operator(ostream&,Student&);int main(int argc, char* argv) Student stud1,stud2; stud1.StuSet(); stud2.StuSet(); stud1=stud1+stud2; stud1=stud1-stud2; coutstud1; return 0;/-Student:StuSet() name=new char8; strcpy(gupeng,name); sex=m; age=21;Student operator +(Student stud1,Student stud2) stud2.age=10; stud1.age+=stud2.age; coutluanshunzengda:stud1.ageendl; return stud1;Student operator -(Student stud1,Student stud2) stud2.age=11; stud1.age-=stud2.age; coutjianxiao:stud1.ageendl; return stud1; ostream& operator(ostream& output,Student& c) outputdandu:c.age(ostream& output,Student& c) outputliushuchu:endlc.sexendlc.ageendl; return output;二、定義一個班級結構Class,該結構包含班級專業(yè),班級秉承,以及一個最大長度為100的學生結構s和實際班級學生長度n幾個數(shù)據(jù)成員,編制以下函數(shù)并編制主函數(shù)調(diào)用通過:1) 編制重載函數(shù)StuAdd,可以將以“姓名,性別,年齡”形式的學生添加到班級中;2) 編制函數(shù)ClsLength,求取班級的當前實際長度;3) 重載運算符+,實現(xiàn)直接將一個學生變量添加到班級中,重載運算符和-,實現(xiàn)直接將一個學生變量從班級中刪除;4) 重載運算符,實現(xiàn)班級信息的輸出。/-#pragma hdrstop/-#include#include#includeclass banji private: char banm3; char zhuany2; struct s char name; char sex; int age; stud100; public: stuadd(); clslength(); friend banji operator +(banji ck1,banji ck2); friend banji operator -(banji ck1,banji ck2); friend istream& operator (istream &,banji &); friend ostream& operator (ostream &,banji &);int n;#pragma argsusedint main(int argc, char* argv) banji ck1,ck2; ck1.stuadd(); ck2.stuadd(); ck1.clslength(); coutck1; ck1=ck1+ck2; ck1=ck1-ck2; coutck1; return 0;/-banji:stuadd() int j=60; for(int i=0;studi.age!=0|!=z;i+) =a; if(i%2=0) studi.sex=m; else studi.sex=w; studi.age=j-; banji:clslength() for(n=0;!=0;n+);banji operator +(banji ck1,banji ck2) ck1.studn+1.name=; ck1.studn+1.sex=ck2.stud1.sex; ck1.studn+1.age=ck2.stud1.age;banji operator -(banji ck1,banji ck2) for(int i=0;i(istream& input,banji& c) for(int i=0;; inputc.studi.sex; inputc.studi.age; return input;ostream& operator (ostream &output,banji &c) endl; outputc.stud1.sexendl; outputc.stud1.ageendl; return output; 三 類的設計與實現(xiàn)實驗內(nèi)容一、按下列要求編制復數(shù)類,并調(diào)試通過:1) 基本的構造函數(shù)(值構造、拷貝構造)及虛實部設置函數(shù);2) 成員運算符+、-實現(xiàn)復數(shù)的加減運算;3) 友元運算符+、-實現(xiàn)更合理的加減運算;4) 運算符實現(xiàn)復數(shù)類的輸出輸入。/-#pragma hdrstop/-#include#include#include#pragma argsusedclass complex public: /complex()real=0;imag=0; complex operator +(complex &c2); complex operator -(complex &c2); /friend complex operator +(complex c1,complex c2); /friend complex operator -(complex c1,complex c2); friend istream& operator (istream &,complex &); friend ostream& operator c1; cinc2; c3=c1+c2;coutc3; c3=c1-c2;cout(istream &input,complex &c) inputc.realc.imag;return input; ostream& operator (ostream &output,complex &c) output(c.real+c.imagi)endl;return output;二、編制日期類,實現(xiàn)如下要求:1) 可以按照“年-月-日”和“年/月/日”輸入輸出日期;2) 可以在當前日期上加、減一個天數(shù),并進行正確的跨年、跨月操作。/-#pragma hdrstop/-#include#include#pragma argsusedclass tim private: float yea; float mot; char dy; public: input(); friend ostream& operator(ostream&,tim&);int main(int argc, char* argv) tim td; td.input(); couttd; return 0;/- ostream& operatorc; if(c!=a) outputt.yea-t.mot-t.dy; else outputt.yea/t.mot/t.dy; return output; tim:input() yea=2011; mot=10; dy=8; 三、進行圖形類的程序編制,具有如下類層次及要求:1) Graph基類,具有物性計算(長度、面積、體積)和輸出函數(shù);2) 線Line類,在Graph類上派生;3) 園Circle類,在Graph類上派生;4) 矩形Rectangle類,在Line類上派生;5) 六面體Hexahedron類,在Rectangle類上派生。/-#pragma hdrstop#include#include/-class Graph public: int L; float S; float V; run(); virtual input()L=0;S=0;V=0; virtual test() cout長度=Lendl; cout面積=Sendl; cout體積=Vendl; ;class line:public Graph public: int l; virtual input() l=1; L=l; S=l; V=l; virtual test() cout直線:n; cout長度=Lendl; cout面積=Sendl; cout體積=Vendl; ;class circle:public Graph public: int C; virtual input() C=2; L=C; S=C*C/(4*3.1415926); V=S; virtual test() cout圓:n; cout長度=Lendl; cout面積=Sendl; cout體積=Vendl; ;class rectangle:public line public: int k; virtual input() l=2; k=3; L=l; S=l*k; V=S; virtual test() cout矩形:n; cout長度=Lendl; cout面積=Sendl; cout體積=Vendl; ;class hexahedron:public rectangle public: int h; virtual input() l=2;k=3; h=4; L=l; V=l*k*h; S=2*(l*k+l*h+k*h); virtual test() cout六面體:n; cout長度=Lendl; cout面積=Sendl; cout體積=Vendl; ;int main(int argc, char* argv) Graph a; line b; circle c; rectangle d; hexahedron e; a.run();coutendl; b.run(); coutendl; c.run(); coutendl; d.run();coutendl; e.run(); coutendl; return 0;/-Graph:run() input(); test();實驗四 C+ Builde
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小型工程器械管理制度
- 華為引入項目管理制度
- 華為公司運營管理制度
- 公司優(yōu)化財務管理制度
- 國企銷售人員管理制度
- 醫(yī)藥公司辦公管理制度
- 工務段機具庫管理制度
- 品牌公司倉庫管理制度
- 工位器具倉庫管理制度
- 車展規(guī)劃方案(3篇)
- 社區(qū)服務中心突發(fā)事件應急預案
- 5.5 跨學科實踐:制作望遠鏡教學設計八年級物理上冊(人教版2024)
- 國家職業(yè)技術技能標準 6-30-05-05 挖掘鏟運和樁工機械司機 人社廳發(fā)20235號
- 《電力系統(tǒng)繼電保護》考試復習題庫(附答案)
- 文化遺產(chǎn)概覽學習通超星期末考試答案章節(jié)答案2024年
- 中石油加油站改造工程施工方案
- 2024年中級注冊安全工程師《安全生產(chǎn)專業(yè)實務(道路運輸安全)》真題及答案
- 形勢與政策(吉林大學)智慧樹知到答案2024年吉林大學
- 一般狀態(tài)評估(健康評估課件)
- 中型水庫除險加固工程蓄水安全鑒定自檢報告
- 口腔醫(yī)院感染預防與控制
評論
0/150
提交評論