文档详情

电大面向对象程序设计复习题小抄.doc

发布:2017-09-15约字共8页下载文档
文本预览下载声明
湖南电大《面向对象程序设计》复习题 编程题 1. 根据下面类中Count函数成员的原型和注释写出它的类外定义。 class AA { int* a; int n; int MS; public: void InitAA(int aa[], int nn, int ms) { if(nnms) {coutError!endl; exit(1);} MS=ms; n=nn; a=new int[MS]; for(int i=0; in; i++) a[i]=aa[i]; } int Count(int x); //从数组a的前n个元素中统计出其 //值等于x的个数并返回。 }; 答案: int AA::Count(int x) { int i,c=0; for(i=0; in;i++) if(a[i]==x) c++; return c; } 2. 根据下面类中Search函数成员的原型和注释写出它的类外定义。 class AA { int* a; int n; int MS; public: void InitAA(int aa[], int nn, int ms) { if(nnms) {coutError!endl; exit(1);} MS=ms; n=nn; a=new int[MS]; for(int i=0; in; i++) a[i]=aa[i]; } int Search(int x); //从数组a的前n个元素中顺序查找值为x的第一个元素, //若查找成功则返回元素的下标,否则返回-1。 }; 答案: int AA::Search(int x) { int i; for(i=0; in;i++) if(a[i]==x) return i; return -1; } 3. 根据下面类中MaxMin 函数成员的原型和注释写出它的类外定义。 class AA { int* a; int n; int MS; public: void InitAA(int aa[], int nn, int ms) { if(nnms) {coutError!endl; exit(1);} MS=ms; n=nn; a=new int[MS]; for(int i=0; in; i++) a[i]=aa[i]; } int MaxMin(int x, int y); //从数组a的前n个元素中求出 //最大值和最小值,并分别由引用参数x和y带回, //同时若n大于0则返回1,否则返回0。 }; 答案: int AA::MaxMin(int x, int y) { int mx,my; mx=my=a[0]; for(int i=1; in; i++) { if(a[i]mx) mx=a[i]; if(a[i]my) my=a[i]; } x=mx; y=my; if(n0) return 1; else return 0; } 4. 根据下面类中Compare 函数成员的原型和注释写出它的类外定义。 class AA { int* a; int n; int MS; public: void InitAA(int aa[], int nn, int ms) { if(nnms) {coutError!endl; exit(1);} MS=ms; n=nn; a=new int[MS]; for(int i=0; in; i++) a[i]=aa[i]; } int Compare(AA b); //比较*this与b的大小,若两者中 //的n值相同,并且数组中前n个元素值对应 //相同,则认为两者相等返回1,否则返回0。 }; 答案: int AA::Compare(AA b) { if(n!=b.n) return 0; for(int i=0; in; i++) if(a[i]!=b.a[i]) return 0; return 1; } 5. 根据下面类中CompareBig 函数成员的原型和注释写出它的类外定义。 class AA { int* a; int n;
显示全部
相似文档