第六章作業

2021-07-02 23:02:38 字數 4675 閱讀 2289

【6.12】要求:

(1)建立基類area_cl的兩個派生類rectangle與isosceles,讓每乙個派生類都包含乙個函式area(),分別用來返回矩形與三角形的面積。用建構函式對height與width進行初始化。

(2)寫出主程式,用來求height與width分別為10.0與5.0的矩形面積,以及求height與width分別為4.0與6.0的三角形面積。

(3)要求通過使用基類指標訪問虛函式的方法(執行時的多型)分別求出矩形和三角形的面積。

#include 

using

namespace

std;

class

area_cl

virtual

double

area() = 0;

};

class

rectangle :

public

area_cl ;

double

area()

};

class

isosceles :

public

area_cl ;

double

area()

};

int

main()

【6.13】定義基類base,其資料成員為高h,定義成員函式disp為虛函式。然後再由base派生出長方體類cuboid與圓柱類cylinder。並在兩個派生類中定義成員函式disp為虛函式。在主函式中,用基類base定義指標變數pc,然後用指標pc動態呼叫基類與派生類中虛函式disp,顯示長方體與圓柱體的體積。

#include

using

namespace

std;  

class

base   

virtual

void

disp()  

{}  

protected

:  double

h;  

};  

class

cuboid :

public

base  

virtual

void

disp()  

protected

:  double

l_;             

//定義長;

double

w_;             

//定義寬;

};  

class

cylinder :

public

base   

virtual

void

disp()  

protected

:  double

r_;              

//定義半徑

const

double

pi = 3.1415926;  

};  

intmain()  

#include 

using

namespace

std;

class

area_cl

virtual

double

area() = 0;

};

class

rectangle :

public

area_cl ;

double

area()

};

class

isosceles :

public

area_cl ;

double

area()

};

int

main()

給出下面的抽象基類container:

class

container   

virtual

double

su***ce_area() = 0;       

//純虛函式

virtual

double

volume() = 0;             

//純虛函式

};  

要求建立3個繼承container的派生類cube、sphere、與cylinder,讓每個派生類都包含虛函式su***ce_area()和double volume(),分別用來計算正方體、球體和圓柱體的表面積及體積。要求寫出主程式,應用c++的多型性,分別計算邊長為6.0的正方體、半徑為5.0的球體,以及半徑為5.0和高為6.0的圓柱體的表面積和體積。

#include

using

namespace

std;

class

container ;

virtual

double

su***ce_area() = 0;

virtual

double

volume() = 0;

};

class

cube:

public

container

virtual

double

su***ce_area()

virtual

double

volume()

};

class

sphere :

public

container

const

double

pi = 3.1415926;

virtual

double

su***ce_area()

virtual

double

volume()

};

class

cylinder :

public

container

const

double

pi = 3.1415926;

virtual

double

su***ce_area()

virtual

double

volume()

private

:

double

h_;

};

int

main()

第六章作業

例題6.1 舉例說明了指標的幾種表示形式,p指向指標指向的變數,p指向該變數的儲存位址,例題6.1 指標的幾種形式 自動化1121 李慶典 include 預編譯處理命令 using namespace std 標準名字空間 int main q 0 cout string1 is cout 例題6...

作業第六章

一簡答題 1.說明在迴圈結構中break和continue語句的區別。答 break語句 用於終止某個迴圈,程式跳轉到迴圈體外的下一條語句。continue語句 用於跳出本次迴圈,進入下一次迴圈。2.使用for迴圈結構實現 從鍵盤上輸入接收從周一到周五每天學習時間 以小時為單位 並計算每日平均學習時...

第六章作業

一簡答題 1.什麼是盒子模型?盒子模型的屬性有那幾個?它們的作用分別是什麼?答 1 css將網頁中所有元素都看成乙個個盒子。2 盒子模型屬性有邊框 內邊距和外邊距。3 邊框設定網頁元素邊框的顏色 粗細和樣式 外邊距指與其他盒子之間的距離,也就是指網頁中元素與元素之間的距離,便於精確控制盒子的位置 內...