C++题目,设计2个类
第一题:编写几何点(二维平面上)的类Point,包括位置属性(二维坐标x,y),成员函数包括:点的位置获取函数GetX()和GetY(),点的位置设置函数SetX()和S...
第一题:编写几何点(二维平面上)的类Point,包括位置属性(二维坐标x,y),
成员函数包括:
点的位置获取函数GetX()和GetY(),
点的位置设置函数SetX()和SetY(),
点的位置移动函数MoveTo()
点的信息打印函数Display()。
void main() { Point p(100,100);
p.Display();
p.MoveTo(200,200);
cout<<"after moving…"<<endl;
p.Display();}
程序输出结果如下:
X: 100
Y: 100
after moving…
X: 200
Y: 200
第二题:
编写几何图形圆的类Circle,包括两个属性:圆心O(用上题中的Point类实现)和半径R。
成员函数包括:
圆心位置获取函数GetO()
半径获取函数GetR()
半径位置设置函数SetR()
圆的位置移动函数MoveTo()
圆的半径设置函数SetR()
圆的信息打印函数Display()
void main()
{ Point p(100,100); Point p2(200,200); Circle c(p, 100); c.Display();
c.MoveTo(p2); cout<<"after moving"<<endl; c.Display();
c.SetR(200); cout<<"after altering r"<<endl;
c.Display();}
程序输出结果如下:
Circle: (100,100),100
after moving
Circle: (200,200),100
after altering r
Circle: (200,200),200 展开
成员函数包括:
点的位置获取函数GetX()和GetY(),
点的位置设置函数SetX()和SetY(),
点的位置移动函数MoveTo()
点的信息打印函数Display()。
void main() { Point p(100,100);
p.Display();
p.MoveTo(200,200);
cout<<"after moving…"<<endl;
p.Display();}
程序输出结果如下:
X: 100
Y: 100
after moving…
X: 200
Y: 200
第二题:
编写几何图形圆的类Circle,包括两个属性:圆心O(用上题中的Point类实现)和半径R。
成员函数包括:
圆心位置获取函数GetO()
半径获取函数GetR()
半径位置设置函数SetR()
圆的位置移动函数MoveTo()
圆的半径设置函数SetR()
圆的信息打印函数Display()
void main()
{ Point p(100,100); Point p2(200,200); Circle c(p, 100); c.Display();
c.MoveTo(p2); cout<<"after moving"<<endl; c.Display();
c.SetR(200); cout<<"after altering r"<<endl;
c.Display();}
程序输出结果如下:
Circle: (100,100),100
after moving
Circle: (200,200),100
after altering r
Circle: (200,200),200 展开
1个回答
展开全部
第1题源程序如下:
#include <iostream>
using namespace std;
class Point{
private:
int x,y;
public:
Point(int xpos,int ypos){
x=xpos;
y=ypos;
}
void SetX(int xpos){
x=xpos;
}
void SetY(int ypos){
y=ypos;
}
int GetX(){
return x;
}
int GetY(){
return y;
}
void MoveTo(int xpos,int ypos){
x=xpos;
y=ypos;
}
void Display(){
cout<<"X:"<<GetX()<<endl<<"Y:"<<GetY()<<endl;
}
};
void main()
{
Point p(100,100);
p.Display();
p.MoveTo(200,200);
cout<<"after moving…"<<endl;
p.Display();
}
第2题源程序如下:
#include <iostream>
using namespace std;
class Point{
protected:
int x,y;
public:
Point(){
x=0;
y=0;
}
Point(int xpos,int ypos){
x=xpos;
y=ypos;
}
void SetX(int xpos){
x=xpos;
}
void SetY(int ypos){
y=ypos;
}
int GetX(){
return x;
}
int GetY(){
return y;
}
void MoveTo(int xpos,int ypos){
x=xpos;
y=ypos;
}
void Display(){
cout<<"X:"<<GetX()<<endl<<"Y:"<<GetY()<<endl;
}
};
class Circle :public Point{
private:
Point O;
int R;
public:
Circle(Point p,int radious){
O=p;
R=radious;
}
Point GetO(){
return O;
}
int GetR(){
return R;
}
void MoveTo(Point p){
O=p;
}
void SetR(int radious){
R=radious;
}
void Display(){
cout<<"Circle:("<<O.GetX()<<","<<O.GetY()<<"),"<<R<<endl;
}
};
void main()
{
Point p(100,100);
Point p2(200,200);
Circle c(p, 100); c.Display();
c.MoveTo(p2);
cout<<"after moving"<<endl;
c.Display();
c.SetR(200);
cout<<"after altering r"<<endl;
c.Display();
}
#include <iostream>
using namespace std;
class Point{
private:
int x,y;
public:
Point(int xpos,int ypos){
x=xpos;
y=ypos;
}
void SetX(int xpos){
x=xpos;
}
void SetY(int ypos){
y=ypos;
}
int GetX(){
return x;
}
int GetY(){
return y;
}
void MoveTo(int xpos,int ypos){
x=xpos;
y=ypos;
}
void Display(){
cout<<"X:"<<GetX()<<endl<<"Y:"<<GetY()<<endl;
}
};
void main()
{
Point p(100,100);
p.Display();
p.MoveTo(200,200);
cout<<"after moving…"<<endl;
p.Display();
}
第2题源程序如下:
#include <iostream>
using namespace std;
class Point{
protected:
int x,y;
public:
Point(){
x=0;
y=0;
}
Point(int xpos,int ypos){
x=xpos;
y=ypos;
}
void SetX(int xpos){
x=xpos;
}
void SetY(int ypos){
y=ypos;
}
int GetX(){
return x;
}
int GetY(){
return y;
}
void MoveTo(int xpos,int ypos){
x=xpos;
y=ypos;
}
void Display(){
cout<<"X:"<<GetX()<<endl<<"Y:"<<GetY()<<endl;
}
};
class Circle :public Point{
private:
Point O;
int R;
public:
Circle(Point p,int radious){
O=p;
R=radious;
}
Point GetO(){
return O;
}
int GetR(){
return R;
}
void MoveTo(Point p){
O=p;
}
void SetR(int radious){
R=radious;
}
void Display(){
cout<<"Circle:("<<O.GetX()<<","<<O.GetY()<<"),"<<R<<endl;
}
};
void main()
{
Point p(100,100);
Point p2(200,200);
Circle c(p, 100); c.Display();
c.MoveTo(p2);
cout<<"after moving"<<endl;
c.Display();
c.SetR(200);
cout<<"after altering r"<<endl;
c.Display();
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询