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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

实验四 流运算符的重载及文件的使用.docx

1、实验四 流运算符的重载及文件的使用实 验 报 告( 2014 / 2015 学年 第 二 学期)课程名称 面向对象程序设计及C+实验名称实验四:流运算符的重载及文件的使用实验时间2016年5月30日指导单位计算机研究中心指导教师陈景强学生姓名班级学号学院(系)专 业实 验 报 告实验名称流运算符的重载及文件的使用 指导教师陈景强实验类型验证 实验学时2 实验时间4一、 实验目的和要求(1)掌握在自定义的类中重载输入流运算符和输出流运算符和输出流运算符对象名”输入对象的值,通过“cout对象名”输出对象的值,输出复数值时将原来主函数中“对象名.print( )”改成“cout对象名”形式。在上一

2、步完成的基础上,将复数类改成一个类模板,只设一个模板参数,即实部和虚部用同一种类型,修改相应的代码,完成输入、输出功能。实验解答: (1)源代码参考多态性实验第2题。(2)记录重载operator函数的代码:ostream& operator(ostream &s,const Complex &c) cout0)cout+; coutc.imagi; coutendl; return s;(3) 将类改写成类模板:(多态性实验代码中的重载符号仅保留加法+,其他可省略)#includeusing namespace std;template class Complex private: T re

3、al; T imag; public: Complex(T r=0,T i=0) real=r; imag=i; friend Complex operator+(const Complex &a,const Complex &b); friend Complex operator-(const Complex &a,const Complex &b); friend ostream &operator(istream &in,const Complex &a); Complex operator*(const Complex &a); Complex operator/(const Comp

4、lex &a);template ostream &operator(ostream &out,const Complex &a) out0) out+; outa.imagi; outendl; return out;template istream &operator(istream &in,const Complex &a) ina.real; if(a.imag!=0) if(a.imag0) in+; ina.imagi; return in;template Complex operator+(const Complex &a,const Complex &b) Complex t

5、emp; temp.real=a.real+b.real; temp.imag=a.imag+b.imag; return temp;template Complex operator-(const Complex &a,const Complex &b) Complex temp; temp.real=a.real-b.real; temp.imag=a.imag-b.imag; return temp;template Complex Complex :operator*(const Complex &a) Complex temp; temp.real=real*a.real; temp

6、.imag=imag*a.imag; return temp;template Complex Complex :operator/(const Complex &a) Complex temp; temp.real=real/a.real; temp.imag=imag/a.imag; return temp;void main() Complex a1,a2,a3,a4,a5,a6; couta1; couta2; coutoriginal a1 is:a1endl; coutoriginal a2 is:a2endl; a3=a1+a2; couta3=a1+a2=a3endl; a4=

7、a1-a2; couta4=a1-a2=a4endl; a5=a1*a2; couta5=a1*a2=a5endl; a6=a1/a2; couta6=a1/a2=a6endl;实 验 报 告实验题目2:事先用Windows的记事本建立一个文本文件ff.txt。 编写一个函数void ReadFile(char* s)实现读取以s串为文件名的文本文件的内容在屏幕上显示。 编写一个函数void Change(char *s1,char *s2)将文本文件中的小写字母全部改写成大写字母生成一个新文件ff2.txt。 主函数中调用ReadFile(ff.txt);显示ff.txt的内容,调用Chan

8、ge (ff.txt ,ff2.txt);根据ff.txt文件作修改生成一个新的文件ff2.txt,最后再调用ReadFile(ff2.txt);显示新文件的内容。实验解答: void ReadFile(char *s) char ch100; ifstream inf(s); if(!inf) coutCannot open the file!n; return ; inf.get(ch); coutchendl; inf.close(); /请完成代码void Change(char *s1,char *s2) ifstream ifile(ff.txt); if(!ifile) cout

9、ff.txt cannot be openned!endl; return ; ofstream ofile(d:tempff2.txt); if(!ofile) coutff2.txt cannot be openned!endl; return ; char ch; while(ifile.get(ch) ch=ch-32; ofile.put(ch); ifile.close(); ofile.close(); /请完成代码实验题目3(选做):定义学生类,该类包含学生的一些基本信息:学号、姓名、性别、成绩。定义流对象,实现用write函数将学生信息以二进制方式写到磁盘文件stu.dat中

10、。再用read将磁盘中的学生信息读到内存显示在屏幕上。实验解答:(1)Student:Student(char *nu,char *na,char *se,int s) /构造函数ostream & operator(ostream &out,const Student &s) /重载输出运算符s1s2; /从键盘上输入要操作的文件名 Change(_s1,s2_); /调用Change函数将s1串为文件名的内容修改后保存到以s2串为文件名的文本文件中 ReadFile(_s2_); /读取s2串为文件名的文本内容 return 0;3.其它问题及解决方法:4.心得体会:我学会了流运算符的重载和文件的使用方法。五、指导教师评语成 绩批阅人日 期

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

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