首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。Dat.aList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数据表对应
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。Dat.aList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数据表对应
admin
2020-12-21
118
问题
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。Dat.aList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数据表对应元素之和。请编写这个operator+函数。程序的正确输出应该是:
两个数据表:
I,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
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(1ist.length(),dd);
}
void DataList::show()const{//显示数据表
for(inti=0;i<len-1;i++)
cout<<d
<<“,”;
cout<<d[len-1]<<endl;
}
int main(){
double sl[]={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<<“两个数据表之和:”<<endl;
(listl+list2).show();
writeToFile(““,list1+list2);
return 0;
}
选项
答案
for(int i=O;i<len;++i)//遍历对象list中的数组和d数组,把对应的值相加后放到数组dd中。 dd[i]=d[i]+list.d[i];
解析
本题考查Datalist类,其中涉及构造函数、动态数组、复制构造函数、const函数和运算符重载。主要考查考生对重载运算符的掌握,题目要求对两个数据表求和。程序已经定义了动态数组dd,并已经分配好了空间,接下来只要运用循环语句完成元素相加并进行赋值即可。
转载请注明原文地址:https://kaotiyun.com/show/Ppyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
设有如下关系表:则下列操作正确的是()。
若已定义inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0
已知i=5,j=0,下列各式中运算结果为j=6的表达式是()。
下列关于模板的叙述中,错误的是( )。
有如下程序: #include <iostream> using namespace std; class Base { public: void output() { cout<<1; } virtua
已知outfile是一个输出流对象,要想将outfile的文件指针定位到当前位置之前321字节处,正确的函数调用语句是
下列是重载乘法运算符的函数原型声明,其中错误的是
已知数组arr的定义如下:intarr[5]={1,2,3,4,5}、下列语句中输出结果不是2的是
定义学生选修课程的关系模式为SC(S#,Sn,Sd,Sa,C#,G)(其属性分别为学号、姓名、所在系、年龄、课程号和成绩);C(C#,Cn,P#)(其属性分别为课程号、课程名、先选课)。关系模式SC的主键是
设二叉树共有500个结点,其中叶子结点有250个。则度为2的结点个数是
随机试题
自定心卡盘能同时完成工件的定位和夹紧。()
下肢按骨度分寸法计算长为16寸的起止部位是
发行分离交易的可转换公司债券的上市公司,其最近1期末经审计的净资产不低于人民币10亿元。( )
沵迆平原,南驰苍梧涨海,北走紫塞罹门。拖以漕渠,轴以昆岗。重江复关之陕,四会五达之庄。当昔全盛之时,车挂轊,人驾肩,廛闸扑地,歌吹沸天。孳货盐田,铲利铜山。才力雄富,士马精妍。故能侈秦法,佚周令,划崇墉,刳浚洫,图修世以休命。是以板筑雉堞之殷,井斡烽橹之勤
领导交给老张一项统计工作,老张说三天可以完成,但是他临时有出差任务,便将工作交接给了小李,结果小李用一天就完成了工作并向领导做了汇报,老张知道后非常生气。如果你是小李,你会怎么办?
下列文学形象与其特点对应错误的是()。
某甲在裁缝店加工连衣裙一件,在取衣服时,因带的钱不够付加工费,经双方协商将某甲的一块手表留下,付清加工费后取回手表。此时,裁缝店对该手表享有()。
1-sin1
HowKidsLearnItisabigdayforthe"expertbaby."AminivanbearinganofficialUniversityofWashingtonsealpicksupth
Thereisabigdifferencebetweentownlifeand【D1】__________inEngland.Inthecountry,everybodyknowseverybodyelse.Theyknow
最新回复
(
0
)