首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数据表对应元
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数据表对应元
admin
2020-04-07
75
问题
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数据表对应元素之和。请编写这个operator+函数。程序的正确输出应该是:
两个数据表:
1,2,3,4,5,6
3,4,5,6,7,8
两个数据表之和:
4,6,8,10,12,14
要求:
补充编制的内容写在“//******** 333 ********”与“//******** 666 ********”之间,不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
//DataList.h
#include<iostream>
using namespace std;
class DataList {//数据表类
int len;
double * d;
public:
DataList(int len,double data[]=NULL);
DataList(DataList&data);
int length()const{return len;}
double getElement(int i)const{return d
;}
DataList operator+(const DataList&list、const;//两个数据表求和
void show ()const;//显示数据表
};
void writeToFile(char *, const DataList&);
//main.cpp
#include"DataList.h"
DataList::DataList(int len,double data[]):len(fen){
d:new double[len];
for(int i=0; i<len;i++)
d
=(data==NULL?0.0:data
);
}
DataList::DataList(DataList&data):len(data.len){
d=new double[len];
for(int i=0; i<len;i++)
d
=data.d
;
}
DataList DataList::operator+(const DataList&list)const{
//两个数据表求和
doubie * dd =new double[list.length()];
//******** 333 ********
//******** 666 ********
return DataList(list.length(),dd);
}
void DataList::show()con.st{//显示数据表
for(int i=0;i<len一1;i++)
cout<<d
<<",";
cout<<d[len—1]<<endl;
}
int msin(){
double s1[]={1,2,3,4,5,6};
double s2[]={3,4,5,6,7,8};
DataList listl(6,s1),list2(6,s2);//定义两个数据表对象
cout<<”两个数据表:”<<endl;
list1.show();
list2.show();
cout<<endl<<"两个数据表之和:"<<endl;
(listl+list2).show();
writeToFile ( "", list1 +list2);
return 0;
}
选项
答案
1 for(int i=0;i <len; ++i) //遍历对象list中的数组和d数组,把对应的值相加后放到数组dd中。 2 dd[i]=d[i]+list.d[i];
解析
主要考查考生对重载运算符的掌握,题目要求对两个数据表求和。程序已经定义了动态数组dd,并已经分配好了空间,接下来只要运用循环语句完成元素相加并进行赋值即可。
转载请注明原文地址:https://kaotiyun.com/show/fw8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列函数的运行结果是()。#include<iostream.h>intadd(inta,intb);voidmain(){externintx,y;cout<<add(x,y)<
若下列程序运行时输出结果为1,A,10.12,B,3.5请将程序补充完整。#include<iostream>usingnamespacestd;intmain(){voidt
在C++中用来实现运行时多态性的是______。
以下程序的输出结果是()。main(){inta=4,b=5,c=0,d;d=!a&&!b)||!c;cout<<d<<endl;}
若有以下程序:#include<iostream>usingnamespacestd;intf(intx,inty){return(y-x)*x;}intmain()
执行下列程序的输出结果是______:#include<iostream>usingnamespacestd;classTestClassl{public:voidfunl(){cout<<"Te
设x,y,t均为int型变量,执行语句:x=y=3;t=++x||++y;,完成后,y的值为( )。
下列程序输出的结果是()。#include<stdio.h>sub1(chara,charb){charc;c=a;a=b;b=c:}sub2(char*a,charb){charc;c=*a;”a=b:b=c
设栈的存储空间为S(1:40),初始状态为bottom=0,top=0,现经过一系列入栈与出栈运算后,top=20,则当前栈中有【2】个元素。
假设函数fun已经定义,其原型为“voidfun(inta,intb=7,char*p=**);”下列函数调用中错误的是
随机试题
管理的目的是()
A.安神定志丸B.酸枣仁汤C.琥珀多寐丸D.养心汤病后血虚肝热不寐者,治宜选用
符合变性的改变有
A.二氢吡啶类钙通道阻滞药B.β受体拮抗药C.α受体拮抗药D.血管紧张素转换酶抑制剂E.中枢交感神经抑制剂合并糖尿病、尿蛋白阳性的高血压患者降压宜首选
A.硫脲类制剂B.碘制剂C.普萘洛尔D.放射性碘E.手术女性,40岁。中度弥漫性甲状腺肿伴甲亢合并迁延性肝炎。且对抗甲状腺药物过敏。首选何种治疗
A.前列腺素B.促卵泡素C.促黄体素/人绒毛膜促性腺激素D.孕激素E.孕马血清促性腺激素母畜不发情,卵巢上无生长卵泡的催情用()。
新课程特别强调引导学生建立哪种新的学习方式?()
城市不仅是一个国家或者地区的政治、经济、文化、科技和教育中心,而且已经成为经济增长的强大引擎。美国的纽约、芝加哥和洛杉矶三个城市群,日本的东京、阪神和名古屋三大城市群,以及中国的长三角、珠三角和环渤海三大城市群等等对本国经济的贡献率都在一半以上。承接上述文
下列说法正确的是:
Ofalltheareasoflearningthemostimportantisthedevelopmentofattitudes.Emotionalreactionsaswellaslogicalthought
最新回复
(
0
)