




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象程序设计面向对象程序设计 第二次上机测试题目及要求第二次上机测试题目及要求 一 考核目标一 考核目标 一 数组 指针与字符串 一 数组 指针与字符串 1 掌握数组 字符串数据的定义和使用 掌握标准掌握数组 字符串数据的定义和使用 掌握标准 C 库中库中 string 的使用 的使用 2 掌握指针的使用方法 掌握动态内存分配实现动态数组 并体会指针在其中的作用 掌握指针的使用方法 掌握动态内存分配实现动态数组 并体会指针在其中的作用 二 继承与派生 二 继承与派生 1 理解继承 派生的基本概念及意义 理解继承 派生的基本概念及意义 2 掌握派生类定义及派生类对象实例化 掌握派生类定义及派生类对象实例化 3 掌握类型兼容规则 派生类成员的标识与访问 掌握类型兼容规则 派生类成员的标识与访问 4 虚基类解决二义性问题 虚基类解决二义性问题 二 考试要求二 考试要求 1 不允许携带不允许携带 U 盘和教材等进入考场 盘和教材等进入考场 2 考试过程中保持安静 独立按要求完成考试题目 考试过程中保持安静 独立按要求完成考试题目 3 考试结束后 请坐在座位上 等待监考老师考试结束后 请坐在座位上 等待监考老师确认确认你的考题之后方可离开 你的考题之后方可离开 三 考试内容三 考试内容 在在桌面上桌面上新建一个文件夹 以新建一个文件夹 以 学号学号 姓名姓名 形式命名 如 形式命名 如 20130102 张三 张三 该文件夹中应该包含该文件夹中应该包含两个子文件夹两个子文件夹 文件夹名分别为文件夹名分别为 第一题第一题 第二题第二题 分别存放两道题的相关文件 分别存放两道题的相关文件 以及测试结果等 以及测试结果等 第一大题 第一大题 所有同学都完成所有同学都完成 1 已知已知 Point 类的声明如下 类的声明如下 include using namespace std Point 类的声明类的声明 class Point public 外部接口外部接口 Point 构造函数构造函数 Point int xx int yy 构造函数构造函数 Point Point 拷贝构造函数拷贝构造函数 int GetX const return X int GetY const return Y void move int newx int newy x newx y newy Point private 私有数据私有数据 int X Y class ArrayofPoints Point size 为数组大小为数组大小 return points index 计算任意两点之间的街区距离计算任意两点之间的街区距离 int L1Distance int x1 int y1 int x2 int y2 return abs x1 x2 abs y1 y2 请给出请给出 Point 类的构造函数 并参照下图创建动态数组类类的构造函数 并参照下图创建动态数组类 ArrayofPoints 实现主函数 请自行补充 实现主函数 请自行补充 需要的头文件 需要的头文件 主程序主程序 int main int count cout Please enter the count of Points count ArrayofPoints ArrPoints count ArrPoints element 0 move 5 10 ArrPoints element 1 move 15 20 cout The distance is endl cout L1Distance ArrPoints element 0 GetX ArrPoints element 0 GetY ArrPoints element 1 GetX ArrPoints element 1 GetY endl include include include using namespace std class Point public 外部接口外部接口 Point 构造函数构造函数 Point int xx int yy 构造函数构造函数 Point Point 拷贝构造函数拷贝构造函数 int GetX const return x int GetY const return y void move int newx int newy x newx y newy Point private 私有数据私有数据 int x y Point Point x 0 y 0 Point Point int xx int yy this x xx this y yy class ArrayofPoints public ArrayofPoints int size this size size ArrayofPoints Point size 为数组大小为数组大小 Point points index return points index private int size int L1Distance int x1 int y1 int x2 int y2 return abs x1 x2 abs y1 y2 int main int count cout Please enter the count of Points count ArrayofPoints ArrPoints count ArrPoints element 0 move 5 10 ArrPoints element 1 move 15 20 cout The distance is endl cout L1Distance ArrPoints element 0 GetX ArrPoints element 0 GetY ArrPo ints element 1 GetX ArrPoints element 1 GetY endl return 0 第二大题 学号尾数为第二大题 学号尾数为单号单号的同学做第的同学做第 1 2 小题 学号尾数为小题 学号尾数为双号双号的做第的做第 3 4 小题小题 1 定义一个定义一个 Date 类 有整型数据成员类 有整型数据成员 year month day 成员函数 成员函数 Display 用于显示日期 用于显示日期 定义定义 DateTime 类 从类 从 Date 类公有派生而来 在类公有派生而来 在 DateTime 类中增加数据成员类中增加数据成员 hour minute second 设计设计 一个成员函数一个成员函数 Display 用于显示日期时间信息 用于显示日期时间信息 include using namespace std class Data public Data int year int month int day this year year this month year this day day cout Data 构造函数被调用 构造函数被调用 endl void Display cout year 年年 month 月月 day 日日 hour d this minute e this second f void Display cout year 年年 month 月月 day 日日 hour 时时 minute 分分 秒秒 endl private int hour minute second int main Data A 2016 11 24 A Display DataTime a 2016 11 24 13 50 59 a Display return 0 2 如图所示 如图所示 设计图示中的设计图示中的 4 个类 其中 电脑类 个类 其中 电脑类 Computrer 具有 具有 frequency os ram CPU 主频 操作系统 主频 操作系统 内存容量 等属性 相机 内存容量 等属性 相机 Camera 具有 具有 pixel 像素数 如 像素数 如 500 万 万 800 万等 万等 从电脑和相机共 从电脑和相机共 同派生出智能手机 智能手机 同派生出智能手机 智能手机 Smobilephone 具有 具有 size 屏幕尺寸 如 屏幕尺寸 如 4 5 寸 寸 5 5 寸等 寸等 家电 家电 Appliance 拥有 拥有 brand price 品牌 价格 等属性 构造智能手机类的一个实例 并通过该实 品牌 价格 等属性 构造智能手机类的一个实例 并通过该实 例调用其成员例调用其成员 show 显示其继承自基类和自身的所有属性信息 显示其继承自基类和自身的所有属性信息 include using namespace std class Appliance public Appliance char c float d this brand c this price d Appliance char Getbrand return brand float Getprice return price private char brand float price class Computer virtual public Appliance public Computer float a char b int c char d float e Appliance d e this frequency a this os b this ran c Computer float Getfrequency return frequency char Getos return os int Getran return ran private float frequency char os int ran class Camera virtual Appliance public Camera int a char d float e Appliance d e this pixel a int Getpixel return pixel private int pixel class Smobilephone public Computer public Camera public Smobilephone float a char b int c char d float e Appliance d e Computer a b c d e Camera c d e this a a void show char a Getbrand cout 品牌 品牌 a endl float b Getprice cout 价格 价格 b 元元 endl float c Getfrequency cout 频率 频率 c KHz endl char d Getos cout 操作系统 操作系统 d endl int e Getran cout 内存 内存 e endl int f Getpixel cout 像素 像素 f 万万 endl private float a int main Smobilephone a 2 5 a 5 e 3 59 a show return 0 学号尾数为双号的做第 3 4 小题 3 定义一个基类定义一个基类 Animal 有成员变量 有成员变量 age 成员函数 成员函数 SetAge int n 和和 GetAge 构造其派生类 构造其派生类 dog 有成员变量 有成员变量 Color 成员函数成员函数 SetColor int c 和和 GetColor 要求构造派生类时初始化基类 要求构造派生类时初始化基类 编程并运行程序 编程并运行程序 4 如图所示 如图所示 设计图示中的设计图示中的 4 个类 其中 个类 其中 Staff 类包含的数据成员有编号 类包含的数据成员有编号 num 姓名 姓名 Na
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025北京海淀第十九中学教师招聘模拟试卷附答案详解(突破训练)
- 2025年西安经开第七小学招聘数学教师考前自测高频考点模拟试题及答案详解一套
- 2025福建武夷山市供销总公司招聘3人模拟试卷及答案详解(夺冠)
- 2025贵州黔西南州兴义民族师范学院高层次人才引进20人模拟试卷及答案详解参考
- 2025广东深圳市优才人力资源有限公司招聘编外聘用人员拟聘人员考前自测高频考点模拟试题及参考答案详解
- 2025年滁州明光市公开引进高中教育紧缺人才11人考前自测高频考点模拟试题及答案详解(必刷)
- 2025河南许昌市建安区人力资源和社会保障局招聘公益性岗位人员13人考前自测高频考点模拟试题及答案详解(夺冠)
- 2025广西南宁隆安县南圩镇杨湾卫生院医学影像专业招聘1人模拟试卷及答案详解(易错题)
- 安全培训教学图课件
- 安全培训救护小结课件
- 2023小学道德与法治教材教法考试模拟试题及答案(八套)
- 生理学全套课件
- 课件:年金保险
- 物业工作拍照技巧培训课件
- 大数据可视化管控平台的人工智能与智能家居
- 数字化工厂安全生产培训课程
- 《青少年心理健康》课件
- 盆腔炎性疾病护理查房课件
- 女性子宫内膜癌的早期预防与筛查
- JCT908-2013 人造石的标准
- 创伤急救(中医骨伤科学十三五教材)
评论
0/150
提交评论