已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象程序设计 实验指导书 实验类别 设计 实验课程名称 面向对象程序设计方法学 实验室名称 软件基础实验室 实验课程编号 总学时 56 学 分 3 5 适用专业 计算机科学与技术 网络工程 物联网 先修课程 有一门程序设计语言基础 实验在教学培养计划中地位 作用 面向对象程序设计方法学是一门实践性很强的课程 每个学生必须完成一定数量 的上机实验 实验课是对学生的一种全面综合训练 是与课堂听讲 自学和练习相辅 相成的必不可少的一个教学环节 本课程使学生熟悉 C 的语法特性 了解 C 与 C 的区别和兼容性 理解面向对象程序设计的基本原理 包括类 对象 抽象 封装 继承和多态性等关键要素以及其关键语法特性 类 掌握用 C 编写面向对象程序的 一般方法 了解 VC 编程环境 通过上机实验进一步加深对课程基本内容的理解 同时 在程序设计方法及上机操作等基本技能和科学作风方面受到比较系统的 严格 的训练 实验一 语句与程序流程 2 学时 1 实验目的 1 了解 C 开发工具的特点 2 熟悉 C 开发环境 3 学会编写简单的 C 程序 4 练习使用简单的输入输出 5 熟悉各种流程控制语句的功能 2 实验内容 1 输入并运行程序 用 do while 语句编程 求自然数 1 10 之和 程序正确运行之 后 去掉源程序中的 include 语句 重新编译 观察会有什么问题 2 do while 语句用 for 语句代替 完成相同的功能 3 编程计算图形的面积 程序可计算圆形 长方形 正方形的面积 运行时先提示 用户选择图形的类型 然后 对圆形要求用户输入半径值 对长方形要求用户输入长和宽 的值 对正方形要求用户输入边长的值 计算出面积后将其显示出来 3 实验要求 1 注意自始至终贯彻课程中所介绍程序设计风格 养成良好的编程习惯 2 独立完成所布置习题 3 为保证尽量在统一安排的上机时间内编译运行通过程序 应事先设计好程序 4 认真完成每次实验 并写出实验报告 4 实验步骤 1 启动 Visual C 开发环境 2 创建一个项目 1 单击 File 菜单中的 New 选项 显示新建对话框 2 选择 Win32 Console Application VC 3 选择项目所在路径及输入项目的名称 lab1 1 4 依次按 下一步 直至完成为止 3 至此 已经建立好工程相关的文件 在生成的 main 函数中写入必要的内容即可 4 输入并运行程序 用 do while 语句编程 求自然数 1 10 之和 1 建立 C 源程序文件 选菜单命令 Project Add to Project New 弹出 New 对话框 在 New 对话框的 Files 选项卡中选择 C Source File 并填入文件名称 lab1 1 单击 OK 按钮 完成新建 C 源程序文件 2 编辑 C 源程序文件 在文件编辑窗口中输入代码 完成后 选择菜单 File Save 保存这个文件 3 建立并运行可执行程序 选择菜单命令 Build 建立可执行程序 如果你正确输入了源程序 此时便成功地生成了可执行程序 如果程序 有语法错误 则屏幕下方的状态窗口中会显示错误信息 根据这些错误信息 对源程序进行修改后 重新选择菜单命令 Build 建立可执行程序 选择菜单命令 Run 运行程序 观察屏幕显示内容 5 程序正确运行之后 在源程序第一行 include 前面加注释标记 使之成为注释行 重新编译 观察编译的结果 6 选择菜单命令 File Colse WorkSpace 关闭工作空间 另建立一个项目 lab1 2 包 含一个 C 源程序 lab1 2 cpp 将 do while 语句用 for 语句代替 完成与实验内容 1 相同的 功能 7 选择菜单命令 File Colse WorkSpace 关闭工作空间 建立项目 lab1 3 包含一个 C 源程序 lab1 3 cpp 计算图形面积 圆形的面积计算公式为 S PI r r 长方形的面积计 算公式为 S a b 正方形的面积市场计算公式为 S a a 程序中定义一个整型变量 iType 表 示图形的类型 用 cout 语句输出提示信息让用户选择图形的型 用 cin 读入 iType 的值 然后 使用 switch 语句判断图形的类型 分别提示用户输入需要的参数值 计算出面积的 值后用 cout 语句显示出来 最后编译运行程序 参考程序如下 lab3 3 cpp include using namespace std const float PI 3 1416 int main int iType float radius a b area cout iType switch iType case 1 cout radius area PI radius radius cout 面积为 area endl break case 2 cout a cout b area a b cout 面积为 area endl break case 3 cout a area a a cout 面积为 area endl break default cout 不是合法的输入值 endl return 0 实验二 函数与重载 2 学时 1 实验目的 1 掌握函数的定义和调用方法 2 练习重载函数使用 3 练习缺省参数的函数使用 4 练习使用系统函数 2 实验内容 1 编写一个函数把华氏温度转换为摄氏温度 转换公式为 C F 32 5 9 2 编写重载函数 max1 可分别求取两个整数 三个整数 两个双精度数 三个双精 度数的最大值 3 给求取两个整数最大值的重载函数 max1 赋缺省参数值 0 并利用该函数来判断 某个整数是否大于 0 比如 max1 6 4 使用系统函数 pow x y 计算 x y 的值 注意包含头文件 cmath 3 实验要求 1 注意自始至终贯彻课程中所介绍程序设计风格 养成良好的编程习惯 2 独立完成所布置习题 3 为保证尽量在统一安排的上机时间内编译运行通过程序 应事先设计好程序 4 认真完成每次实验 并写出实验报告 4 实验步骤 1 编写函数 float Convert float TempFer 参数的返回值都为 float 类型 实现算法 C F 32 5 9 在 main 函数中实现输入 输出 程序名为 lab2 1 cpp 2 分别编写四个同名函数 max1 实现函数重载 在 main 函数中测试函数功能 程序名 lab2 2 cpp 参考程序如下 include using namespace std int max1 int a 0 int b 0 return a b a b int max1 int a int b int c int tmp max1 a b return tmp c tmp c double max1 double a double b return a b a b double max1 double a double b double c double tmp max1 a b return tmp c tmp c int main int n1 n2 n3 cout n1 if max1 n1 0 cout 这个数小于或等于 0 else cout 这个数大于 0 cout n1 n2 cout 最大值为 max1 n1 n2 endl cout n1 n2 n3 cout 最大值为 max1 n1 n2 n3 endl double d1 d2 d3 cout d1 d2 cout 最大值为 max1 d1 d2 endl cout d1 d2 d3 cout 最大值为 max1 d1 d2 d3 endl return 0 3 若将三个整数的函数给定缺省参数值 0 重新编译 观察编译的结果 4 在 main 函数中提示输入两个整数 x y 使用 cin 语句得到 x y 的值 调用 pow x y 函数计算 x 的 y 次幂的结果 再显示出来 程序名 lab2 2 cpp 实验三 类的定义与使用 2 学时 1 实验目的 1 掌握类的定义和使用 2 掌握类的定义和对象的声明 3 观察构造函数和析构函数的执行过程 4 观察具有不同访问属性的成员的访问方式 2 实验内容 1 定义一个 TDate 类 包含年 year 月 month 日 day 等属性 有三个公有成员 函数 SetDate 来设置日期 AddOneDay 来对日期进行加 1 天的操作 print 来输出日期 2 对构造函数或成员函数进行重载 3 设置构造函数或成员函数的缺省参数 4 观察构造函数和析构函数的调用顺序 5 观察具有不同访问属性的成员的访问方式 3 实验要求 1 注意自始至终贯彻课程中所介绍程序设计风格 养成良好的编程习惯 2 独立完成所布置习题 3 为保证尽量在统一安排的上机时间内编译运行通过程序 应事先设计好程序 4 认真完成每次实验 并写出实验报告 4 实验步骤 1 添加一个头文件 TDate h 来定义 TDate 类 包含 1 私有数据成员 年 year 月 month 日 day 等 2 定义 2 个构造函数 并对其中的一个构造函数设置缺省参数 3 定义 1 个析构函数 4 定义成员函数 SetDate 来设置日期 AddOneDay 来对日期进行加 1 天的操作 print 来输出日期 2 添加一个源文件 TDate cpp 来实现成员函数 3 在主程序中定义若干个 TDate 类的对象 调用其成员函数 观察类对象的构造与 析构顺序 以及成员函数的调用 写在另外一个 cpp 文件中 4 将成员函数 print 的访问属性设为 private 或 protected 后 重新编译 观察编译结 果 日期类定义部分 TDate h include using namespace std ifndef TDate H define TDate H class TDate public TDate year 2014 month 1 day 1 cout 调用缺省的构造函数 endl TDate int y int m 1 int d 1 year y month m day d cout 调用带参数的构造函数 endl void SetDate int y int m int d void AddOneDay void print TDate cout 调用析构函数 endl private int year int month int day endif 日期类实现部分 TDate cpp include TDate h int maxDays int int void TDate print cout year 年 month 月 day 日 maxDays year month month month 1 day 1 if month 12 year year 1 month 1 int maxDays int y int m int days switch m case 1 case 3 case 5 case 7 case 8 case 10 case 12 days 31 31 天 break case 2 if y 4 0 else days 28 break default 30 天 days 30 break return days 主函数部分 Lab3 cpp int main TDate d0 cout 不带参数的日期对象 d0 print TDate d1 2003 cout 带 1 个参数的日期对象 d1 print TDate d2 2003 12 cout 带 2 个参数的日期对象 d2 print TDate d3 2014 10 14 d3 AddOneDay cout 带 3 个参数的日期对象加一天后 d3 print d3 SetDate 2005 4 8 cout 重新设定日期后 d3 print return 0 实验四 静态成员与常成员的使用 2 学时 1 实验目的 1 学习静态成员的使用 2 学习常成员的使用 3 掌握静态数据成员与常数据成员的初始化 2 实验内容 1 某商店经销一种货物 货物成箱购进 成箱卖出 购进和卖出时以重量为单位 各箱的重量不一样 因此 商店需要记录下目前库存的货物的总重量 现在要求设计一个 Goods 类并使用静态成员来模拟商店货物购进和卖出的情况 2 为上面的 Goods 类添加一个常数据成员 货物名称 并对货物名称进行初始化 3 将前面已定义的某些成员函数改写为常成员函数 观察是否该类中所有的成员函 数是否都可设定为常成员函数 3 实验要求 1 注意自始至终贯彻课程中所介绍程序设计风格 养成良好的编程习惯 2 独立完成所布置习题 3 为保证尽量在统一安排的上机时间内编译运行通过程序 应事先设计好程序 4 认真完成每次实验 并写出实验报告 4 实验步骤 1 添加一个头文件 Goods h 来定义 Goods 类 包含 1 私有数据成员货物重量 weight 私有静态数据成员库存总重量 totalWeight 2 定义构造函数来描述进货过程 3 定义成员函数 Sell 来描述货物卖出过程 成员函数 GetWeight 来获取当前货物 重量 4 定义静态成员函数 GetTotalWeight 来读取当前货物的库存总重量 5 自定义若干个成员函数 2 添加一个源文件 Goods cpp 来实现成员函数 3 在主程序中定义若干个 Goods 类的对象 模拟进货与卖出的过程 查看运行结 果 4 为 Goods 类添加一个常数据成员 const char name 来表示货物名称 改写构造函 数及主程序的调用 在构
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 土石方挖掘机司机岗前管理综合考核试卷含答案
- 鉴定估价师变革管理模拟考核试卷含答案
- 2025年三峡电力职业学院辅导员考试笔试真题汇编附答案
- 浆丝机操作工操作技能水平考核试卷含答案
- 罐头封装工安全检查水平考核试卷含答案
- 羽绒羽毛加工处理工诚信测试考核试卷含答案
- 松香蒸馏工岗前纪律考核试卷含答案
- 2025年上海纺织工业职工大学辅导员招聘备考题库附答案
- 2024年湖州学院马克思主义基本原理概论期末考试题附答案
- 2025年互助县事业单位联考招聘考试真题汇编附答案
- 电工承包简单合同(2篇)
- 新能源电站单位千瓦造价标准值(2024版)
- 军队院校招生文化科目统一考试模拟试卷
- 03课题三-建筑运行大数据安全与数据质量-20180703
- 工业区物业服务手册
- 2024新能源集控中心储能电站接入技术方案
- 河南省信阳市2023-2024学年高二上学期期末教学质量检测数学试题(含答案解析)
- 零售行业的店面管理培训资料
- 培训课件电气接地保护培训课件
- 污水管网工程监理月报
- 安徽涵丰科技有限公司年产6000吨磷酸酯阻燃剂DOPO、4800吨磷酸酯阻燃剂DOPO衍生品、12000吨副产品盐酸、38000吨聚合氯化铝、20000吨固化剂项目环境影响报告书
评论
0/150
提交评论