A-A+

请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3 其中声明的Data

2022-08-05 22:30:03 问答库 阅读 172 次

问题详情

请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数0perator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数据表对应元素之和。请编写这个operator+函数。程序的正确输出应该是: 两个数据表: 1,2,3,4,5,6 3,4,5,6,7,8 两个数据表之和: 4,6,8,10,12,14 要求: 补充编制的内容写在“//********333********”与“//********666********”之间,不得修改程序 的其他部分。 注意:程序最后将结果输出到文件。ut.dat中。输出函数writeToFile已经编译为。bj文件,并且在本程序中调用。 //DataList.h inClude<iostream> using namespaCe std; ClaSS DataList{//数据表类 intfen; double*d; publiC: DataList(int len,double data[]=NULL); DataList(DataList&data); int lengthConst{retum len;} double getElement(int i)Constt return d[i];} DataList operator+(Const DataList&list)Const;//两个数据表求和 void showConst;//显示数据表 }; void writeToFile(Char$,Const DataList&); //main.Cpp inClude”DataList.h” DataList::DataList(int len,double data[]):len(ien){ d=new double[1en]; for(int i=0;i<len;i++) d㈨i=(data==NULL?0.0:data[i]); } DataList::DataList(DataList&data):len(data.1en){ d=new double[1en]; for(int i=0;i<len;i++) d[i]=data.d[i]; DataList DataList::0perator+(Con8t DataList&list,)Const{//两个数据表求和 double*dd=new double[1ist.1ensth]; //********333******** //********666******** return DataList(1ist.1ength,dd); } void DataList::showConst{//显示数据表 fr(int。i=0;i<len-1;i++) eout$amp;请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:

f0T(int i=0;i<len;++i)//遍历对象list中的数组和d数组,把对应的值相加后放到数组dd中。
dd[i]=d[i]+list.d[i];

考点:文件夹,考生