首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)定义复数类CComplex的私有成员变量real和imaginary,分别用来表示复数的实部和虚部,都是d
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)定义复数类CComplex的私有成员变量real和imaginary,分别用来表示复数的实部和虚部,都是d
admin
2015-05-30
25
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)定义复数类CComplex的私有成员变量real和imaginary,分别用来表示复数的实部和虚部,都是double类型的变量。请在注释//********1********后添加适当的语句。
(2)添加复数类CComplex的带一个参数的构造函数,分别将real和imaginary赋值为参数r和0。请在注释//********2********后添加适当的语句。
(3)完成对运算符“+”的重载,分别对复数的实部和虚部相加。请在注释//********3********后添加适当的语句。
(4)完成复数的友元函数Equal(CComplex&cl,CComplex&c2)的定义,如果两个数的实部和虚部都相等,则返回1,否则返回0,请在注释//********4********后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
1 #include
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 {
2 5 real=re ;
26 imaginary=imag;
27 }
28 friend bool Equal(CComplex&cl,CCompiex&c2);
29 };
30 bool Equal(CComplex&cl,CComplex&c2)
31 {
32 //********4********
33
34 }
35 int main()
36 {
37 CComplex complexl(5);
38 CComplex complex2;
39 cout<
40 complex2.Set(5,0);
41 cout<
42 return 0 ;
43 }
选项
答案
(1)添加语句:double real,imaginary; (2)添加语句:real=r; imaginary=0 ; (3)添加语句:CCompiex temp; (4)添加语句:return(c1.real==c2.real)&&(c1.imaginary==c2.imaginary);
解析
程序中定义了类CComplex,含有私有成员变量real和imaginary,分别用来表示复数的实部和虚部,CComplex类有两个构造函数、对运算符“+”的重载、Set(int re,int imag)可改变实部和虚部的值、友元Equal(CComplex&cl,CComplex&c2)函数可判断两个CComplex对象是否相等。
[解题思路]
(1)第1个标识下完成定义复数类CComplex的私有成员变量real和imaginary,均为double类型的变量,因此第1个标识下应添加“double real,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定义,即“CComplextemp;”。
(4)即判断两个对象c1和c2的实部和虚部是否均相等,两个逻辑结果相与即可,因此第4个标识下应添加“return(c1.real == c2.real)&&(c1.imaginary==c2.imaginary);”。
转载请注明原文地址:https://kaotiyun.com/show/ZPNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若有intx[5],*p=x;则数组元素x[3]可以表示为*(p+【】),也可以表示为p[3]。
建立数据字典的时机是【】。
下列关于运算符重载的描述中,正确的是()。
下列类的定义中,有()处语法错误。classBase{publiC:Base(){}Base(inti){data=i;}ptivate:
软件需求分析阶段的工作,可以分为四个方面:需求获取,需求分析,编写需求规格说明书,以及()。
下列说法有错误的是______。
有如下的对类“X”的说明,其中______是错误的。classX{
在长度为n的顺序表的第i(1≤i≤n+1)个位置上插入一个元素,元素的移动次数为______。
类模板的使用实际上是将类模板实例化为一个具体的______。
在计算机中,算法是指
随机试题
糖尿病是一组由多病因引起的代谢性疾病,其共同标志是()。
烧碱的化学名称为氢氧化钠,而纯碱的化学名称为碳酸钠。
治疗指数是
A.4~6个月B.5~7个月C.8~10个月D.10~12个月E.12~18个月婴儿添加辅食的时间宜在()。
对于个人汽车贷款贷款合同的变更与解除的说法中,错误的是()。
在Word中,为了将文档审阅者的每一次插入、删除或是格式更改都标记出来,应启用()功能。
初中数学是义务教育数学学习的第()学段.
“喜者见之则喜,忧者见之则忧”反映了()。(2015.江苏)
区别科学方法与非科学方法最主要的特性是()
在数据的存储结构中,不仅需要存储各数据元素的信息,还要存放各元素之间______的信息。
最新回复
(
0
)