首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每
admin
2021-06-10
64
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数据表对应元素之和。请编写这个operator+函数。程序的正确输出应该是:
两个数据表:
1,2,3,4,5,6
3,4,5,6,7,8
两个数据表之和:
4,6,8,20,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(len){
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{//两个数据表求和
double*dd=new double[list.length()];
//**********333**********
//**********666**********
return DataList(list.length(),dd);
}
void DataList::show()const{//显示数据表
for(int i=0;i<len-1;i++)
cout<<d
<<",";
cout<<d[len-1]<<endl;
}
int main(){
double s1[]={1,2,3,4,5,6};
double s2[]={3,4,5,6,7,8};
DataList list1(6,s1),list2(6,s2);//定义两个数据表对象
cout<<"两个数据表:"<<endl:
list1.show();
list2.show();
cout<<endl<<"两个数据表之和."<<end!;
(list1+list2).show();
writeToFile(" ",list1+list2);
return0;
}
选项
答案
for(int i=0;i<len;++i)//遍历对象list中的数组和d数组,把对应的值相加后放到数组dd中。 dd[i]=d[i]+list.d[i];
解析
本题考查DataList类,其中涉及构造函数、动态数组、复制构造函数、const函数和运算符重载。
主要考查考生对重载运算符的掌握,题目要求对两个数据表求和。程序已经定义了动态数组dd,并已经分配好了空间,接下来只要运用循环语句完成元素相加并进行赋值即可。
转载请注明原文地址:https://kaotiyun.com/show/J8fp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于栈的叙述中,正确的是()。
有如下类定义:classPoint{private;staticinthow_many;};_______how_many=0;要初始化Point类的静态成员how_many,下划线处应填入的
若MyClass是一个类名,且有如下语句序列MyClassc1,*c2;MyClass*c3=newMyClass;MyClass&c4=c1;上面的语句序列所定义的类对象的个数是()。
下列关于运算符函数的描述中,错误的是()。
下列关于派生类构造函数和析构函数的说法中,错误的是()。
有如下类定义:classB{public:voidfunl0{)private:voidtim20{)protected:voidfun30{));classD:publicB{
有如下两个类定义:classAA{};classBB{AAv1,*v2;BBv3;int*v4;};其中有一个成员变量的定义是错误的,这个变量是()。
要定义一个具有5个元素的一维数组vect,并使其各元素的初值依次是30,50,一88,0和0,则下列定义语句中错误的是()。
在定义函数模板或类模板时,开头的保留字是()。
下列关于栈的叙述正确的是()。
随机试题
牛与瘤胃中的微生物的关系属于()
地高辛的作用是
A.鱼际B.少商C.孔最D.列缺E.太渊
外感寒邪未及发散久则出现热证,这属
患者,男,45岁,排便后肛门局部疼痛,昨日突然加剧,肛口可触及一肿块,直径1.5cm,紫色,触痛考虑可能是
砌体房屋伸缩缝的间距与下列哪项无关?()
(五)[背景资料]某石油化工施工单位承担了一个原料油罐区工程,主体工程为4台30000m3浮顶油罐。在施工组织设计中的主要施工方案设计中,浮顶油罐采用正装法施工,其部分工序的施工流程如下图所示。工程开工一个月后,业主考虑到罐区的综
经检验检疫机构出证、放行后,出口商品的出运期限是不同的,一般商品为( )天,鲜果类、鲜蛋类为( )天内出口。
根据材料,回答126-130题。2008年以来,面对国内遭遇历史罕见的低温雨雪冰冻灾害、国际次贷危机不断蔓延和加深的严峻复杂形势,通过采取措施,有效应对,国民经济保持了平稳较快发展。初步核算,一季度国内生产总值61491亿元,按可比价格计算
近代历史上,中国不败而败的对外战争是()
最新回复
(
0
)