版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上六、程序设计题(本大题共1小题,共10分)1. 已定义一个Shape抽象类,在此基础上派生出矩形Rectangle和圆形Circle类,二者都有GetPerim()函数计算对象的周长,并编写测试main()函数。class Shapepublic:Shape()Shape()virtual float GetPerim()=0;答案:class Rectangle:public Shapepublic:Rectangle(float i,float j):L(i),W(j)Rectangle()float GetPerim()return 2*(L+W);privat
2、e:float L,W;class Circle:public Shapepublic:Circle(float r):R(r)float GetPerim()return 3.14*2*R;private:float R;void main()Shape * sp;sp=new Circle(10);cout<<sp->GetPerim ()<<endl;sp=new Rectangle(6,4);cout<<sp->GetPerim()<<endl;_六、程序设计题(本大题共1小题,共10分)1. 编写类String的构造函数、析
3、构函数和赋值函数和测试程序。已知类String的原型为:#include <iostream.h>#include <string.h>class Stringpublic:String(const char *str=NULL); / 普通构造函数String(const String &other); / 拷贝构造函数String(); / 析构函数String & operator=(const String &other); / 赋值函数void show()cout<<m_data<<endl;private:c
4、har *m_data; / 用于保存字符串;答案:String:String()deletem_data;/由于m_data是内部数据类型,也可以写成delete m_data;String:String(const char *str)if(str=NULL)m_data=new char1;/若能加NULL判断则更好*m_data=0;elseint length=strlen(str);m_data=new charlength+1; /若能加NULL判断则更好strcpy(m_data, str);String:String(const String &other)int l
5、ength=strlen(other.m_data);m_data=new charlength+1;/若能加NULL判断则更好strcpy(m_data, other.m_data);String & String:operator=(const String &other)if(this=&other)return *this;deletem_data;int length=strlen(other.m_data);m_data=new charlength+1;/若能加NULL判断则更好strcpy(m_data, other.m_data);return *th
6、is;void main()String str1("aa"),str2;str1.show();str2=str1;str2.show();String str3(str2);str3.show();_六、程序设计题(本大题共1小题,共10分)1. 已知交通工具类定义如下。要求:(1)实现这个类;(2)定义并实现一个小车类car,是它的公有派生类,小车本身的私有属性有载人数,小车的函数有init(设置车轮数,重量和载人数),getpassenger(获取载人数),print(打印车轮数,重量和载人数)。class vehicleprotected:int wheels;/
7、车轮数float weight;/重量public:void init(int wheels,float weight);int get_wheels();float get_weight();void print();void vehicle:init(int wheels,float weight)this->wheels=wheels;this->weight=weight;cout<<wheels<<endl;int vehicle:get_wheels()return wheels;float vehicle:get_weight()return
8、weight;void vehicle:print()cout<<"车轮数:"<<wheels<<","<<"重量:"<<weight<<endl;答案:class car:public vehicleprivate:int passengers;public:void init(int wheels,float weight,int pass);int getpassenger();void print();;void car:init(int wheels,f
9、loat weight,int pass)vehicle:init(wheels,weight);passengers=pass;int car:getpassenger()return passengers;void car:print()vehicle:print();cout<<"可载人数:"<<passengers<<endl;_六、程序设计题(本大题共1小题,共10分)1. 求n(n=3)个学生的最高分和最低分及姓名,已有student类声明和main函数,完成student类的实现部分。#include <iostrea
10、m.h>#include <string.h>class studentchar name10;int deg;public:student(char na="",int d=0);char * getname();friend int compare(student &s1,student &s2);int getdeg();void main()student st=student("王强",74),student("李刚",68),student("张雪",84);int i
11、=0,min=0,max=0;for(i=1;i<3;i+)if(compare(stmax,sti)=-1)max=i;if(compare(stmin,sti)=1)min=i;cout<<"最高分:"<<stmax.getdeg()<<"姓名:"<<stmax.getname()<<endl;cout<<"最低分:"<<(*(st+min).getdeg()<<"姓名:"<<stmax.getna
12、me()<<endl;答案:student:student(char na,int d)strcpy(name,na);deg=d;char * student:getname()return name;int compare(student &s1,student &s2)if(s1.deg>s2.deg)return 1;else if(s1.deg=s2.deg)return 0;else return -1;int student:getdeg()return deg;_六、程序设计题(本大题共1小题,共10分)1. 写一个程序,定义一个抽象类Shap
13、e,由它派生3个类:Square(正方形)、Trapezoid(梯形)和Triangle三角形。用虚函数分别计算几种图形面积、并求它们的和。要求用基类指针数组,使它每一个元素指向一个派生类对象。#include <iostream.h>class Shapepublic:virtual double area()const=0;答案:class Square:public Shapepublic:Square(double s):side(s)double area() constreturn side*side;private:double side;class Trapezoid:public Shapepublic:Trapezoid(double i,double j,double k):a(i),b(j),h(k)double area() constreturn (a+b)*h/2);private:double a,b,h;class Triangle:public Shapepublic:Triangle(double i,double j):w(i),h(j)double area() constreturn(w*h/2);private:double w,h
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 产后新生儿喂养指导
- 儿童智能定位鞋解决方案
- 江苏省南通市海安高级中学2023-2024学年高三上学期阶段测试(一)数学试题(解析版)
- 压疮护理中的成果转化
- 备用燃气锅炉项目环境影响报告表
- 江苏省扬州市邢江区美琪学校2025-2026学年初三下学期第一次考试语文试题含解析
- 浙江省宁波市宁海县2025-2026学年初三考前模拟考试化学试题含解析
- 山东省威海文登区四校联考2025-2026学年初三第二次学情检测试题数学试题含解析
- 郑州医药健康职业学院《网络广告》2024-2025学年第二学期期末试卷
- 浙江省余姚市重点中学2026届初三普通高校统一招生考试仿真卷(一)化学试题试卷含解析
- 处方书写规范考核试题及答案
- 2024年辽宁阜新市事业单位招聘普通高校退伍大学生(高频重点复习提升训练)共500题附带答案详解
- 牛津自然拼读-课件-带音频动画Level3-U3-o-e
- DL-T820.2-2019管道焊接接头超声波检测技术规程第2部分:A型脉冲反射法
- 《民航客舱设备操作与管理》课件-项目四 飞机舱门及撤离滑梯
- 起重吊装作业安全技术措施
- 春季保养与养生知识讲座
- 推土机配件供货合同
- 江西省修水县黄土坪金矿详查项目环评报告
- 慢性阻塞性肺疾病的早期筛查与管理
- 管理会计学 第10版 课件 第8、9章 成本管理:目标、责任与标准;作业成本计算法
评论
0/150
提交评论