首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)定义复数类CComplex的私有成员变量real和imaginary,分别用来表示复数的实部和虚部,都是d
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)定义复数类CComplex的私有成员变量real和imaginary,分别用来表示复数的实部和虚部,都是d
admin
2019-06-05
37
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)定义复数类CComplex的私有成员变量real和imaginary,分别用来表示复数的实部和虚部,都是double类型的变量。请在注释//********1********后添加适当的语句。
(2)添加复数类CComplex的带一个参数的构造函数,分别将real和imaginary赋值为参数r和0。请在注释//********2********后添加适当的语句。
(3)完成对运算符“+”的重载,分别对复数的实部和虚部相加。请在注释//********3********后添加适当的语句。
(4)完成复数的友元函数Equal(CComplex & c1,CComplex & c2)的定义,如果两个数的实部和虚部都相等,则返回1,否则返回0,请在注释//********4********后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
1 #include<iostream.h>
2 class CComplex
3 {
4 private:
5 //********1********
6
7 public:
8 CComplex()
9 {
10 real=imaginary=0;
11 }
12 CComplex(double r) {
13 //********2********
14
15 }
16 CComplex operator+(CComplex&c1) {
17 //********3********
18
19 temp.real=real+c1.real;
20 temp.imaginary=imaginary+c1.imaginary;
21 return temp;
22 }
23 void Set(int re,int imag)
24 {
25 real=re;
26 imaginary=imag;
27 }
28 friend bool Equal(CComplex & c1,CComplex & c2);
29 };
30 bool Equal(CComplex & c1,CComplex & c2)
31 {
32 //********4********
33
34 }
35 int main()
36 {
37 CComplex complex1(5);
38 CComplex complex2;
39 cout<<Equal(complex1,complex2)<<endl;
40 complex2.Set(5,0);
41 cout<<Equal(complex1,complex2)<<end1;
42 return 0;
43 }
选项
答案
(1)添加语句:double real,imaginary; (2)添加语句:real=r;imaginary=0; (3)添加语句:CComplex temp; (4)添加语句:return(c1.real==c2.real )&& (c1.imaginary =c2.imaginary);
解析
程序中定义了类CComplex,含有私有成员变量real和imaginary,分别用来表示复数的实部和虚部,CComplex类有两个构造函数、对运算符“+”的重载、Set(int re,int imag)可改变实部和虚部的值、友元Equal(CComplex& c1,CComplex& c2)函数可判断两个CComplex对象是否相等。
(1)第1个标识下完成定义复数类CComplex的私有成员变量real和imaginary,均为double类型的变量,因此第1个标识下应添加“doublereal,imaginary;”。
(2)构造函数CComplex(double r)完成类的初始化,该构造函数有一个参数,分别将real和imaginary赋值为参数r和0,因此第2个标识下应添加“real=r:imaginary=0;”。
(3)编译程序可知,变量temp没有定义,由operator+(CComplex& c1)函数体的语句可知,temp为函数的返回值,而operator+(CComplex& c1)函数体函数返回CComplex类对象,故在第3个标识下补充temp定义,即“CComplex temp;”。
(4)即判断两个对象c1和c2的实部和虚部是否均相等,两个逻辑结果相与即可,因此第4个标识下应添加“return(c1.real==c2.real)&&(c1.imaginary==c2.imaginary);”。
转载请注明原文地址:https://kaotiyun.com/show/v18p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面类的声明中的几个语句,正确的是(设定语句是主函数中的语句)()。classTestClass{private:intdata;public:TestClass(intg_data)
下列关于栈的叙述中,正确的选项是()。A)在栈中只能删除数据B)在栈中只能插入数据C)栈是先进先出的线性表D)栈是先进后出的线性表
执行下列语句序列:imx=1,&y=x;cout<<x<<’-’<<y<<end1;输出结果为______。
数据流的类型有______和事务型。
对软件设计的最小单位(模块或程序单元)进行的测试通常称为______测试。
Windows环境下,由C++源程序文件编译而成的目标文件的扩展名是()。A)cppB)exeC)objD)lik
C++系统预定了4个用于标准数据流的对象,下列选项中不属于此类对象的是()。A)coutB)cinC)cerrD)cset
常见的软件开发方法有结构化方法和面向对象方法。对某应用系统经过需求分析建立数据流图(DFD),则应采用______方法。
已知类Myclass的定义如下classMyClass{public:voidfunction1(MyClass&C){cout<<c.data;)staticvoidfunction2(MyClass&C)
有如下类定义:classB{public:voidfun1(){}private:voidfun2(){}protected:voidfun3(){}};classD:publicB{
随机试题
美国首都华盛顿的标志性建筑是()。
试管婴儿
CR系统用成像板(IP)来接收X线的模拟信息,然后经过模/数转换来实现影像的数字化。对IP的曝光过程就是信息采集。关于CR的信息采集,叙述错误的是
A.蛔虫B.隐孢子虫C.类圆线虫D.毛尾线虫E.食道口线虫某仔猪群精神不振,消瘦,腹部膨大,腹泻。粪检见大量壳薄透明的卵圆形虫卵,内含折刀样幼虫。该病例最可能的致病病原是
患者,13岁。在生活中养成抽烟习惯,父母非常恼火,心理医生建议其采取的较有效的行为治疗是
下列选项中,关于个人外汇账户及外汇现钞管理的表述,正确的包括()。
诗人创作诗歌很讲究意境的创设,借物传情,以景物________心境,是其常用的________。依次填入横线部分最恰当的一项是()。
随着债务置换计划的实施,地方债到期不能偿付的风险基本消弭,刚性兑付再一次得到确保。但地方债管理要真正走向规范化,还有许多技术问题有待解决,其中最为突出的就是地方政府的信用评级问题。信用评级是债券定价的基础,直接关乎发行方的融资成本,但由于信用评级标准不明确
简述凯末尔主义。(华南师范大学2006年世界近现代史真题)
Thoughnotbiologicallyrelated,friendsareas"related"asfourthcousins,sharingabout1%ofgenes.Thatis【B1】______1astu
最新回复
(
0
)