ImageVerifierCode 换一换
格式:DOCX , 页数:7 ,大小:97.73KB ,
资源ID:7914529      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7914529.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++实验报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C++实验报告.docx

1、C+实验报告 实验一1题目 编写一个时间类,实现时间的自增、自减、读和输出。2编程思想 定义两个私有数据成员minute和 second,在自增运算中重载运算符+,使得若时间大于60秒是minute自增1,second为(秒数-60),在这里我定义的全部是后置运算,重载运算符也是一样。在主函数中定义了4个Time类的对象,通过调用display()函数分别显示自增自减前和后的时间数。3源程序#include#includeusing namespace std;class Time public: Time()minute=0;second=0;/默认构造函数 Time(int m,int s

2、):minute(m),second(s)/构造 重载函数 ,用参数的初始化表对数据成员初始化 Time operator+(int);/声明后自增运算符+ 重载函数 Time operator-(int);/声明后置自减运算符“-”重载函数 void display()coutminute:second=60) second-=60; +minute; return temp;/返回的是自加前的对象 Time Time:operator-(int)/定义后置运算符“-”重载函数 Time temp(*this); second-; if(second=0) second+=60; -minu

3、te; return temp;/返回的是自减前的对象 int main() Time time1(34,59),time2(23,00),time3,time4; couttime1:; time1.display(); couttime3=time+endl; time3=time1+; couttime3:; time3.display(); couttime1:; time1.display(); cout-endl; couttime2:; time2.display(); couttime4=time-endl; time4=time2-; couttime4:; time4.di

4、splay(); couttime2:; time2.display(); system(pause); 4运行结果5问题及解决 此次实验主要是练习如何对+和-运算符进行重载,在编程过程中由于对于时间的计算运用不是很熟练导致在重载函数时输出结果不正确,经过多次修改后得出正确运行结果。本次实验较为简单,在编程过程中未遇到较为棘手的问题。 实验二1题目 定义描述平面任意点坐标(X,Y)的类Point,编写一运算符重载函数,使该函数能求出平面上任意两点的距离。在主函数中完成下列运算: Point p1(1,1), p2(4,5);double d = p1-p2;2编程思想 在point类中声明两个

5、私有成员x和y,在类内定义构造函数,并在构造函数中声明运算符“-”的重载函数,然后定义运算符重载函数,用this指针指向当前值,定义一求距离的的友元函数d(),使得其能够访问point类中的私有成员,并返回两点距离值。在主函数中通过两种方法计算平面两点的举例,一是通过运算符重载,二是通过函数调用,两者结果相同。3源程序#include#include#includeusing namespace std;class point private: double x,y;/私有成员函数public: point(double a,double b) x=a;y=b; cout点:(x,y ) x-

6、p.x)*(this-x-p.x)+(this-y-p.y)*(this-y-p.y); friend double d(point &a,point &b)/ return sqrt(a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y); ;int main() point p1(1,1),p2(4,5); cout 距离为: p1 - p2 endl; cout两点间距离:d(p1,p2)endl; system(pause); return 0;4运行结果5问题及解决 在本次实验中,对运算符重载的认识有进一步加深,在最初的编程过程中不知道怎样才能将计算距离的算法进

7、行运算符重载,通过多次的尝试和学习才得知对运算符的重载其实就是在原来运算符的基础上在多加一些功能,在重载函数中将其功能实现即可。 实验三1题目 定义学生成绩类Score,其私有数据成员有学号、姓名、物理、数学、外语、平均成绩。再定义一个能计算学生平均成绩的普通函数Average(),并将该普通函数定义为Score类的友元函数。在主函数中定义学生成绩对象,通过构造函数输入除平时成绩外的其他信息,然后调用Average()函数计算平均成绩,并输出学生成绩的所有信息。2编程思想 在Score类的公有部分声明友元函数Average(),在类外定义构造函数,将各个数据成员初始化,并对某一学生的各信息进行

8、输出;在类外定义一求平均成绩的函数,用于求该生各门课程的平均成绩,在主函数中声明Score的对象s并对各项进行赋初值,通过调用Average()输出平均成绩。3源程序#include#includeusing namespace std;class Scorepublic: friend double Average(Score *s); Score(char *number,char *name,double physicsScore, double mathScore,double englishScore,double other); private: char m_number100;

9、 char m_name100; double m_physicsScore; double m_mathScore; double m_englishScore; double m_other;Score:Score(char *number,char *name,double physicsScore, double mathScore,double englishScore,double other) strcpy(m_number,number); strcpy(m_name,name); m_physicsScore=physicsScore; m_mathScore=mathSco

10、re; m_englishScore=englishScore; m_other=other; cout学号:m_numberendl; cout姓名:m_nameendl; cout物理:m_physicsScoreendl; cout数学:m_mathScoreendl; cout英语:m_englishScoreendl; cout其他:m_otherm_physicsScore+s-m_mathScore+s-m_englishScore+s-m_other)/4;int main() Score s(1239902983,陈晨,80,85,90,88); cout平均成绩:Average(&s)endl; system(pause); return 0;4运行结果5问题及解决本次实验较为困惑的地方是在对Average()函数的调用上,因为在Score类中将其声明为友元函数,所以它可以访问类中的私有成员,但在构造函数中由于对个数据成员赋初值,所以在AVerage()函数中不知道变量使用是赋值后的还是赋值钱前的,所以导致在多次调试过程中多次出错,在以后的学习中对定义的理解和掌握还得加强! C+上机实验报告 班级:030914 学号:03091391 姓名:顾娜

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1