C程序参考答案

2020-04-03 10:23

17. 设有一个类,其定义如下: class CSample {

char *p1,*p2; public:

void init(char *s1,char *s2); void print();

{ cout<<\ } void copy(CSample &one); void free(); };

成员函数init()是将 s1和s2所指向的字符串分别送到p1和p2所指 向的动态申请的内存空间中,函数copy将对象one中的两个字符串 复制到当前的对象中,free()函数释放p1和p2所指向的动态分配的 内存空间。设计一个完整的程序,包括完成这3个函数的定义和测试 工作。

#include #include class CSample {

char *p1,*p2; public:

void init(char *s1,char *s2); void print()

{ cout<<\ } void copy(CSample &one); void free(); };

void CSample::init(char *s1,char *s2) {

p1=new char[80]; p2=new char[80]; strcpy(p1,s1); strcpy(p2,s2); }

void CSample::copy(CSample &one) {

strcpy(p1,one.p1); strcpy(p2,one.p2); }

void CSample::free() {

delete []p1; delete []p2;

}

void main() {

CSample two,three; two.init(\上海\北京\ two.print(); three.init(\ three.copy(two); three.print(); two.free(); three.free(); }

33. 定义一个抽象类CShape,包含纯虚函数Area()(用于计算面积 )和 SetData()(用于重设形状大小)。然后派生出三角形CTriangle 类、矩形CRect类、圆CCircle类,分别求其面积。最后定义一个 CArea类,计算这几个形状的面积之和,各形状的数据通过CArea 类的构造函数或成员函数来设置。编写一个完整的程序。 #include class CShape { public:

virtual float Area()=0; };

class CTriangle:public CShape { public:

CTriangle(float h=0,float w=0) {

H=h;W=w; }

float Area() {

return(float)(H*W*0.5);

virtual void SetData(float f1,float f2)=0;

}

void SetData(float f1,float f2) {

H=f1;W=f2; }

private: float H,W; };

class CRect:public CShape

{ public:

CRect(float h=0,float w=0) {

H=h;W=w;

}

float Area() {

return(float)(H*W); }

void SetData(float f1,float f2) {

H=f1;W=f2; }

private: float H,W; };

class CCircle:public CShape { public:

CCircle(float r=0) {


C程序参考答案.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:浅析房地产企业开发中的成本控制毕业论文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: