首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成构造函数,设置数组元素的个数为0,请在注释//********1********之后添加语句。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成构造函数,设置数组元素的个数为0,请在注释//********1********之后添加语句。
admin
2021-09-05
60
问题
使用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
#define MAX LENGTH 500
class CArray
{
public:
CArray()
{
//********1********
}
int AddMember(int n)
{
for(int i=0;i
{
//********2********
if(Array
=n)
return 0;
}
Array[length++]=n;
return 1;
}
int DeiMember(int n)
{
int i;
for(i=0;i
{
i f(Array
==n)
{
break;
}
}
//********3********
if()
{
for(;i
{
Array
=Array[i+1];
}
length--;
return 1;
}
return 0;
}
int isInclude(int n)
{
for(int i=0;i
{
//********4********
if()
{
return 1;
}
}
return 0;
}
private:
int Array[MAX LENGTH];
int length;//用来记录数组的个数
};
int main()
{
CArray obj;
obj.AddMember(1);
obj.AddMember(3);
obj.AddMember(8);
obj.AddMember(23);
cout<
<
cout<
<
obj.DelMember(3);
obj.DelMember(8);
cout<
<
cout<
<
return 0;
}
选项
答案
(1)添加语句: length=0; (2)将“i f(Array[i]=n)”补充完整为:if(Array[i] ==n) 或if(n==Array[i]) (3)将“if()”补充完整为:if(i
解析
(1)使length的初始化为0,因此添加语句:“length=0;”。
(2)第2个标识下是检查n是否已经在数组当中存在,用if语句来判断,即if(A盯ay
==n)或if(n==Atray
)。
(3)DelMember(int n)函数删除指定的元素,由于元素在数组当中的位置未知,因此必须先查找该元素的位置,在该函数的实现过程当中通过for循环来完成,即第一个for循环查找n在数组中的位置。如果n存在于数组中,那么if中的break语句就会执行跳出循环,此时循环变量i的值会小于length,即通过判断i的值是否小于length值可以知道n是否存在数组中,如果存在数组中接下来进行删除操作。即第3个标识下应改为if(i
(4)islnclude(int n)成员函数用来判断n是否存在数组当中,可用if语句比较,即第4个标识下应改为“if(Array
==n)或if(n==Array
)”。
转载请注明原文地址:https://www.kaotiyun.com/show/EKfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamesapcestd;int&f(intindex,inta[]){int&r=a[index];
对于循环队列,下列叙述中正确的是()。
下面程序输出的结果为()。#inchdevoidfun(rota,intb){inttemp;temp=a;a=b:b=temp;}voidmain()
执行下列语句段后,输出字符“*”的个数是()。for(inti=50;i>1;i-=2)cout
有如下程序:#includeusingnamespacestd;classBase{private:voidfunl()eonst{eout
下列关于New和delete运算符的叙述中,错误的是()。
有如下类定义:classMyClass{intvalue;public:MyClass(intn):value(n){}intgetValue()const{returnvalue;}};则类MyClass的构造函数的个数是(
下列叙述中正确的是()。
请打开考生文件夹下的解决方案文件proj1,其中在编辑窗口内显示的主程序文件中定义有Xabc类和主函数main。在程序文本中位于每行’’//ERROR**********found**********下面的一行有错误,请加以更正。更正后程序的输出为:57
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是()。
随机试题
年轻女性自发性气胸患者,胸片示肺组织压缩近30%,进一步处理应该选择()
试述子宫的固定装置。
风湿性二尖瓣狭窄应与哪些疾病相鉴别?
李先生,70岁,晨间醒后出现头痛、眩晕、肢体麻木,医师诊断为“脑梗死”,此时不可应用的护理措施为
根据支付结算法律制度的规定,下列关于预算单位零余额账户使用的表述中,正确的是()。
甲公司是一家制造业企业,信用级别为A级,目前没有上市的债券,为投资新产品项目,公司拟通过发行每张面值1000元的5年期债券进行筹资,公司采用风险调整法估计拟发行债券的税前债务资本成本,并以此确定该债券的票面利率。2020年1月1日,公司收集了当时上市交易
北京时间2011年3月11日下午1点46分,日本近海发生9级地震,地震引发海啸,并引发核电站爆炸造成大量人员伤亡。加上之前的智利、海地及中国汶川大地震,地震的频繁发生让民众产生恐慌情绪。有人谣传食用碘盐可预防核辐射,海水被放射性物质污染而没法再提炼盐,广东
以下关于非对称密钥加密的描述,错误的是(50)。
姐姐拿了第一名。
ItisoftenthechildrenwhotrulyleadtheeldersintoAmerica,thesonswhotaketheirfatherstotheirfirstbaseballgameor
最新回复
(
0
)