首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成构造函数,设置数组元素的个数为0,请在注释//********1********之后添加语句。 (2)完成函数
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成构造函数,设置数组元素的个数为0,请在注释//********1********之后添加语句。 (2)完成函数
admin
2016-10-28
44
问题
使用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全国计算机二级
相关试题推荐
下列函数的运行结果是()。#include<iostream.h>intf(inta,intb){intc;if(a>b)c=1;elseif(a==b)C=0;elsec=-1;
当要使用ostrstream流类定义一个流对象并联系一个字符串时,应在文件开始处使用#include命令,使之包含()文件。
若有以下变量和函数说明:#include<iostream.h>charCh=’*’;voidsub(intx,inty,charch,double*Z){switch(ch){
以下关于C++语言类的说法中正确的是
以下类定义中可能会引起错误的语句是classA{public:~A(){}//1inti;//2private:
如果一个类中定义了成员对象,则该类的对象和成员对象先被初始化的是______。
有如下函数模板定义:template<typenameT1,typenameT2,typenameT3>T2plusT1t1,T3t3){returnt1+t3;}则以下调用中正确是
下列类的定义中,有()处语法错误。classBase {public:Base(){}Base(inti){data=i;
随机试题
治疗伤寒和副伤寒首选:
患者,男性,55岁。因消瘦、腹胀、纳差5年入院,病前曾有慢性肝病史,查皮肤、巩膜黄染,腹部膨隆,移动性浊音阳性,脾肋下可触及。患者突然呕吐出暗红色血块约800ml,急诊胃镜示“食管静脉曲张破裂出血”。护士应估计患者目前最有可能先出现的是
某男,42岁。自诉感冒数日,恶寒渐轻,身热增盛,无汗头痛,目疼鼻干,心烦不眠。经中医辨证为外感风寒、郁而化热。处以柴葛解肌汤,药用柴胡、葛根、甘草、黄芩、羌活、白芷、白芍、桔梗、石膏,水煎服。处方调配复核,见有表面黑褐色,切面外侧棕褐色,木
某国有单位会计甲到银行提取本单位工资,由于银行出纳疏忽大意,多支付给甲3000元,甲回单位后发现多余款额,遂据为己有,甲的行为构成()。
定额计价方法形成的合同,其价格主要调整方式不包括( )。
下列选项和“Goodtothelastdrop.滴滴香浓,回味无穷。(麦斯威尔咖啡)”的翻译手法最相同的是()。
能够从笔试阶段进入面试阶段,说明你具有较好的文化基础,但通过你前面回答问题的效果来看,我认为不太理想,你能解释一下原因吗?
不少企业之所以将职业态度列为选择人才的重要标准,其背后是近年来愈演愈烈的人才跳槽现象。人才跳槽从一方面使劳动力要素的配置更趋向合理、效益最大化,但从另一方面看,过度跳槽也在一定程度上加重了社会诚信意识的缺失。而一个好的市场经济,要想实现各种生产要素合理配置
(2011年河北)下列各句中,没有语病的一句是()。
多道程序设计是指()。
最新回复
(
0
)