首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList的重载运算符函数operator+,其功能是求当前数据表与另一个相同长度的数据表之和;即它返回一个数据表,其每
admin
2016-06-12
31
问题
请使用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已经编译为0bj文件,并且在本程序中调用。
}/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 fen;)
double getElement(int i)const{re-
turn 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(1en){
d=new double[1en];
for(int i=0,i
d
=(data==NULL?0.0:data
);
}
DataList::DataList(DataList:&data):
fen(data.fen){
d:new double[fen];
for<
d
=data.d
;
}
{
DataList DataList::operator+(const DataList&list)const{//两个数据表求和double*dd=Flew double[list:
1ength()];
//*********333*********
//*********666*********
return DataList(list.1ength(),cld);
}
void DataList::show()constf//显示数据表
for(int i=0;i
couL<
<<“,”;
COUt<
}
int main(){
double sl[]={1,2,3,4,5,6);
double s2[]={3,4,5,6,7,8);
DataLi st:listl(6,s1),list2(6,s2);//定义两个数据表对象
cout<<“两个数据表:”<
listl.show();
list2.show();
cout<
endl;
(1istl+list2).show();
writeToFile(“”,listl+list2);
return 0;
}
选项
答案
for(int i=0;i
解析
本题考查DataList类,其中涉及构造函数、动态数组、复制构造函数、const函数和运算符重载。
【解题思路】
主要考查考生对重载运算符的掌握,题目要求对两个数据表求和。程序已经定义了动态数组dd,并已经分配好了空间,接下来只要运用循环语句完成元素相加并进行赋值即可。
转载请注明原文地址:https://jikaoti.com/ti/PpE0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面的语句中错误的是
友元类的所有成员函数都是另一个类的【】。
以下程序中循环体总的执行次数是 inti,j; for(i=6;i>1;i--) for(j=0;j<i;j++) {……}
已知各变量的定义如下 inti=8,k,a,b; unsignedlongw=5; doublex=1.42,y=5.2; 则以下符合C++语言语法的表达式是
有以下程序#include<iostream.h>voidss(char*s,chart){while(*s){if(*S==t)*s=t-’a’+’A’;s++;}}voidmain()
假定用户没有给一个名为MyClass的类定义析构函数,则系统为其定义的默认析构函数首部形式为【】。
在一个长度为n的线性表中插入一个元素,以下说法不正确的是()。
以下程序运行后的输出结果是【】。#include<iostream>#include<string>usingnamespacestd;classY;classX{intx;
若有以下程序:#include<iostream>usingnamespacestd;classmyClass{private:intvar;public:myClass
已知枚举类型定义语句为:enumToken{NAME,NUMBER,PLUS=5,MINUS,PRINT=10};则下列说法中,错误的是()。
随机试题
根据《劳动争议调解仲裁法》的规定,分析甲、乙、丙、丁四人的观点,正确的是哪几项?
下列有关其他资产的说法,错误的是()。
下列说法不符合投资理论基本假设的是()。
以下贷款审批原则的是()
社会工作是社会建设的重要组成部分,它是一种体现社会主义核心价值理念,注重专业伦理规范.坚持“助人自助”宗旨,在社会服务、社会管理领域综合运用专业知识、技能和方法,帮助有需要的个人、家庭、群体、组织和社区,整合社会资源,协调社会关系,预防和解决社会问题(
人生价值内在地包含了人生的自我价值和社会价值两个方面,因而,人生价值实现的条件必然也存在两个方面。其中人生价值实现的主观条件有
A、 B、 C、 B
ThroughoutBritain’shistory,therehasbeennoguaranteethataninvasionwouldnothappen.TheBritishempireissostrongth
Whatdoesthewomanmean?
Completetheformbelow.WriteONEWORDAND/ORANUMBERforeachanswer.FruitPickingApplicationEmploymentformExampleSurna
最新回复
(
0
)