首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,其中声明了MiniComplex是一个用于表示复数的类。请编写这个operator+运算符函数,以实现复数的求和运算。两个复数的和是指这样一个复数:其实部等于两个复数的实部之和,其虚部等于两个复数的虚部之和。例如
请打开考生文件夹下的解决方案文件proj3,其中声明了MiniComplex是一个用于表示复数的类。请编写这个operator+运算符函数,以实现复数的求和运算。两个复数的和是指这样一个复数:其实部等于两个复数的实部之和,其虚部等于两个复数的虚部之和。例如
admin
2018-09-22
61
问题
请打开考生文件夹下的解决方案文件proj3,其中声明了MiniComplex是一个用于表示复数的类。请编写这个operator+运算符函数,以实现复数的求和运算。两个复数的和是指这样一个复数:其实部等于两个复数的实部之和,其虚部等于两个复数的虚部之和。例如,(23+34i)+(56+35i)等于(79+69i)。
要求:
补充编制的内容写在“//********333********”与“//********666********”之间,不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
//Minicomplex.h
#include<iostream>
using namespace std;
class MiniComplex//复数类{
public:
//重载流插入和提取运算符
friend ostream&operator<<(ostream& osObject,constMiniComplex&complex)
{
osobject<<"f"<<complex.realPart<<"+"<<complex.imagPart<<"i"<<")";
return osObject;
}
friend istream& operator>>(istream&isObject,MiniComplex&complex)
{
char ch;
isObject>>complex.realPart>>ch>>complex.imagPart>>ch;
return isObject;
}
MiniComplex(double real=0,double imag=0);
//构造函数
MiniComplex operator+(constMiniComplex&otherComplex)const;
//重载运算符+
private:
double realPart;//存储实部变量
double imagPart;//存储虚部变量
};
void writeToFile(char*);
//main.cpp
#include"MiniC0mplex.h"
MiniComplex::MiniComplex(double real,double imag){realPart=real;imagPart=imag;}
MiniComplex MiniComplex::operator+(const MiniComplex&otherComplex)const
{
//********333********
//********666********
}
int main( )
{
void writeToFile(char*);
MiniComplex num1(23,34),num2(56,35);
cout<<"Initial Value of Num1="<<num1<<"\nlnitial Value of Num2="<<num2<<endl;
cout<<num1<<"+"<<num2<
<"="<<num1+num2<<endl;//使用重载的加号运算符
writeToFile(" ");
return0;
}
选项
答案
MiniComplex sum;//定义复数对象Sum sum.imagPart=this->imagPart+otherComplex.imagPart;//把this中的虚部(this->imagPart)和othercomplex虚部相加赋值给Sum虚部 sum.realPart=this->realPart+otherComplex.realPart;//把this中的实部(this->reapart)加上othercomplex实部赋值给Sum实部 return sum;//返回对象sum
解析
主要考查考生对运算符重载的掌握,题目要求编写operater+运算符函数,以实现复数的求和与运算。复数的和的实部等于两个复数的实部之和,虚部等于两个复数的虚部之和。函数要返回的类型是MiniComplex,因此要先定义一个MiniComplex类型变量sum,然后对它们的实部和虚部各自求和,返回sum即可。
转载请注明原文地址:https://kaotiyun.com/show/AfAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
源程序文档化要求程序应加注释。注释一般分为序言性注释和【】。
关于纯虚函数,下列表述中正确的是()。
在进行了任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态,其中只能用于检测刚进的操作是否失败的函数名是()。
关于调用模板函数时模板实参的使用,下列表述中正确的是()。
main函数中发生编译错误的语句是______。#include<iostream.h>classA{public:inta;constintb;A():a(10
若已定义inta[]={1,2,3,4,5,6,7,8,9,10},p=a,i=5;则对数组元素的不正确的引用是
以下for语句中不是死循环的是
下列叙述中错误的是()。
随机试题
黄连解毒汤的功用是()
安全员的检查工具及记录有何要求?
发包人采购的设备经过试车表明存在严重的质量缺陷,需拆除并重新购置,下列关于该事件责任承担的说法中,正确的是()
下列关于多种产品加权平均边际贡献率的计算公式中,错误的是()。
下列不应该确认为费用的是()。
公共政策的功能主要有()。
“闻鸡起舞”,该典故的创作年代是()。
健康心理咨询主要是针对()的求助者。
A、 B、 C、 D、 B
若有定义chara,b;,则执行表达式a=3^2和b=~(5∣2∣0xf0)后,a,b的十进制值分别是()。
最新回复
(
0
)