使用VC6打开考生文件夹下的工程test25_3,此工程包含一个源程序文件test25_3.cpp,其中定义了用于表示堆的类Set,但它的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)完成成员函数int IsMemberOf(int n)的定义,该函数检查参数n是否在类的数据成员数组elems中,如果在返回1,反之返回0。请在注释“//**1**”之后添加适当的语句。 (2)完成成员函数int Add(int n)的定义,如果参数n包含在类的数据成员数组elems中则返回1如果数组超界则返回0,如果都不是,则将参数n插入到elems中,下标大小为类的数据成员PC,之后PC自加一。请在注释“//**2**”之后添加适当的语句。 (3)完成拷贝初始化构造函数Set(Set &s)的定义,请在注释“//**3**”之后添加适当的语句。输出结果如下: 1 {} {1,2,3,4,5,6,7,8} 注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。 源程序文件test25_3.cpp清单如下: include<iostream.h> class Set public: Set() {PC=O;} Set(Set &s); void Empty() {PC=O;} int IsEmpty() {return PC==O;} int IsMemberOf(int n); int Add(int n); void Print(); private: int elems[100]; int PC; }; int Set::IsMemberOf(int n) { //**1** if(elems[i]==n) return 1; return O; } int Set::Add(int n) { //**2** return 1; else if(PC>=100) return O; else { elems[PC++]=n; return 1; } } Set::Set(Set &s) { //**3** for(int i=O; i<PC; i++) elems[i]=s.elems[i]; } void Set::Print() { cout<<'{'; for(int i=O; i<PC-1; i++) cout<<elems[i]<<','; if(PC>O) cout<<elems[PC-1]; cout<<'}'<<endl; } void main() { Set A; cout<<A.IsEmpty()<<endl; A.Print(); Set B; for(int i=l; i<=8; i++) B.Add(i); B.Print(); }