Total Submissions: 250 Accepted: 170 Creator: szmtczg
Problem Description
计算图形面积
(1)定义类Shape(形状)、Circle(圆)、Rectangle(长方形)、Square(正方形)。
Shape是抽象基类,Circle、Rectangle、Square是它的派生类
(2)分别计算1个半径为1.5的圆、1个长为2.8,宽为4.5的长方形、1个边长为3.6的正方形的面积,并把它们显示在屏幕上。
完善以下程序
//你的代码写在这里
int main()
{
Shape* ps;
Circle c1(1.5);
ps = &c1;
cout << “圆的面积为:” << ps->Area() << endl;
Rectangle r1(2.8, 4.5);
ps = &r1;
cout << “长方形的面积为:” << ps->Area() << endl;
Square s1(3.6);
ps = &s1;
cout << “正方形的面积为:” << ps->Area() << endl;
return 0;
}
Sample Output
圆的面积为:7.065
长方形的面积为:12.6
正方形的面积为:12.96
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63#include <iostream> using namespace std; const double PI = 3.14; class Shape { public: virtual double Area() = 0; }; class Circle : public Shape { public: double r; Circle(double a) { r = a; } double Area() { return PI * r * r; } }; class Rectangle :public Shape { public: double x, y; Rectangle(double a,double b) { x = a; y = b; } double Area() { return x * y; } }; class Square :public Shape { public: double x; Square(double a) { x = a; } double Area() { return x * x; } }; int main() { Shape* ps; Circle c1(1.5); ps = &c1; cout << "圆的面积为:" << ps->Area() << endl; Rectangle r1(2.8, 4.5); ps = &r1; cout << "长方形的面积为:" << ps->Area() << endl; Square s1(3.6); ps = &s1; cout << "正方形的面积为:" << ps->Area() << endl; return 0; }
最后
以上就是刻苦小鸭子最近收集整理的关于c++ 计算多图形面积的全部内容,更多相关c++内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复