实验5-类和对象
更新时间:2023-11-07 15:33:01 阅读量: 教育文库 文档下载
实验5 类和对象
程序填空
1.
本题分值:10
题目描述:仔细阅读下列求两个点之间距离的程序,程序的输出结果是50,根据程序的输出结果在划线处填入正确语句。 代码:
#include
using namespace std; class point {
public:
point(float a,float b) { x=a; y=b; } float Distance(point &p) {
float dx=__(1)__; float dy=__(2)__;
return (float)sqrt(dx*dx+dy*dy); } private:
float x,y; };
int main() {
point p1(2,3),p2(32,43); cout<<__(3)__< 答案: (1) p.x-x (2) p.y-y (3) p1.Distance(p2) 2. 本题分值:10 题目描述:设计一个矩阵类CRectangle,该类中的私有成员变量存放Rectangle的长和宽,并设置它们的默认值为1,通过成员函数set()来设定长和宽的值,并确保长宽都在(0,50) 范围之内,求其周长Perimeter并显示输出。以下是完成此项工作的程序,请将未完成的部分填入,使之完整。 代码: #include public: void Set(float a,float b) { if((a>0)&&(a<50)) length=a; else length=1; if((b>0)&&(b<50)) width=b; else width=1; } float perimeter() { return 2*(length+width); } private: float length; float width; }; int main() { CRectangle R; float l,w;//定义矩形的长和宽做为输入变量; // cout<<\请输入矩形的长和宽:\ cin>>l>>w; R.__(1)__; //设置矩形的长和宽 cout<<\矩形的周长为:\ return 0; } 答案: (1) Set(l,w) (2) R.perimeter() 3. 本题分值:10 题目描述:设计一个类Crectangle,要求如下所述。 (1)定义两个点坐标x1,y1,x2,y2,两点所确定的一条直线构成了矩形的对角线。 (2)初始化矩形的两个点时,判断给定的两个点是否能够构成一个矩形,如果不能构成矩形,则矩形对角线的两点初始化为(0,0)和(1,1)。如果可以构成,则用形参初始化对象 的数据成员。 根据以上描述完成下列程序。 代码: #include using namespace std; class CRectangle { public: CRectangle(float Rx1=0,float Ry1=0, float Rx2=1,float Ry2=1); bool IsSquare( ); void PrintRectangle( ); private: //确定直线的两点的坐标 float x1,y1,x2,y2; }; CRectangle::CRectangle(float Rx1 ,float Ry1, float Rx2,float Ry2) { if (__(1)__) //两点的横坐标或纵坐标的值相等,则不能构成矩形 { x1=y1=0; x2=y2=1; cout<<\不能构成矩形! \ } else { __(2)__ //初始化数据成员x1,y1,x2,y2 cout<<\可以构成矩形! \ } } int main() { CRectangle R1(1,3,5,6); CRectangle R2(1,3,1,6); return 0; } 答案: (1) (Rx1==Rx2)||(Ry1==Ry2) (2) x1=Rx1; y1=Ry1; x2=Rx2; y2=Ry2; 4. 本题分值:10 题目描述:下列程序中声明了类girl,其中函数“display”是类girl的友元函数,请在(1)、(2)和(3)处各填入正确的内容,使程序能正常运行。 代码: #include private: char name; int age; public: girl(char n, int d) //构造函数 { name= n; age=d; } __(1)__ void display(girl &x); //声明友元函数 }; void display(__(2)__) //类外定义 友元函数 { cout<<\ //girl类的友元函数能访问girl类对象的私有成员 } int main( ) { girl e('z',18); __(3)__; //调用友元函数 return 0; } 答案: (1) friend (2) girl &x (3) display( e ) 5. 本题分值:10 题目描述:,请完善下面程序,使程序的运行结果如下: This is a constructor ! This is a constructor ! The value of ch is a The value of ch is b This is a destructor of b This is a destructor of a 代码: #include char ch; public: MyClass( ) { cout<<\ ch='a'; } MyClass(char character ) { cout<<\ ch=character; } void Print( ) { cout<<\ } ~ MyClass( ) { cout<<__(2)__< int main( ) { MyClass first, __(3)__; first.Print( ); second.Print( ); return 0; } 答案: (1) ch (2) \(3) second('b') 程序设计 6. 本题分值:10 题目标题:计算两点间的距离 时间限制:1000MS
正在阅读:
实验5-类和对象11-07
九年级数学上册第二章一元二次方程2-1认识一元二次方程2-1-1认识03-09
入党积极分子入党申请书范文1000字09-08
CD4+的调节作用01-08
毕安委〔2016〕1号毕节市安全生产委员会关于推行煤矿安全生产自05-22
湖北省十堰市2010年中学教师申报高级专业技术职务水平能力测试通过人员名单11-23
人教A版高中数学必修四 1.2.1《任意角的三角函数》教学设计(2)07-25
我想对你说作文400字03-31
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 对象
- 实验