首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了MiniComplex是一个用于表示复数的类。请编写这个operator+运算符函数,以实现复数的求和运算。两个复数的和是指这样一个复数:其实部等于两个复数的实部之和,其虚
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了MiniComplex是一个用于表示复数的类。请编写这个operator+运算符函数,以实现复数的求和运算。两个复数的和是指这样一个复数:其实部等于两个复数的实部之和,其虚
admin
2017-02-21
73
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程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& osObj ect,const
MiniComplex&complex)
{
osObject<<"("<<complex.
realPart<<"+"<<complex.
imagPart<<"i"<<")";
return osObject;
}
friend istream&operator>>
(istream&isObj ect,MiniComplex&complex)
{
char ch;
isObj ect>>complex.realPart>>ch>>complex.imagPart>>ch;
return isObj ect;
}
MiniComplex(double real=0,double imag=0);//构造函数
MiniComplex operator+(const
MiniComplex&otherComplex)const;//重载运算符+
private:
double realPart;//存储实部变量
double imagPart;//存储虚部变量
};
void writeToFile(char*);
//main.cpp
#include"MiniComplex.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 numl(23,34),num2(56,35);
cout<<"Initial Value of Numl="<<num1<<"\nInitial Value of Num2="<<num2<<end1;
cout<<num1<<" +"<<num2<<"="<<num1+num2<<end1;//使用重栽的加号运算符
writeToFile("");
return 0;
}
选项
答案
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/o6Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下语句,则对a数组元素的引用不正确的是(0≤i≤9)inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;
假设inta=1,b=2;则表达式a+++--b的值为【】。
数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是
程序流程图中的菱形框表示的是【】。
计算斐波那契数列第n项的函数定义如下:intfib(intn){if(n==0)return1;elseif(n==1)return2;elsereturnfib(n-1)+ilb(n-2);}若执行函数调用表达式fib(
对于派生类的构造函数,在定义对象时构造函数的执行顺序为:先执行调用______的构造函数,再执行调用子对象类的构造函数,最后执行派生类的构造函数体中的内容。
下列选项中,是软件调试技术的是()。
在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是
有如下函数定义:voidfunc(inta,int&B){a++;b++;}若执行代码段:intx=0,y=1;func(x,y);则变量x和y值分别是A)0和1B)1和1C)0和2
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
随机试题
点(0,b)到直线l:3x+4y-5=0的距离是2,且b<0,那么b=()。
PlantingPotatoesWhenIwasaboywehadseveralgardensaroundouroldhouse.Thelargestoneofallwasusedjustforgrow
有哪些因素影响切道斜度的大小
蒋某,男,70岁,高血压30余年,突然剧烈头痛、呕吐、迅速昏迷,血压190/100mmHg,护理体检发现有三偏征,瘫痪肢体肌张力降低,腱反射消失。该患者突然呼吸变慢乃至停止,两侧瞳孔不等大,护士应考虑发生
出版物的种类,除了图书、电子出版物之外,还有()等。
在化学标准化考试中,一般要求试题的区分度在()。
简述行动研究法的具体步骤。
所有国家的法律都表明了其法律的阶级本质。()
爬行动物不是两栖动物,两栖动物都是卵生的,所以凡是卵生的动物都不是爬行动物。以下选项与题面推理形式相同的是( )。
下列属于空想社会主义贡献的是
最新回复
(
0
)