收藏 分享(赏)

C++输入输出流实验报告.doc

上传人:tangtianxu1 文档编号:2931552 上传时间:2018-09-30 格式:DOC 页数:15 大小:174.50KB
下载 相关 举报
C++输入输出流实验报告.doc_第1页
第1页 / 共15页
C++输入输出流实验报告.doc_第2页
第2页 / 共15页
C++输入输出流实验报告.doc_第3页
第3页 / 共15页
C++输入输出流实验报告.doc_第4页
第4页 / 共15页
C++输入输出流实验报告.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、深 圳 大 学 实 验 报 告实验课程名称: 程序设计实验与课程设计 实验项目名称: 实验 10 C+流输入与流输出 学院: 计软 专业: 计科 报告人: 学号: 班级: 3 同组人: 无 指导教师: 朱安民 实验时间: 2014 年 6 月 16 日 提交时间: 2014 年 6 月16 声明:本次实验内容由报告人和同组人独立完成,所有涉及到他人的工作均已说明。报告人和同组人均同意教师及学校为教学活动而引用本实验的内容,且无需事先征得同意和特别说明。实验名称,实验人姓名,页码教务处制实验名称,实验人姓名,页码一、实验目的1掌握标准输入输出(iostream 库中标准对象 cin、cout)的

2、使用2掌握 IO 流类成员函数输入输出(cin.get, cin.getline, cin.read; cout.put, cout.write)的使用3掌握输出格式(标准控制符、IO 流类成员函数、iomanip 头文件中的控制符)控制方法4掌握磁盘文件的输入输出方法二、实验说明和实验环境1在奥特曼类的基础上,编写一个程序,重载运算符“ ”和“”,使得用户可以直接(格式化)输出奥特曼的状态。在主程序中输入若干个(3 个) 奥特曼的状态,并分别将它们保存到文件 RecordU.txt 中。然后读取并显示文件中的内容。2奥特曼和怪物都具有属性:等级, 生命, 攻击, 经验, 金钱,都具有方法:初

3、始化 initial 和显示状态 display在奥特曼的初始化中,需要接受外来等级参数,生命, 攻击的数值初始化为等级的 10 倍,金钱为等级的 100 倍,经验恒为 0在怪兽的初始化中,需要接受外来等级参数,生命, 攻击的数值初始化为等级的 8 倍,经验为等级的 80 倍,金钱为等级的 800 倍对怪兽和奥特曼的状态输出采用运算符重载的方法,并结合 display 方法使用,注意本题目要求怪兽和奥特曼的状态输出必须使用重载运算符,不能直接使用 display 方法。注意:为了实现运算符重载,需要包含头文件经常天降怪石会砸中奥特曼或怪兽,如果被幸运石砸中,就会处于“鸿运当头”状态,被砸对象除

4、等级外其它属性全部翻倍;如果被厄运石砸中,就会陷入“倒霉透顶”状态,被砸对象除等级外其它属性全部减半。把“鸿运当头”封装成操作,并用重载运算符+来实现;“ 倒霉透顶”封装成操作,并用重载运算符-来实现。两个重载都需要用友元方法。3奥特曼和怪物经过一番战斗斗,需要中场休息,休息时把各自的属性值存放到一个文件中,休息结束时需要从文件中读取之前的状态继续战斗。奥特曼和怪物都具有属性:等级, 生命, 攻击, 经验, 金钱,都具有方法:初始化 initial 和显示状态 display奥特曼和怪兽的属性值均来自于文件(文件的第一行是奥特曼的数据,初始状态为:等级是 8,生命, 攻击的数值初始化为等级的

5、10 倍,金钱为等级的100 倍,经验恒为 0,文件的第二行是怪兽的数据,初始状态为等级是 4,生命, 攻击的数值初始化为等级的 8 倍,经验为等级的 80 倍,金钱为等级的 800 倍)对怪兽和奥特曼的状态输出采用运算符重载的方法,并结合 display 方法使用,注意本题目要求怪兽和奥特曼的状态输出必须使用重载运算符,不能直接使用 display 方法。把信息直接从文件读出来并赋值给奥特曼和怪兽,需要重载运算符作为友元;实验名称,实验人姓名,页码把奥特曼和怪兽的值写入文件,要求重载运算符作为友元 三、实验分析设计. 实验名称,实验人姓名,页码实验名称,实验人姓名,页码四、核心代码说明第一题

6、#include#includeusing namespace std;/类的定义与实现class Ultramanpublic:Ultraman();friend istream return input;friend ostream outfileu1u2u3;coutusing namespace std;/奥特曼类class Ultramanpublic:void initial(int);void display();friend ostreamwhile(t-)cinsk;if(s=u)if(k%2=0) +U;else -U;U.display();if(s=m)if(k%2=0

7、) +M;else -M;M.display();return 0;第三题#include#include#includeusing namespace std;/奥特曼类class Ultramanpublic:int getmoney()return money;void initial(int);void display();friend istreamreturn input;friend ostreamreturn input;friend ostreamwhile(t-)cinsk;if(s=u)if(k%2=0) +U1;else -U1;coutU2;fin2M2;fin2.c

8、lose();coutU1.getmoney()+M1.getmoney()endl;return 0;五、测试与结果1 和 2 题通过网上测评系统;第三题时间时间未掌握好,没有进行测评,但通过 vc6.0实验名称,实验人姓名,页码六、总结与分析 1. 实验基本达到了实验要求,第三题应该能通过测评系统。2. 基本掌握了以下内容:(1)标准输入输出( iostream 库中标准对象cin、cout)的使用(2)IO 流类成员函数输入输出(cin.get, cin.getline, cin.read; cout.put, cout.write)的使用(3)输出格式(标准控制符、IO 流类成员函数、

9、iomanip 头文件中的控制符)控制方法(4)磁盘文件的输入输出方法3.实验过程中对某些语句应用不熟练,走了很多弯路,需要加强对编程的练习。七、参考资料C+程序设计实验名称,实验人姓名,页码指导教师批阅意见:成绩评定:指导教师签字: 朱安民2014 年 6 月 23 日实验报告内容的确完整性(20 分)实验设计的清晰程度(20 分)实验数据的准确性(20 分)实验结果和分析的正确性(20 分)实验态度(实验表现、格式排版、独立完成、按时提交) (20 分)完整20较完整15不够完整10清晰20较清晰15不够清晰10准确20较准确15不够准确10正确20较正确15不够正确10规范20较规范15不够规范10说明: 说明: 说明: 说明: 说明:备注:注:1、报告内的项目或内容设置,可根据实际情况加以调整和补充。2、教师批改学生实验报告时间应在学生提交实验报告时间后 15 工作日内。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 专业基础教材

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报