首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每
admin
2020-06-29
105
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程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
#inc!udc<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
i);
}
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{//显示数据表
flor(int i=0;i<len-1;i++)
cout<<d
<<",";
cout<<d[len-1]<<end1;
}
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<<"两个数据表:"<<end1;
list1.show();
list2.show();
cout<<end1<<"两个数据表之和:"<<end1;
(list1+list2).show();
writeToFile(" ",list1+list2);
return 0;
}
选项
答案
for(int i=0;i<len;++i) //遍历对象list中的数组和d数组,把对应的值相加后放到数组dd中。 dd[i]=d[i]+list.d[i];
解析
主要考查考生对重载运算符的掌握,题目要求对两个数据表求和。程序已经定义了动态数组dd,并已经分配好了空间,接下来只要运用循环语句完成元素相加并进行赋值即可。
转载请注明原文地址:https://kaotiyun.com/show/8a8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
非成员函数应声明为类的__________函数才能访问这个类的private成员。
以下程序的执行结果是______。#include<iostream.h>voidmain(){intx=5y=2;cout<<!(y==x/2)<<",";cout<<(y!=x%3)<<","
关于getline()函数的下列描述中,()是错误的。
有如下程序:#include<iostream>usingnamespacestd;classONE{public:virtualvoidf(){cout<<"1";}};
将前缀运算符“一”重载为非成员函数,下列原型中,能正确用于类中说明的是()。
下列字符串中不能作为C++标识符使用的是()。
待排序的关键码序列为(15,20,9,30,67,65,45,90),要按关键码值递增的顺序排序,采取简单选择排序法,第一趟排序后关键码15被放到第()个位置。
下面是重载为非成员函数的运算符的函数原型,其中错误的是()。
若实体A和B是一对一的联系,实体B和C是多对一的联系,则实体A和C的联系是
随机试题
假性牙周袋与真性牙周袋的区别是
在药物不良反应监测中占有极重要地位的监测方法是
期间费用包括()。
境内上市外资股的投资主体有()
遗传对儿童发展有重要的作用,但影响儿童发展的后天因素主要是营养、睡眠和适宜的运动。()
在网站设计中所有的站点结构都可以归结为()。
【2013陕西NO.37】罗马是一座古色古香、历史悠久、充满__________和艺术气息的城市,是用艺术品装饰得最多的地方,是__________的露天开放博物馆,具有独特风格,万般诱人。但也有人说,罗马__________,小偷多,骗子多,不如其他欧洲
《中华民国临时约法》确立的政体是()(2011年一法综一第16题)
Transport gateways connect byte streams in the transport layer. Application gateways allow interworking above(72).
A、reticentB、positiveC、well-informedD、optimisticB
最新回复
(
0
)