首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成构造函数,设置数组元素的个数为0,请在注释//********1********之后添加语句。 (2)完成函数
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成构造函数,设置数组元素的个数为0,请在注释//********1********之后添加语句。 (2)完成函数
admin
2016-10-28
52
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)完成构造函数,设置数组元素的个数为0,请在注释//********1********之后添加语句。
(2)完成函数AddMember(int n),如果参数n包含在类的数据成员数组中,则返回0,否则把数据写入数组,然后返回1,请在注释//********2********之后添加语句。
(3)完成函数DelMember(int n),如果变量在数据中,则删除该变量,并且返回1,如果不存在则返回0,请在注释//********3********之后添加语句。
(4)完成成员函数islnclude(int n)的定义,该函数检查参数n是否在类的数据成员数组elems中,如果在返回1,否则返回0。请在注释//********4********之后添加语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include<iostream.h>
#define MAX LENGTH500
class CArray
{
public:
CArray()
{
//********1********
}
int AddMember(int n)
{
for(int i=0;i<length;i++)
{
//********2********
if(Array
=n)
return0;
}
Array[length++]=n;
return1;
}
int DelMember(int n)
{
int i;
for(i=0;i<length;i++)
{
if(Array
==n)
{
break;
}
}
//********3********
if()
{
for(;i<length-1;i++)
{
Array
=Array[i+1];
}
length--;
return1;
}
return0;
}
int isInclude(int n)
{
for(int i=0;i<length;i++)
{
//********4********
if()
{
return1;
}
}
return0;
}
private:
int Array[MAX_LENGTH];
int length;//用来记录数组的个数
};
int main()
{
CArray obj;
obj.AddMember(1);
obj.AddMember(3);
obj.AddMember(8);
obj.AddMember(23);
cout(<obj.isInclude(8)<<endl;
cout(<obj.isInclude(11)<<endl;
obj.DelMember(3);
obj.DelMember(8);
cout<<obj.isInclude(2)<<endl;
cout<<obj.isInclude(1)<<endl;
return0;
}
选项
答案
(1)添加语句:length=0; (2)将“if(Array[i]=n)”补充完整为:if(Array[i]==n)或if(n==Array[i]) (3)将“if()”补充完整为:if(i<length)或if(i!=length) (4)将“if()”补充完整为:if(Array[i]==n)或if(n==Array[i])
解析
(1)使length的初始化为0,因此添加语句:“length=0;”。
(2)第2个标识下是检查n是否已经在数组当中存在,用if语句来判断,即if(Array
==n)或if(n==Array
)。
(3)DelMember(int n)函数删除指定的元素,由于元素在数组当中的位置未知,因此必须先查找该元素的位置,在该函数的实现过程当中通过for循环来完成,即第一个for循环查找n在数组中的位置。如果n存在于数组中,那么if中的break语句就会执行跳出循环,此时循环变量i的值会小于length,即通过判断i的值是否小于length值可以知道n是否存在数组中,如果存在数组中接下来进行删除操作。即第3个标识下应改为if(i<length)或if(i!=length)。
(4)islnclude(int n)成员函数用来判断n是否存在数组当中,可用if语句比较,即第4个标识下应改为“if(Array
==n)或if(n==Array
)”。
转载请注明原文地址:https://kaotiyun.com/show/GKNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
当使用带参数的操作子时,程序中必须包含头文件______。
对于派生类的构造函数,在定义对象时构造函数的执行顺序为:先执行调用______的构造函数,再执行调用子对象类的构造函数,最后执行派生类的构造函数体中的内容。
在不同文件的函数中,对非静态全局变量的引用要加的关键字是()。
若已知charstr[20];,有语句cin>>str;当输入为:Thisisaprogram所得的结果是str=()。
以下关于C++语言类的说法中正确的是
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是
fstream、ifstream和ofstream文件流类的成员函数______关闭文件。
随机试题
肺癌空洞、肺结核空洞、肺脓疡空洞最可靠的鉴别方法是
关于呼吸衰竭的治疗,错误的是
男性,68岁。查体:中上腹触及一3cm×4cm×6cm肿块,质硬,表面不平,形状不规则。该肿块考虑为
以下构成走私罪的是哪些?()
(2014年)在完全相同的条件下所进行的一系列重复测量称为()。
在市场调查的方法中,与网络调查法相比,观察法的特点有()。
2008年12月1日,甲、乙双方签订合同,甲向乙购入价值800万元的二手机器设备,按照合同约定,12月5日乙向甲发货,甲承诺5个月后付款,该买卖合同中没有订立所有权保留性质的条款。由于乙还需要该机器设备生产最后一批商品,因此甲乙又在合同中约定,该设备自12
个体通过自己的学业成就而获得相应的地位和声望需要属于()。
He’llneverforgetthedays______helivedinthecountryside,whichisagreathelptohiswriting.
PASSAGEFOUR
最新回复
(
0
)