77范文网 - 专业文章范例文档资料分享平台

《VC++程序设计基础》习题2(5)

来源:网络收集 时间:2019-03-04 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

c1.Print(); c2.Print(); c1=complex(0.8,0.5); c2=55; c3=complex(); c1.Print(); c2.Print(); }

参考答案:

c3.Print();

c3.Print();

Default constructor called. Constructor:real=6.9,imag=0 Constructor:real=12.2,imag=25.8 0+0i 6.9+0i 12.2+25.8i

Constructor:real=0.8,imag=0.5 Constructor:real=55,imag=0 Default constructor called. 0.8+0.5i 55+0i 0+0i

(11)分析下列程序,并回答下列问题 #include #include class String {

int Length; char *Buffer; public:

String() { Length=0; Buffer=0; } String(const char *str);

~String() { delete []Buffer; }

void Setc(int index,char newchar); char Getc(int index) const;

int GetLength() const { return Length; } void Print() const

{ if(Buffer==0) cout<<\ else cout<

void Append(const char *Tail); };

String::String(const char*str) { Length=strlen(str);

Buffer=new char[Length+1]; strcpy(Buffer,str);

20

}

void String::Setc(int index,char newchar)

{ if(index>0 && index<=Length) Buffer[index-1]=newchar; } char String::Getc(int index) const

{ if(index>0 && index<=Length) return Buffer[index-1]; else return 0; } void String::Append(const char *Tail) { char *tmp;

Length+=strlen(Tail); tmp=new char[Length+1]; strcpy(tmp,Buffer); strcat(tmp,Tail); delete []Buffer; Buffer=tmp; }

void main()

{ String s0,s1(\ s0.Print(); s1.Print();

cout<

cout<

s2.Append(\ s2.Print(); }

回答下列问题:

1)该程序中调用包含在string.h文件中的哪些函数?

2)该程序的String类中是否用了函数重载的方法?那些函数是重载的? 3)简述Setc()函数有何功能? 4)简述Getc()函数有何功能? 5)简述Append()函数有何功能?

6)该程序中的成员函数Print()中不用if语句,只写成如下一条语句,行否? cout<

7)该程序中有几处使用了new运算符? 8)写出该程序执行后的输出结果。 参考答案:

1)strlen(),strcpy(),strcat()

2)String类中的构造函数用了函数重载的方法 3)设置指定位置上的字符 4)得到指定位置上的字符 5)字符串连接

21

6)不行 7)两处 8)empty. a string. 9

a stping. i

this a string. (12)#include

class A { int a,b; public: A(int i,int j) { a=i; b=j; } void Move(int x,int y) { a+=x; b+=y; } void Show() { cout<<'('<

class B:private A { int x,y; public: B(int i,int j,int k,int l):A(i,j) { x=k; y=l; } void Show() { cout<

void main() { A a(1,2); a.Show(); B b(3,4,5,6); b.fun(); b.Show(); b.f1(); }

参考答案: (1,2) 5,6 (10,12)

(13)#include class A { int a,b; public:

22

A(int i,int j) { a=i; b=j; } void Move(int x,int y) { a+=x; b+=y; } void Show() { cout<<'('<

class B:public A { int x,y; public: B(int i,int j ,int k,int l):A(i,j),x(k),y(l) { } void Show() { cout<

void main() { A a(1,2); a.Show(); B b(3,4,5,6); b.fun(); b.A::Show(); b.B::Show(); b.f1(); }

参考答案: (1,2) (6,9) 5,6 (6,9)

(14)#include

class L { int X,Y; public: void InitL(int x,int y) { X=x; Y=y; } void Move(int x,int y) { X+=x; Y+=y; } int GetX() { return X; } int GetY() { return Y; } };

class R:public L { int W,H; public: void InitR(int x,int y,int w,int h) { InitL(x,y); W=w; H=h; } int GetW() { return W; } int GetH() { return H; }

23

};

class V:public R { public: void fun() { Move(3,2); } };

void main() { V v; v.InitR(10,20,30,40); v.fun(); cout<<'('<

参考答案: (13,22,30,40) (15)#include

class P { int pri1,pri2; public: P(int p1,int p2) { pri1=p1; pri2=p2; } int inc1() { return ++pri1; } int inc2() { return ++pri2; } void display() { cout<<\ };

class D1:private P { int pri3; public: D1(int p1,int p2,int p3):P(p1,p2) { pri3=p3; } int inc3() { return ++pri3; } void display() { P::display(); cout<<\ };

class D2:public P { int pri4; public: D2(int p1,int p2,int p4):P(p1,p2) { pri4=p4; } int inc4() { return ++pri4; } void display() { P::display(); cout<<\ };

class D12:private D1,public D2 { int pri12; public: D12(int p11,int p12,int p13,int p21,int p22,int p23,int p)

24

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库《VC++程序设计基础》习题2(5)在线全文阅读。

《VC++程序设计基础》习题2(5).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/496334.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: