使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成构造函数,设置数组元素的个数为0,请在注释∥********1********之后添加语句。 (2)完成函数A

admin2021-06-10  23

问题 使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)完成构造函数,设置数组元素的个数为0,请在注释∥********1********之后添加语句。
(2)完成函数AddMember(int n),如果参数rl包含在类的数据成员数组中,则返回0,否则把数据写入数组,然后返回1,请在注释∥********2********之后添加语句。
(3)完成函数DelMember(int n),如果变量在数据中,则删除该变量,并且返回1,如果不存在则返回0,请在注释∥********3********之后添加语句。
(4)完成成员函数islnclude(int n)的定义,该函数检查参数n是否在类的数据成员数组elems中,如果在返回1,否则返回0。清在注释∥********4********之后添加语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include
#define MAX LENGTH 50 0
class CArray
{
public:
    CArray()
    {
    ∥********1********
    }
    int AddMember(int n)
    {
    for(int i=0;i    {
   ∥********2********
    if(Array=n)
    return 0;
    }
    Array[1ength++]=n;
    return 1;
    )
    int DelMember(int n)
    {
    int i ;
    for(i=0 ; i    {
    if(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 7
    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)将“if(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(Array一n)或if(n==Array)。
(3)DelMember(int n)函数删除指定的元素,由于元素在数组当中的位置未知,因此必须先查找该元素的位置,在该函数的实现过程当中通过for循环来完成,即第一个for循环查找n在数组中的位置。如果11存在于数组中,那么if中的break语句就会执行跳出循环,此时循环变量i的值会小于length,即通过判断i的值是否小于length值可以知道n是否存在数组中,如果存在数组中接下来进行删除操作。即第3个标识下应改为if(i(4)islnclude(int n)成员函数用来判断n是否存在数组当中,可用if语句比较,即第4个标识下应改为“if(Array一n)或if(n—Array)”。
转载请注明原文地址:https://kaotiyun.com/show/T5fp777K
0

随机试题
最新回复(0)