首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj1,其中有线段类Line的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应该是: End point1=(1,8),End point2=(5,
请打开考生文件夹下的解决方案文件proj1,其中有线段类Line的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应该是: End point1=(1,8),End point2=(5,
admin
2018-07-06
35
问题
请打开考生文件夹下的解决方案文件proj1,其中有线段类Line的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应该是:
End point1=(1,8),End point2=(5,2),length=7.2111。
注意:只修改每个“//ERROR****found****”下的那一行,不要改动程序中的其他内容。
#include<iostream>
#include<cmath>
using namespace std;
class Line;
double length(Line);
class Line(//线段类
doub2e x1,y1;//线段端点1
double x2,y2;//线段端点2
public:
//ERROR*******found*******
Line(double x1,double y1,double x2,double y2)const{
this->x1=x1;
this->y1=y1;
this->x2=x2;
this->y2=y2:
}
double getX1( )const{return x1;}
double getY1( )const{return y1;}
double getX2( )const{return x2;}
double getY2( )const{return y2;}
VOid show( )const{
cout<<"End point1=("<<x1<<","<<y1;
cout<<"),End point2=("<<x2<<","<<y2;
//ERROR*******found*******
cout<<"),length="<<length(this)
<<"。"<<endl;
}
};
double length(Line1){
//ERROR*******found*******
return sqrt((1.x1-1.x2)*(1.x1-1.x2)+(1.y1-1.y2)*(1.y1-1.y2));
}
int main( ){
Line r1(1.0,8.0,5.0,2.0);
r1.show( );
return0;
}
选项
答案
(1)Line(double x1,double y1,double x2,double y2){ (2)cout<<"),length="<<length(*this)<<"。"<<endl; (3)return sqrt((1.getX1( )-1.getX2( ))*(1.getX1( )-1.getX2( ))+(1.getY1( )-1.getY2( ))*(1.getY1( )-1.getY2( )));
解析
(1)主要考查考生对构造函数的掌握,构造函数要给私有成员赋初始值,因此不能使用const来限制。
(2)主要考查考生对this指针的掌握,由函数length的声明double length(Line);可知,length函数的形参是Line类,在void show( )const函数里,this指针指向的是当前Line类,因此可以用*this表示当前Line类。
(3)主要考查考生对成员函数的掌握,length函数是类外函数,不能直接调用类的私有成员,因此要通过成员函数取得对应的值。
转载请注明原文地址:https://kaotiyun.com/show/VAAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
友元类的所有成员函数都是另一个类的______。
根据输出结果填空完成下面程序。#include<iostream.h>classTest{private:staticintval;inta;public:staticintfunc()
在下面函数的画线处填上适当的内容,使该函数能够利用递归方法求解字符串str的长度(不得使用系统提供的字符串处理函数)。intGetLen(char*str){if((6))return(7);elseret
下列程序中横线处应填入的语句是()。ClassBase{public:roidfun(){cout<<“Baseoffun”<<endl;)};classDerived:publicBas
有下列二叉树,对此二叉树前序遍历的结果为()。
有如下程序:#include<iostream>usingnamespacestd;classAA{intn;public:AA(intk):n(k){}
有如下程序#include<iostream>#include<iomanip>usingnamespacestd;intmain(){cout<<setprecision(3)<<f
有下列语句序列:intk=0;do{k+=5;cout<<’$’;}while(k<19);while(k-->0)cout<<’*’;执行上面的语句序列输出字符“$”和“*”的个数
下列叙述中错误的是()。
用树结构表示实体类型及实体间联系的数据模型称为______。
随机试题
简述在质量领先的公司中,高层管理者在质量改进中的地位与作用。
中国古代称为“长庚”的星是()。
细丝CO2气体保护焊CO2气体流量应大于15L/min。()
A.A型血病人B.B型血病人C.O型血病人D.O型或B型血病人E.O型或A型血病人接受A型血的包括
以抗炎、抑制免疫为主要作用的药物是二丙酸倍氯米松。()
某工程项目施工中,发包人供应的材料经过承包人检验通过后用于工程。后来发现部分工程存在缺陷,原因属于材料质量问题,该部分工程需拆除重建,则( )。
在某社区服务中心运作过程中,属于授权行为的是()
下列关于国库券的描述中,正确的是()。[北京航空航天大学2014金融硕士]
Weneedmoremenofcultureandenlightmentbecausewehavetoomany______amongUS.
Certainlynocreatureintheseaisodderthanthecommonseacucumber.Alllivingcreatures,especiallyhumanbeings,havethei
最新回复
(
0
)