好文档 - 专业文书写作范文服务资料分享网站

C++程序设计与应用基础第二章 类和对象习题答案

天下 分享 时间: 加入收藏 我要投稿 点赞

C++程序设计与应用基础第二章 类和对象习题答案

1、请完成下列填空题

1)在C语言中,编程的单位是___函数__:在C++语言中,编程的单位是____类__。

2)在下面程序的横线处填上适当的语句,使类型该程序执行结果为10。 #include class MyClass { pub1ic:

——MyClass(int a){x=a;}//为x置值 ——int GetNum(){return x;} //取x值 private: int x; };

void main() {

Myclass my(10);

Cout<

3)在类中定义和实现的函数称为__内联函数_______。 4)对类中的成员函数和属性的访问是通过___public___、___protected___和___private___这

3个关键字来控制的。

5) ___new___运算符对指定类型对象动态分配内存并返回该类型的__指针___。

6)假定用户没有给一个名为MyClass的类定义构造函数,则系统对其定义的默认构造函数形式为___MyClass()_____。

2、编程题

1)定义一个复数类imaginary。用友元函数实现该类的加、减、乘和除运算。 答案:

class Imaginary { public:

Imaginary(float a,float b);

friend Imaginary Add(Imaginary& img1,Imaginary& img2); friend Imaginary Sub(Imaginary& img1,Imaginary& img2); friend Imaginary Mul(Imaginary& img1,Imaginary& img2); friend Imaginary Div(Imaginary& img1,Imaginary& img2); private: float x,y; };

Imaginary::Imaginary(float a,float b) { x=a; y=b; }

Imaginary Add(Imaginary& img1,Imaginary& img2) { float a,b; a=img1.x+img2.x;

b=img1.y+img2.y; return Imaginary(a,b); }

Imaginary Sub(Imaginary& img1,Imaginary& img2) { float a,b; a=img1.x-img2.x; b=img1.y-img2.y; return Imaginary(a,b); }

Imaginary Mul(Imaginary& img1,Imaginary& img2) { float a,b;

a=img1.x*img2.x-img1.y*img2.y; b=img1.x*img2.y+img1.y*img2.x; return Imaginary(a,b); }

Imaginary Div(Imaginary& img1,Imaginary& img2) { float a,b;

if((img2.x*img2.x+img2.y*img2.y)!=0) {

a=(img1.x*img2.x+img1.y*img2.y)/(img2.x*img2.x+img2.y*img2.y); b=(img1.y*img2.x-img1.x*img2.y)/(img2.x*img2.x+img2.y*img2.y); return Imaginary(a,b); } else

return Imaginary(0.0,0.0); }

2)定义类Rational。该类存放分数形式的有理数。要求如下所述。 (1)定义带默认参数值的构造函数,默认分数为1。

(2)定义私有变量X和Y分别存放分子和分母。同时分子分母要以最简形式存放。

例如:分数3/9应该以1/3形式存放。

(3)定义成员函数Add、sub、Mul和Div。计算结果仍然以最简形式存放。 (4)以X/Y的形式打印分数。 (5)以浮点数形式打印分数。

3)定义整数集合intset,该类包括以下函数成员 答案:

#include #include class Rational { public:

Rational(int a=1,int b=1) { int c;

c=Common_Divisor(a,b); X=a/c; Y=b/c; }

Rational Add(Rational& r); Rational Sub(Rational& r); Rational Mul(Rational& r); Rational Div(Rational& r);

void Print(){cout<<\

void PrintPoint(){if(Y==0) exit(0);cout<<\int Common_Divisor(int a,int b); private: int X,Y; };

Rational Rational::Add(Rational& r) { int a,b,c; a=X*r.Y +Y*r.X; b=Y*r.Y;

c=Common_Divisor(a,b); return Rational(a/c,b/c); }

Rational Rational::Sub(Rational& r) { int a,b,c; a=X*r.Y-Y*r.X; b=Y*r.Y;

c=Common_Divisor(a,b); return Rational(a/c,b/c); }

Rational Rational::Mul(Rational& r)

C++程序设计与应用基础第二章 类和对象习题答案

C++程序设计与应用基础第二章类和对象习题答案1、请完成下列填空题1)在C语言中,编程的单位是___函数__:在C++语言中,编程的单位是____类__。2)在下面程序的横线处填上适当的语句,使类型该程序执行结果为10。#includeclassMyClass{pub1ic:—
推荐度:
点击下载文档文档为doc格式
3uq8u4a4et1lh1d7s0l19lpyv23wp8008ir
领取福利

微信扫码领取福利

微信扫码分享