《面向对象程序设计》实验报告[二]

上传人:好** 文档编号:115359252 上传时间:2019-11-13 格式:DOC 页数:17 大小:281.50KB
返回 下载 相关 举报
《面向对象程序设计》实验报告[二]_第1页
第1页 / 共17页
《面向对象程序设计》实验报告[二]_第2页
第2页 / 共17页
《面向对象程序设计》实验报告[二]_第3页
第3页 / 共17页
《面向对象程序设计》实验报告[二]_第4页
第4页 / 共17页
《面向对象程序设计》实验报告[二]_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《《面向对象程序设计》实验报告[二]》由会员分享,可在线阅读,更多相关《《面向对象程序设计》实验报告[二](17页珍藏版)》请在金锄头文库上搜索。

1、计算机科学与工程学院计算机科学与工程学院面向对象程序设计实验报告二专业班级2017数字媒体技术01实验地点J411学生学号1705121411指导教师陈艳学生姓名黄浩博实验时间实验项目类的定义及应用(6学时)实验类别基础性() 设计性() 综合性() 其它( )实验目的及要求1掌握类定义的语法;2掌握构造函数和析构函数的定义;3掌握几个关键字的用法:this、const、new/delete、friend4综合应用类的封装性解决常见问题;5完成实验内容,调试通过后将完整代码及运行截图粘贴到实验结果对应的题号下面;6对本次实验进行总结(遇到的问题,可行的解决方案,收获,体会等等)7完成实验报告后

2、,以学号+姓名+实验2(.doc或.docx)为名上传到ftp:/218.199.185.223/student/上传作业/陈艳/面向对象程序设计下对应班级及实验项目文件夹中成 绩 评 定 表类 别评 分 标 准分值得分合 计上机表现积极出勤、遵守纪律主动完成设计任务30分程序与报告程序代码规范、功能正确报告详实完整、体现收获70分说明: 评阅教师: 日 期: 年 月 日实 验 内 容题目1:下面设计一个三角形类,请按下列声明形式完成各成员函数的定义。添加主程序中初始化该类,并调用成员函数测试结果。#include using namespace std; class Trianglepubl

3、ic: void Setabc(doublex, doubley, doublez);/设置三条边的值,注意要能成三角形double Perimeter( );/计算三角形的周长double Area( );/计算并返回三角形的面积 private: double a,b,c; /三条边的长度为私有数据成员;题目2:定义一个正方形类Square,编写构造函数、析构函数,Set()/Get()函数以设置/读取边长,perimeter()函数和area函数分别求周长和面积。并在主程序中进行测试。题目3:定义时间类Time,并计算两个时间之间的间隔。题目4:定义Student类(包含3个数据成员na

4、me,id_number,score),计算班上30个学生的平均成绩,并按成绩高到低顺序输出高于平均成绩的学生信息。题目5:从定义复数类,实现实部、虚部的读写,复数计算,结果输出等功能。并在主程序中进行测试。题目6:定义Point类和Line类(Line类的成员是Point的对象复合),在主程序中进行测试,体会构造函数、析构函数、赋值运算符函数、拷贝构造函数的调用。实 验 结 果 题目1:#include#includeusing namespace std;class Trianglepublic:void Setabc(double x, double y, double z);doubl

5、e Perimeter();double Area();private:double a,b,c;int main() double a,b,c; coutabc; Triangle triangle; triangle.Setabc(a,b,c); double len=triangle.Perimeter(); double s=triangle.Area(); coutThe triangles Perimeter is :lenendl The triangles Area is :sendl; return 0;void Triangle:Setabc(double x, doubl

6、e y, double z) a=x;b=y;c=z;double Triangle:Perimeter() double len; len=a+b+c; return len;double Triangle:Area() double p=(a+b+c)/2; double s=sqrt(p*(p-a)*(p-b)*(p-c); return s;题目2:#includeclass Squareprivate: double m_a;public: Square(); Square(); void Set(double a); void Get(); double Perimeter();

7、double Area();int main() Square square; std:couta; square.Set(a); square.Get(); b=square.Perimeter(); c=square.Area(); std:coutThe squares Perimeter is :bstd:endl The squares Area is :cstd:endl; return 0;Square:Square() std:coutThis project is about square!std:endl;Square:Square() std:coutByestd:end

8、l;void Square:Set(double a) m_a=a;void Square:Get() std:coutThe squares length is:m_astd:endl;double Square:Perimeter() return 4*m_a;double Square:Area() return m_a*m_a;题目3:#includeclass Timeprivate: int m_hour,m_minute,m_second;public: Time()std:coutThis is a new time.std:endl; void Set(int s,int m

9、,int h)m_hour=h;m_minute=m;m_second=s; void Interval(Time s); Time()std:coutEnd.std:endl;int main() Time time2; std:coutPlease enter the time in chronological order.; for(int a=0;a2;a+) std:coutPlease enter the time:(second minute,hour)smh; timea.Set(s,m,h); time1.Interval(time0); return 0;void Time

10、:Interval(Time S) int s,m,h; bool flag1(0),flag2(0); if(this-m_secondS.m_second) s=this-m_second-S.m_second; else s=60+this-m_second-S.m_second; flag1=1; if(flag1) this-m_minute-; if(this-m_minuteS.m_minute) m=this-m_minute-S.m_minute; else m=60+this-m_minute-S.m_minute; flag2=1; if(flag2) this-m_ho

11、ur-; h=this-m_hour-S.m_hour; std:coutThe time interval is:(hour,minute,second) h hours,m minutess seconds.;题目4:Student.h#ifndef STUDENT_H_INCLUDED#define STUDENT_H_INCLUDED#includeusing std:string;class Studentprivate: string m_name; long int m_id; float m_score;public: Student(string name=None,long int id=0,float score=0):m_name(name),m_id(id),m_score(score); void Set(string name,long int id,float score)m_name=name;m_id=id;m_score=score; float Interval()return m_score; void pri()std:coutThe name is m_name.The id is m_id.The score is m_scorem_scorea.m_score) return true ;else return false;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号