首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数据表对应元
请打开考生文件夹下的解决方案文件proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数据表对应元
admin
2020-04-07
28
问题
请打开考生文件夹下的解决方案文件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://jikaoti.com/ti/hPA0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为
如下程序声明了一个使用两个通用数据类型的模板类dataClass,其中构造函数用于初始化两个数据成员,成员函数show用于输出两个数据成员的数值。#include<iostream>usingnamespaeestd;_
以下不正确的定义浯句是
程序设计语言的工程特性之一为()。
A、 B、 C、 D、 B在引用函数模板时,如果没在函数名和参数之间加上类型参数,就默认表示参数类型严格按照模板定义的类型匹配;如果在函数名和参数之间加上了类型参数,则对实参自动进行类型转换。
下列程序输出的结果是()。#include<stdio.h>sub1(chara,charb){charc;c=a;a=b;b=c:}sub2(char*a,charb){charc;c=*a;”a=b:b=c
虚函数必须是类的()。
以下程序中函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址。#include<string>char*scmp(char*s1,char*s2){if(strcmp(s1,s2)<0)
下列语句的作用是计算正整数n的各位数字之和,例如:n=123,sum=1+2+3。请将下列语句补充完整。Do{Sum+=【7】:n=n/10;)while(n!=0)
随机试题
允许外国公使进驻北京的条约是()
流行性出血热病毒是
油性软膏基质中加入羊毛脂的作用是( )。
某男甲与某女乙2000年登记结婚,婚后两人的感情非常冷淡,无法一起共同生活。2004年1月,乙以感情破裂为由向法院请求离婚,法院支持其主张的理由可以包括:
十进制数140转换为十六进制数为()。
按投资作用不同,工程建设项目可分为生产性建设项目和非生产性建设项目两大类。下列项目中属于非生产性建设项目的是( )。
据某市交警部门公布的数据,在该市全市上个月发生的13000多起汽车交通事故中,只有10%是因为司机酒后驾驶造成的。由此可见,酒后驾驶的危险性并不像某些交通宣传中所说的那么大。“酒后驾驶,等于送死”只是危言耸听的夸张宣传而已。假定以上数据无误,那么
2008年以来,索马里附近海域先后发生累计逾120起的海盗劫船事件。海盗为何如此猖獗?甲乙丙丁四人有如下断定:甲:海盗猖獗的主因是被劫船只的船主通常都愿支付高额赎金。乙:如果海盗猖獗的主因是被劫船主愿支付高额赎金,那么肯定会助长海盗的气
Theearthiswitnessinganurbanrevolution,aspeopleworldwidecrowdintotownsandcities.In1800onlyfivepercentofthew
QueenMary’sReignI.HistoriceventsA.KingHenryVIIIplannedMary,his【T1】_______,tomarryhissonEdward.B.Hermothe
最新回复
(
0
)