首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程中含有一个源程序文件proj2.epp,其中定义了Array类。 在C++程序中访问数组元素时,如果索引值(下标)小于0或者大于元素个数减1,就会产生越界访问错误。Array是
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程中含有一个源程序文件proj2.epp,其中定义了Array类。 在C++程序中访问数组元素时,如果索引值(下标)小于0或者大于元素个数减1,就会产生越界访问错误。Array是
admin
2015-06-27
14
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程中含有一个源程序文件proj2.epp,其中定义了Array类。
在C++程序中访问数组元素时,如果索引值(下标)小于0或者大于元素个数减1,就会产生越界访问错误。Array是一个带有检查越界访问功能的数组类,其成员列表如下:
公有成员函数功能
GetValue获取指定元素的值
SetValue将指定元素设置为指定值
GetLength获取元素个数
私有成员函数功能
IsOutOfRange检查索引是否越界
私有数据成员功能
_p指向动态分配的整型数组的指针
size存放元素个数
Array类的构造函数会动态分配一个int类型数组,以存储给定数量的元素。在公有成员函数GetValue和SetValue中,首先调用私有成员函数IsOutOfRange检查用于访问数组元素的索引是否越界,只有当索引值在有效范围内时,才能进行元素访问操作。
请在横线处填写适当的代码,然后删除横线,以实现Array类的功能。此程序的正确输出结果应为:
1,2,3,4,5,6,7,8,9,10
注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
//proj2.cpp
#include
usingnamespacestd;
classArray{
public:
Array(intsize)//构造函数
{
//********found********
下列语句动态分配一个int类型数组
_p=________;
size=size;
}
~Array(){delete[]_p;)//析构函数
voidSetValue(intindex,intvalue)//设置指定元素的值
{
if(IsOutOfRange(index)){
ceEE<<"Indexoutofrange!"<
reLurn;
}
//********found********
________;
}
intGetValue(intindex)const//获取指定元素的值
{
if(IsOutOfRange(index)){
cerE<<"Indexoutofrange!"<
return-1;
}
//********fOUnd********
________;
}
intGetLength()const{return_size;)//获取元素个数
private:
int*p;
intsize;
boolIsOutOfRange(intindex)const
//检查索引是否越界
{
//********found********
if(index<0||________)
returntrue;
elsereturnfalse;
}
};
intmain()
{
Arraya(10);
for(inti=0;i
a.SetValue(i,i+1);
for(intj=0;j
tout<
cout<
return0;
}
选项
答案
(1)new int [size] (2)_p[index] = value (3)return _p[index] (4)index > _size
解析
(1)主要考查考生对动态分配的掌握,题目要求分配一个int类型数组,数组长度为size,应使用new语句分配空间,因此为new int[size]。
(2)主要考查考生对成员函数的掌握,先看函数功能:设置指定元素的值。index为指定的下标,value为指定的值,因此使用语句: _p[index] = value;。
(3)主要考查考生对成员函数的掌握,函数功能为获取指定元素的值,index为要求返回的元素的下标,直接使用return语句返回数组元素即可。
(4)主要考查考生对if语句的掌握,函数功能是检查索引是否越界,当index<0或者index> size时,index越界,返回true。
转载请注明原文地址:https://kaotiyun.com/show/69BD777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
试析共产国际与1920年代中国革命的关系。(南开大学2013年中国历史真题)
如果两变量之间存在正相关,且所有相关点都落在回归线上,则这两个变量之间的相关系数是()
设一个盒子里装有编号为①②③的三个球,现按照考虑顺序的重复抽样方式从中随机抽出两个球组成样本,则样本可能数目为()
关于教育的教育即生活的解读错误的是
下列说法错误的是
关于终身教育,下列说法错误的是
生物起源说和心理起源说的根本错误在于否认了教育的
下列说法错误的是
凯恩斯货币理论认为货币需求量与货币和债券的预期收益率有关。()
一般来说,实质推理是对法律规定和案件事实的实质内容进行价值评价的推理。当出现法律规定本身的含义模糊,在法律中对于有关问题没有直接的明文规定,法律规定之间有抵触或者法律中出现两种以上需要选择适用的条款,通常所述的“合法”和“合理”矛盾的时候,需要运用实质推理
随机试题
既是海外旅行社的代表,又是游客的代言人的导游人员是()。
产品处于衰退期既有产品本身的原因,也有企业自身形象问题。()
婴儿培育箱的温度与体重有关
患者,女,47岁。精神抑郁,表情淡漠,神志痴呆,语无伦次,不思饮食,舌苔腻,脉弦滑。其治法是
我国国家标准规定了对应于特低电压的系列,其额定值(工频有效值)的等级为()。
影响基差大小的因素不包括()。
《公司法》最核心的内容是规范公司法人治理结构。( )
红山小学学生乘汽车到香山春游。如果每车坐65人,则有5人不能乘上车;如果每车多坐5人,恰多余了一辆车,问一共有几辆汽车,有多少学生?
在下面关于微机总线的叙述中。正确的是( )。
•Readthearticlebelowaboutpublicimage.•Choosethebestwordtofilleachgap,fromA,B,CorD.•Foreachquestion19—33,
最新回复
(
0
)