




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
深 圳 大 学 实 验 报 告 课程名称: 面对对象程序设计 实验项目名称: 类与对象的基本概念 学院: 信息工程学院 专业: 无 指导教师: 骆剑平 报告人:XXX 学号: 201413XXXX 班级: 一班 实验时间: 2015.11.13 实验报告提交时间: 2015.11.27 教务部制1 实验目的与要求:类是C+扩展数据类型,可以封装不同类型的数据成员和函数成员,类是面对对象程序设计的基础。通过本次试验要求掌握以下内容:1. 掌握面对对象的基本概念和类的定义方法。2. 掌握类成员的访问权限以及访问类成员的方法。3. 掌握内联函数和默认函数。4. 掌握构造函数与析构函数的意义以及使用方法。2 实验内容编程:建立一个分数类。分数类的数据成员包括分子和分母,操作包括约分、通分、加、减、乘、除、求倒数、比较、显示和输入。分数类的定义如下: class fraction int above; /分子 int below; /分母 void reduction(); /约分 void makeCommond(fraction&); /通分 public: fraction(int=0,int=1); /构造函数 fraction add(fraction); /两分数相加 fraction sub(fraction); /本分数减去实参分数 fraction mul(fraction); /两分数相乘 fraction div(fraction); /本分数除以实参分数 fraction reciprocal(); /求倒数 bool equal(fraction); /等于运算 bool greaterThan(fraction); /大于运算 bool lessThan(fraction); /小于运算 void display(); /显示分数 void input(); /输入分数;三实验过程及内容: #include#includeusing namespace std;class fraction int above; /分子 int below; /分母 void reduction(); /约分 void makeCommond(fraction&); /通分public: fraction(int a=0,int b=1) /构造函数 above=a;below=b; fraction add(fraction); /两分数相加 fraction sub(fraction); /本分数减去实参分数 fraction mul(fraction); /两分数相乘 fraction div(fraction); /本分数除以实参分数 fraction reciprocal(); /求倒数 bool equal(fraction); /等于运算 bool greaterThan(fraction); /大于运算 bool lessThan(fraction); /小于运算 void display(); /显示分数 void input(); /输入分数;void fraction:reduction() /约分先求最大公约数 int a,b,temp; if(below0) above=-above; below=-below; a=abs(above); b=abs(below); while(a%b) /欧几里德法求最大公约数 temp=a; a=b; b=temp%b; above/=b; below/=b;void fraction:makeCommond(fraction &b) int temp; reduction(); b.reduction(); above*=b.below; b.above*=below; temp=below*b.below; below=b.below=temp;fraction fraction:add(fraction b) fraction temp; makeCommond(b); /通分 temp.above=above+b.above; temp.below=below; temp.reduction(); /约分 return temp;fraction fraction:sub(fraction b) fraction temp; makeCommond(b); /通分 temp.above=above-b.above; temp.below=below; temp.reduction(); /约分 return temp;fraction fraction:mul(fraction b) fraction temp; temp.above=above*b.above; temp.below=below*b.below; temp.reduction(); /约分 return temp;fraction fraction:div(fraction b) fraction temp; if(b.above=0) cout零不能作除数!b.above);bool fraction:lessThan(fraction b) makeCommond(b); /通分 return(aboveb.above);void fraction:display() reduction(); /约分 cout为:above/belowendl;void fraction:input() while(1) cout请顺序输入分子和分母(整数):abovebelow; if(below=0) cout分母不可为零!endl; else reduction(); return; int main() fraction f1; fraction f2; fraction f3; f1.input(); f2.input(); coutf1; f1.display(); coutf2; f2.display(); if(f1.greaterThan(f2) coutf2endl; if(f1.lessThan(f2) coutf1f2endl; if(f1.equal(f2) coutf1=f2endl; f3=f1.add(f2); coutf3=f1+f2; f3.display(); f3=f1.sub(f2); coutf3=f1-f2; f3.display(); f3=f1.mul(f2); coutf3=f1*f3; f3.display(); f3=f1.div(f2); coutf3=f1/f2; f3.display(); f3=f1.reciprocal(); coutf3=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025广东深圳市龙岗区第五人民医院第二批招聘14人考前自测高频考点模拟试题及答案详解1套
- 2025年新能源车用电池安全技术专利分析报告
- 2025昆明市五华区人民检察院招聘聘用制书记员(14人)考前自测高频考点模拟试题及答案详解(网校专用)
- 2025年康复医疗服务体系与康复医疗康复康复护理康复康复运动疗法运营模式研究报告
- 2025年临沂兰陵县国有资产运营有限公司公开招聘工作人员(4名)考前自测高频考点模拟试题含答案详解
- 动漫产业链协同创新趋势与2025年产业生态构建报告
- 2025年船舶动力固态电池在新能源领域的应用分析与预测报告
- 2025福建厦门大学医学中心(厦门大学附属翔安医院)高层次人才招聘103人模拟试卷及完整答案详解一套
- 2025年潍坊寿光综合医院(原寿光市人民医院)招聘专业技术人员(23名)考前自测高频考点模拟试题及完整答案详解一套
- 2025北京邮电大学集成电路学院招聘3人(人才派遣)考前自测高频考点模拟试题及答案详解(历年真题)
- 2024年新人教版七年级上册历史 第8课 夏商周时期的科技与文化 (2) 教学课件
- 四年级下册心理健康教案-第二十五课 有了苦恼会倾诉-培养孩子的乐观情绪|北师大版
- DL-T5024-2020电力工程地基处理技术规程
- PICC堵管原因与再通方法
- 初中数学分层作业设计举例-有理数
- 给小学生科普化学
- 驾照体检表完整版本
- 磁保持继电器基础知识课件
- 安全生产区域管理办法范本
- 设备保管协议
- 中石油职称英语通用教材
评论
0/150
提交评论