收藏 分销(赏)

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

上传人:二*** 文档编号:4520104 上传时间:2024-09-26 格式:DOC 页数:4 大小:50KB
下载 相关 举报
2017电大面向对象程序设计复习题小抄.doc_第1页
第1页 / 共4页
本文档共4页,全文阅读请下载到手机保存,查看更方便
资源描述
专业好文档 电大《面向对象程序设计》复习题 编程题 1. 根据下面类中Count函数成员的原型和注释写出它的类外定义。 class AA { int* a; int n; int MS; public: void InitAA(int aa[], int nn, int ms) { if(nn>ms) {cout<<"Error!"<<endl; exit(1);} MS=ms; n=nn; a=new int[MS]; for(int i=0; i<n; i++) a[i]=aa[i]; } int Count(int x); //从数组a的前n个元素中统计出其 //值等于x的个数并返回。 }; 答案: int AA::Count(int x) { int i,c=0; for(i=0; i<n;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(nn>ms) {cout<<"Error!"<<endl; exit(1);} MS=ms; n=nn; a=new int[MS]; for(int i=0; i<n; i++) a[i]=aa[i]; } int Search(int x); //从数组a的前n个元素中顺序查找值为x的第一个元素, //若查找成功则返回元素的下标,否则返回-1。 }; 答案: int AA::Search(int x) { int i; for(i=0; i<n;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(nn>ms) {cout<<"Error!"<<endl; exit(1);} MS=ms; n=nn; a=new int[MS]; for(int i=0; i<n; 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; i<n; i++) { if(a[i]>mx) mx=a[i]; if(a[i]<my) my=a[i]; } x=mx; y=my; if(n>0) 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(nn>ms) {cout<<"Error!"<<endl; exit(1);} MS=ms; n=nn; a=new int[MS]; for(int i=0; i<n; 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; i<n; i++) if(a[i]!=b.a[i]) return 0; return 1; } 5. 根据下面类中CompareBig 函数成员的原型和注释写出它的类外定义。 class AA { int* a; int n; int MS; public: void InitAA(int aa[], int nn, int ms) { if(nn>ms) {cout<<"Error!"<<endl; exit(1);} MS=ms; n=nn; a=new int[MS]; for(int i=0; i<n; i++) a[i]=aa[i]; } int CompareBig(AA b); //比较*this与b的大小,从前向后按两数组 //中的对应元素比较,若*this中元素值大则返回1,若b中 //元素值大则返回-1,若相等则继续比较下一个元素,直到 //一个数组中无元素比较,此时若两者的n值相同则返回0, //否则若*this中的n值大则返回1,若b中的n值大则返回-1。 }; 答案: int AA::CompareBig(AA b) { int k; if(n>b.n) k=b.n; else k=n; for(int i=0; i<k; i++) if(a[i]>b.a[i]) return 1; else if(a[i]<b.a[i]) return -1; if(k==n && k==b.n) return 0; else if(k<n) return 1; else return -1; } 最新小抄
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 远程教育/电大

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服