C++作业(7-9)_第1页
C++作业(7-9)_第2页
C++作业(7-9)_第3页
C++作业(7-9)_第4页
C++作业(7-9)_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实实 验验 报报 告告 课程名称课程名称 面向对象程序设计面向对象程序设计 专业班级专业班级 姓姓 名名 学学 号号 计算机技术与工程学院计算机技术与工程学院 和谐和谐 勤奋勤奋 求是求是 创新创新 实验教学考核和成绩评定办法实验教学考核和成绩评定办法 1 课内实验考核成绩 严格按照该课程教学大纲中明确规定的比重执行 实验成绩不 合格者 不能参加课程考试 待补做合格后方能参加考试 2 单独设立的实验课考核按百分制评分 考核内容应包括基本理论 实验原理和实验 3 实验考核内容包括 1 实验预习 2 实验过程 包括实验操作 实验记录和实验 态度 表现 3 实验报告 权重分别为 0 2 0 4 0 4 原则上根据上述三个 方面进行综合评定 学生未取得 1 和 2 项成绩时 第 3 项成绩无效 4 实验指导教师应严格按照考核内容分项给出评定成绩 并及时批改实验报告 给出 综合成绩 反馈实验中出现的问题 实验成绩在教师手册中有记载 实验报告主要内容实验报告主要内容 一 实验目的 二 实验仪器及设备 三 实验原理 四 实验步骤 五 实验记录及原始记录 六 数据处理及结论 七 实验体会 可选项 注 1 为了节省纸张 保护环境 便于保管实验报告 统一采用 A4 纸 实验报告建议双面打印 正文 采用宋体五号字 或手写 右侧装订 2 实验类别指验证 演示 综合 设计 创新 研究 操作六种类型实验 3 验证性实验 是指为了使学生巩固课程基本理论知识而开设的强调演示和证明 注重实验结果 事实 概念或理论 的实验 4 综合性实验 是指实验内容涉及本课程的综合知识或本课程相关的课程知识的实验 5 设计性实验 是指给定实验目的 要求和实验条件 由学生自行设计实验方案并加以实现的实验 实验题目实验题目实验七实验七 利用友元编程利用友元编程 实验室实验室9302 机房机房实验时间实验时间2015 年年 月月 日日 实验类别实验类别验证验证同组人数同组人数1 成成 绩绩指导教师签字 指导教师签字 实验七实验七 利用友元编程利用友元编程 一 实验目的一 实验目的 1 掌握友元函数和友元类的概念 定义和作用 2 会使用友元编程 3 进一步学习内存空间动态分配和释放的方法 二 实验内容二 实验内容 1 有一个向量类 Vector 包括一个点的坐标位置 x 和 y 设计两个友元函数 实现两个向量的 加法和减法运算 2 定义一个由 y ax b 确定的直线类 Line 该类的构造函数初始化直线 成员函数 Print 显示该 直线方程 友元函数 SetPoint 求解两条直线的交点 3 下列程序是有关友元类的 程序中将 A 类声明为 B 类的友元类 A 类中所有的成员函数都是 B 类的友元函数 请给程序填空 inlcude class B class A private int x public A int xx x xx int Set B int Get return x class B private int x public B int xx friend int A Set return x b x void main A a 10 B b 20 cout a Get endl a Set b cout a Get endl 三 实验步骤三 实验步骤 1 运用学过的知识 实验前在纸上写出程序 2 根据程序要求 先定义类 包括其数据成员和成员函数 3 分析使用的是友元类还是友元函数 通过友元要处理哪些问题 4 在主函数中完成相应的功能 5 上机编辑 编译 调试和运行 并修改错误 四 实验报告四 实验报告 1 写出实验目的 2 写出实验内容和程序清单 3 说明对编程分析 运行结果 难点 解决方法 结论和编程体会 二 实验内容 1 include class Vector public Vector double m 0 double n 0 x m y n void display cout x y endl friend Vector operator Vector t x a x b x t y a y b y return t friend Vector operator Vector t x a x b x t y a y b y return t Vector private double x y void main Vector a1 6 8 a2 9 5 a3 a4 cout 向量 a1 a1 display cout 向量 a2 a2 display a3 a1 a2 cout a1 a2 a3 display a4 a1 a2 cout a1 a2 a4 display 2 2 定义一个由 y ax b 确定的直线类 Line 该类的构造函数初始化直线 成员函数 Print 显示该 直线方程 友元函数 SetPoint 求解两条直线的交点 include using namespace std class Line public Line double m 0 double n 0 a m b n void print cout 直线 y a x b endl void friend setpoint Line if L1 a L2 a cout 两直线平行 无交点 else x L1 b L2 b L2 a L1 a y L1 a x L1 b cout 两直线交点为 x y endl Line private double a b void main Line L1 4 6 L2 9 8 L1 print L2 print setpoint L1 L2 3 include class B class A private int x public A int xx x xx int Set B int Get return x class B private int x public B int xx x xx friend class A int A Set B void main A a 10 B b 20 cout a Get endl a Set b cout a Get endl 个人总结 个人总结 本次实验目的主要是熟悉使用友元编程 在第一个程序中使用了两个友元函本次实验目的主要是熟悉使用友元编程 在第一个程序中使用了两个友元函 friend Vector operator Vector A cout destructing A endl class B public A public B cout constructing B endl B cout destructing B endl class C public B public C cout constructing C endl C cout destructing C endl void main C c1 2 事先编写好程序 分别声明 Teacher 教师 类和 Cadre 干部 类 采用多重继承方式由这两个类派生出新类 Teacher Cadre 教师兼干部 要求 1 在两个基类中都包含有姓名 年龄 性别 地址 电话等数据成员 2 在 Teacher 类中还包含数据成员 title 职称 在 Cadre 类中还包含数据成员 post 职务 在 Teacher Cadre 类中还包含数据成员 wages 工资 3 对两个基类中的姓名 年龄 性别 地址 电话等数据成员用相同的名字 在引用这些数 据成员时 指定作用域 4 在类体中声明成员函数 在类外定义成员函数 5 在派生类 Teacher Cadre 的成员函数 show 中调用 Teacher 类中的 display 函数 输出姓 名 年龄 性别 地址 电话 然后再用 cout 语句输出职务和工资 三 实验步骤三 实验步骤 1 运用学过的知识 实验前在纸上写出程序 2 根据程序要求 分析用到几个类 哪些是基类 哪些是派生类 采用何种继承方式 3 先设计基类 再设计派生类 派生类成员函数应该处理哪些数据 4 在主函数中创建对象 创建基类对象还是派生类对象时 通过对象调用哪些成员函数 注意 基类和派生类的构造函数和析构函数的执行顺序 5 上机编辑 编译 调试和运行 并修改错误 四 实验报告四 实验报告 1 写出实验目的 2 写出实验内容和程序清单 3 写出编程思路和类层次图 体会基类与派生类的关系 4 说明对编程分析 运行结果 难点 解决方法 结论和编程体会 1 2 include include using namespace std class teacher public teacher string nam int a char s string ad string tele string t name nam age a sex s address ad telephone tele title t void display protected string name int age char sex string address string telephone string title void teacher display cout 姓名 teacher name endl cout 年龄 teacher age endl cout 性别 teacher sex endl cout 地址 teacher address endl cout 电话 teacher telephone endl cout 职称 teacher title endl class cadre public cadre string nam int a char s string ad string tele string p name nam age a sex s address ad telephone tele post p void show cadre protected string name int age char sex string address string telephone string post void cadre show cadre cout 姓名 cadre name endl cout 年龄 cadre age endl cout 性别 cadre sex endl cout 地址 cadre address endl cout 电话 cadre telephone endl cout 职务 cadre post endl class teacher cadre public teacher public cadre public teacher cadre string nam int a char s string ad string tele string t string p float w teacher nam a s ad tele t cadre nam a s ad tele p wage w void show protected float wage void teacher cadre show teacher display cout 职务 cadre post endl cout 工资 teacher cadre wage endl void main teacher tea 刘洋 18 M london 19950503 学生 cadre cad 风格化 22 M chain 19950809 共青团员 teacher cadre tc 风格化 53 M canada 46546556 学生 共青团员 500 00 cout 老师类 endl tea display cout 干部类 endl cad show cadre cout 老师 干部类 endl tc show 实验题目实验题目实验九实验九 利用利用虚函数编程虚函数编程 实验室实验室9302 机房机房实验时间实验时间2015 年年 月月 日日 实验类别实验类别验证验证同组人数同组人数1 成成 绩绩指导教师签字 指导教师签字 一 实验目的一 实验目的 1 了解多态性的概念和虚函数的作用及使用方法 2 了解静态关联和动态关联的概念和用法 3 了解纯虚函数和抽象类的概念和用法 4 学习使用虚函数的继承实现动态关联 二 实验内容二 实验内容 1 事先阅读程序 给出其运行结果 上机验证虚函数的作用 有如下程序 include include class Student 定义基类 public Student int string float void display 声明输出函数 protected 受保护成员 派生类可访问 int num string name float score Student Student int n string nam float s num n name nam score s void Student display cout num num nname name nscore score endl endl class Graduate public Student 声明公有派生类 public Graduate int string float flaot void display 声明输出函数 private float pay Graduate Graduate int n string nam float s flaot p Student n nam s pay p void Graduate display cout num num nname name nscore score npay pay display pt pt display 1 分析结果 并验证之 2 利用虚函数 对程序作一点修改 在 Student 类中声明 display 函数时 在其前面加上关键 字 virtual 即 virtual void display 再编译运行 注意分析运行结果 2 事先编写一个程序 计算正方体 球体和圆柱体的表面积和体积 提示 声明一个抽象基 类 container 派生类 cube sphere 和 cylinder 基类中求表面积和体积的成员函数声明为纯虚函 数 三 实验步骤三 实验步骤 1 运用学过的知识 实验前在纸上写出程序 2 根据程序要求 先定义基类 然后定义其派生类 3 分析使用那些成员函数 哪些需要用虚函数或者纯虚函数 4 在主函数中完成相应的功能 可以是用基类指针来操作 5 上机编辑 编译 调试和运行 并修改错误 四 实验报告四 实验报告 1 写出实验目的 2 写出实验内容和程序清单 3 说明对编程分析 运行结果 难点 解决方法 结论和编程体会 1 include include class Student 定义基类 public Student int n char nam float s virtual void display 声明输出函数 protected 受保护成员 派生类可访问 int num char name 20 float score Student Student int n char nam float s num n strcpy name nam score s void Student display cout num num nname name nscore score endl endl class Graduate public Student 声明公有派生类 public Graduate int n char nam float s float p void display 声明输出函数 private float pay Graduate Graduate int n char nam float s float p Student n nam s pay p void Graduate display cout num num nname name nscore score npay pay display pt pt display 2 include const double p 3 14 class container public virtual void display virtual void Area virtual void Volume class cube public

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论