莫比乌斯蛇 2021-12-20 19:01 采纳率: 100%
浏览 31
已结题

这个C++程序如何补充完整啊?

已经写好了一部分,还有一部分成员函数和空缺需要填满但是不太确定。
(那些成员函数已经写出来了,希望老师能教教我怎么弄完

球类计算程序
【要求】按以下描述和要求建立基类Circle和派生类Ball:
#include <iostream.h>
#define PI 3.14159
class Circle{ //圆类
protected:
float ; //圆的半径
float ; //圆的周长
public:
Circle(){radi=0; len=0;}; //缺省构造函数
Circle(float x){radi=x;len=2PIradi;} //带参构造函数
Circle(Circle &c){ } //拷贝构造函数
void set(float x){radi=x;len=2PIradi;} //用x值修改半径及长度
void disp(){cout<<"圆半径="<<radi<<" 周长="<<len<<endl;}
};
class Ball:public Circle{ //球类
private:
float weight[4]; //最多可存储4个球
int num; //weight中的球个数
float total; //num个球的总重量
public:
Ball():Circle(){num=0;total=0;for(int i=0;i<4;i++) weight[i]=0;}
Ball(Circle &t, float w,int n):Circle(t){ //带参构造函数
num=n;total=0;
for(int i=0;i<n;i++) { }
}
void add(float w); //在表num处插入个新球,重量为w
void operator +=(Ball &a); //将球对象a的半径和this的前num个重量值分别累加到this的半径和重量上
void display(); //屏幕输出,如果球个数为0则提示相应信息并结束
};
请完成以上未定义函数体的成员函数和有空缺的部分。测试用主函数参考如下:
void main(){
Circle A,B(2.5);
A.disp();B.disp();
A.set(4);
Ball P(A,10,2),Q;
cout<<"球的信息:"<<endl;
P.display();
Q.set(5);
Q.add(35);

  • 写回答

1条回答 默认 最新

  • CSDN专家-link 2021-12-20 19:16
    关注

    float radi;
    float len;
    Circle(Circle &c){radi = c.radi;len = c.len; }
    for(int i=0;i<n;i++) {weight[i] = w;total+=w; }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 12月28日
  • 已采纳回答 12月20日
  • 创建了问题 12月20日

悬赏问题

  • ¥15 ansys fluent计算闪退
  • ¥15 有关wireshark抓包的问题
  • ¥15 Ubuntu20.04无法连接GitHub
  • ¥15 需要写计算过程,不要写代码,求解答,数据都在图上
  • ¥15 向数据表用newid方式插入GUID问题
  • ¥15 multisim电路设计
  • ¥20 用keil,写代码解决两个问题,用库函数
  • ¥50 ID中开关量采样信号通道、以及程序流程的设计
  • ¥15 U-Mamba/nnunetv2固定随机数种子
  • ¥30 C++行情软件的tick数据如何高效的合成K线