日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++编程练习:多态实验——利用抽象类和纯虚函数,编程计算正方体、球体和圆柱体的表面积和体积。

發布時間:2024/2/28 c/c++ 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++编程练习:多态实验——利用抽象类和纯虚函数,编程计算正方体、球体和圆柱体的表面积和体积。 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

例、要求利用抽象類和純虛函數,編程設計一個程序計算正方體、球體和圓柱體的表面積和體積,具體要求如下:

1、設計一個抽象類為公共基類 ;

2、設計成員函數source_area( ),求表面積;

3、設計成員函數volume( ),求體積;

4、定義數據成員r;

5、派生類cube、sphere、cylinder分別表示正方體類、球體類和圓柱體類。

程序如下:

//頭文件 #include <iostream> using namespace std; #define PI 3.141265 class Solid //定義抽象類 { protected:double r;double s, v; public:virtual double S() = 0;virtual double V() = 0;Solid(double a, double b, double c){r = a;s = b;v = c;} };class Cube :public Solid { public:Cube(double a, double b, double c) : Solid(a, b, c){}double S(){s = 6 * r * r;return s;}double V(){v = r * r * r;return v;} };class Sphere :public Solid { public:Sphere(double a, double b, double c) : Solid(a, b, c){}double S(){s = 4 * PI * r * r;return s;}double V(){v = PI * r * r * r * 4 / 3;return v;} }; class Cylinder :public Solid { protected:double high; public:Cylinder(double h, double r, double a, double v) : Solid(r, a, v){high = h;}double S(){s = 2 * PI * r * r + 2 * PI * r * high;return s;}double V(){v = PI * r * r * high;return v;} }; double source_area(Solid* p) {return p->S(); } double volume(Solid* p) {return p->V(); } //主函數 #include"頭文件.h" #include <iostream> using namespace std; int main() {char a;double r0, h;cout << "請輸入正方體的邊長:" << endl;cin >> r0;Cube cube(r0, 0, 0);cout << "正方體的表面積為:" << source_area(&cube) << endl << "正方體的體積為:" << volume(&cube) << endl;cout << "-------------------------";cout << "" << endl;cout << "請輸入球體的半徑:" << endl;cin >> r0;Sphere sphere(r0, 0, 0);cout << "球體的表面積為:" << source_area(&sphere) << endl << "球體的體積為:" << volume(&sphere) << endl;cout << "-------------------------";cout << "" << endl;cout << "請輸入圓柱體的的底面半徑:" << endl;cin >> r0;cout << "請輸入圓柱體的的高:" << endl;cin >> h;Cylinder cylinder(r0, h, 0, 0);cout << "球體的表面積為:" << source_area(&cylinder) << endl << "球體的體積為:" << volume(&cylinder) << endl;system("pause");return 0; }

測試結果如下:

以上就是本次C++的全部內容,感謝您的閱讀和支持,篇幅較長,若有表述或者代碼中的不當之處,望指出!您的指出和建議能給作者帶來很大的動力!!!

?

總結

以上是生活随笔為你收集整理的C++编程练习:多态实验——利用抽象类和纯虚函数,编程计算正方体、球体和圆柱体的表面积和体积。的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。