首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intAn’ay类的对象中,然后建立另一对象myArray,将对象内容赋
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intAn’ay类的对象中,然后建立另一对象myArray,将对象内容赋
admin
2019-06-05
46
问题
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intAn’ay类的对象中,然后建立另一对象myArray,将对象内容赋值给myArray。类intArray重载了“=”运算符。程序中给出了一个测试数据文件input,不超过300个的整数。程序的输出是:
10
11
13
16
20
要求:
补充编制的内容写在“//*********333*********”与“//*********666*********”之间。实现重载赋值运算符函数,并将赋值结果在屏幕输出。格式不限。不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
//intArray.h
class intArray
{
private:
int*array;
int length;
public:
intArray(char*filename);
intArray();
intArray&operator=(const intAr。
ray&src);
一intArray();
void show();
};
void writeTOFile(const char*path);
//main.cpp
#include
#include
#include
#include“intArray.h”
using namespace std;
intArray::intArray()
{
length=10;
array=new int[1ength];
}
intArray::intArray(char*filename)
{
ifstream myFile(filename);
array=new int[300];
length=0;
while(myFile>>array[1ength++])
length_____;
myFile.close();
}
intArray& intArray:: operator =
(const intArray&src)
{
if(array!=NULL)delete[]array;
length=src.1ength;
array=new int[1ength];
//*********333*********
//*********666*********
return*this;
}
intArray::一intArray()
{
delete[]array;
}
void intArray::show()
{
int step=0;
for(int i=0;i
{
cout<
<
step++;
}
}
void main()
{t
intArray*arrayP=new intArray
(“input.dat”);
intArray myArray;
myArray=*arrayP;
(*arrayP).show();
delete arrayP;
writeToFile(””);
}
选项
答案
for(int i=0;i
解析
本题主要考查intAtray类,其中涉及动态数组、构造函数、运算符重载、析构函数及其他成员函数。
【解题思路】
主要考查考生对运算符重载的掌握,该函数要重载运算符“=”,该运算符的意思是赋值。先看该函数的其他语句:
if(array!=NULL)delete[]array;
length=src.1ength;
array=new int[1ength];
第一条语句是把原来动态数组释放,第二条语句是把形参$1rc的成员length赋值给变量length,第三条语句是给指针array分配内存。接下来要把动态数组中的值逐个赋给array数组,在这里使用for循环语句,循环变量i的范围是0~length,并进行赋值操作。
转载请注明原文地址:https://kaotiyun.com/show/S18p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
类中的一个字符指针成员指向具有m个字节的存储空间时,它所能存储的字符串的最大长度为()。A)m-2B)m-1C)mD)m+1
在公有派生时,派生类中定义的成员函数只能访问原基类的()。A)私有成员、保护成员和公有成员B)保护成员和私有成员C)公有成员和保护成员D)公有成员和私有成员
设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为()。A)课号,成绩B)学号,成绩C)学号,课号D)学号,姓名,成绩
下列哪种数据模型可以用树形结构来表示实体之间联系()。A)网状模型B)数据模型C)关系模型D)层次模型
下列关于栈的叙述中,正确的选项是()。A)在栈中只能删除数据B)在栈中只能插入数据C)栈是先进先出的线性表D)栈是先进后出的线性表
以下函数模板min的功能是返回数组a中最小元素的值。请将横线处缺失部分补充完整。template<typenameT>Tmin(Ta[],intn){Ttemp=a[0];for(inti=1,i<n;i
下列程序的输出结果为-5/8-3/4,请将横线处的缺失部分补充完整。#include<iostream>usingnamespacestd;classFraction{//"分数"类public:Fractio
若要对Data类中重载的加法运算符成员函数进行声明,下列选项中正确的是()。A)Data+(DatA);B)Dataoperator+{Data};C)Data+operator{Data};D)operator+(Data,D
己知函数f的原型是“voidf(int*x,int&y);”,变量v1、v2的定义是“intv1,v2;”,下列调用语句中,正确的是()。A)f(v1,v2);B)f(v1,&v2);C)f(&v1,v2);D)f(
在C++语言中,打开一个文件就是将这个文件与一个什么建立关联?
随机试题
乘坐国内航班离站的散客旅游者,如果从中、小机场起飞,导游员应掌握好时间,使其提前()到达机场。
关于卵巢纤维瘤声像图特征描述,错误的是
原子吸收分光光度法测定空气中Pb、Cr、Cd、Hg的分析线波长分别是
以下哪种患者不宜使用胰岛素治疗
(2007年)运算放大器应用电路如图8—68所示,在运算放大器线性工作区,输出电压与输入电压之间的运算关系是()。
技术分析通常以市场历史交易数据的统计结果为基础。()
短时记忆的容量很有限,一般只能储存的信息项目为()个左右。
把人的认识看成是上帝的启示或绝对精神的产物,这种观点属于()
Thehospitalmayhaveexposedthepatientstotheviruses,because
A、Havingtypingskill.B、Havingexperienceinjournalism.C、Tobeaqualifiedstudent.D、Havinglotsofmoney.B推理题。从文中提到的“Exper
最新回复
(
0
)