首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,此工程包含一个源程序文件proj3.cpp,其中定义了用于表示二维向量的类MyVector;程序应当显示(6,8)。但程序中有缺失部分,请按照以下提示,把缺失部分补充完整: (1)在“//** 1 **
请打开考生文件夹下的解决方案文件proj3,此工程包含一个源程序文件proj3.cpp,其中定义了用于表示二维向量的类MyVector;程序应当显示(6,8)。但程序中有缺失部分,请按照以下提示,把缺失部分补充完整: (1)在“//** 1 **
admin
2021-09-05
53
问题
请打开考生文件夹下的解决方案文件proj3,此工程包含一个源程序文件proj3.cpp,其中定义了用于表示二维向量的类MyVector;程序应当显示(6,8)。但程序中有缺失部分,请按照以下提示,把缺失部分补充完整:
(1)在“//** 1 ** **** found ****”的下方是构造函数的定义,它用参数提供的坐标对x和y进行初始化。
(2)在“//** 2 ** **** found ****”的下方是减法运算符函数定义中的一条语句。两个二维向量相减生成另一个二维向量:其X坐标等于两向量X坐标之差,其Y坐标等于两向量Y坐标之差。
(3)在“//** 3 ** **** found ****”的下方,语句的功能是使变量v3获得新值,它等于向量v1与向量v2之和。
注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“**** found ****”。
//proj 3.cpp
#include<iostream>
using std::ostream;
using std::cout;
using std::endl;
class MyVector{ //表示二维向量的类
double x;//X坐标值
double y; //Y坚标值
public:
MyVector(double i=0.0,double j=0.0); //构造函数
MyVector operator+(MyVector j); //重载运算符+
friend MyVector operator一(MyVector i, MyVector j); //重载运算符-
friend ostream& operator << (ostream & os,MyVector v); //重载运算符<<
};
//** 1 ** ******* found *******
___________(double i,double j):x(i),y(j){}
MyVector Myvector::operator+(MyVector j){
return MyVector(x+j.x,y+j.y);
}
MyVector operator一(MyVector i,MyVector j)
{//** 2 ** ******* found *******
return MyVector(___________);
}
ostream& operator<<{ ostream&os,MyVector v){
os <<’(’<<v.x <<’,’<<v.y<<’)’;//输出向量v的坐标
return os;
}
int main()
{
MyVector v1(2,3),v2(4,5),v3;
//**3** *******found*******
v3=_____________;
cout<<v3<<endl;
return 0;
}
选项
答案
(1)MyVector::MyVector。 (2)i.x—j.x,i.y—i.y (3)v1 +v2
解析
(1)主要考查的是构造函数,在类外定义构造函数时要使用类名和作用域,即MyVector::MyVector。
(2)主要考查重载运算符“一”的返回语句,返回值应为向量i和j的差,即My Vector(i.x—j.x,i.y—j.y);。
(3)主要考查重载运算符“+”的使用,由题目可知v3是v1和v2的和,前面我们已经重新定义了运算符“+”,所以在这里直接使用语句v3=v1+v2;即可。
转载请注明原文地址:https://www.kaotiyun.com/show/Eb5p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
执行后的输出结果是()。#include<iostream.h>voidmain(){inti(0);while(++i){if(i==10)break;if(i%3!=1)continue;cout<<i<<endl;}
下列关于派生类构造函数和析构函数的说法中,错误的是()。
有如下语句序列:ifstreaminfile(“DATA.DAT”);if(infile.good())cout
假定下列语句都是程序运行后首次执行的输出语句,其中输出结果与另外三条语句不同的语句是()。
对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为()。
下列关于C++预定义流对象的叙述中,正确的是()。
下列有关数据库的描述,正确的是()。
数据库设计的根本目标是要解决()。
有如下4个语句:①tout
若实体A和B是一对多的联系,实体B和C是一对一的联系,则实体A和C的联系是()。
随机试题
下列说法不正确的是
心脏的正常起搏点是
32岁,女,1年前自然分娩一男婴,体重4500g,产后2小时内出血2500ml。产后至今未来月经,伴性欲减退,毛发脱落,畏寒,嗜睡,低血压等症状。该患者可能的诊断是
()属于自然血亲。
一般来说,()仅与生产循环有关,而与其他循环无关。
根据下列材料,回答问题。2018年1季度,全国粗钢产量21215万吨,同比增长5.4%。增速同比提高0.8个百分点;钢材产量24693万吨,增长4.7%,提高2.6个百分点;铁合金产量815万吨,增长9.4%,提高6.6个百分点;焦炭产量10285万
阅读以下说明和Java代码,请回答问题1和问题2。【说明】己知类Stock和类cxyjava都定义在cxyjava.java文件中,类Stock的定义中第14行前共有四行出现了错误,将下面代码修改正确并完善后的输出结果为:0:01
Numberoflanguagesintheworld(approx)is______.
Youshouldspendabout20minutesonthistask.Thediagramsbelowshowthedevelopmentofasmallfishingvillageanditssurro
Theywavedthewhiteflagasa______thattheywishtosurrender.
最新回复
(
0
)