好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

实验6标准设备与文件流的输入输出.doc

3页
  • 卖家[上传人]:宝路
  • 文档编号:4102084
  • 上传时间:2017-08-15
  • 文档格式:DOC
  • 文档大小:228KB
  • / 3 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 实验 6 标准设备与文件流的输入输出实验 6 标准设备与文件流的输入输出6.1 实验目的1.掌握文件流的打开、关闭及使用的使用方法2.理解文本文件流与二进制文件流在操作上的区别6.2 实验内容与步骤1.上机实验题一设计一个管理图书目的简单程序,提供的基本功能包括:可连续将新书存入文件“book.dat”中,新书信息加入到文件的尾部;也可以根据输入的书名进行查找;把文件“book.dat”中同书名的所有书显示出来为简单起见,描述一本书的信息包括:书号,书名,出版社和作者⑴分析 可以把描述一本书的信息定义为一个 Book 类,它包含必要的成员函数把加入的新书总是加入到文件尾部,所以,以增补方式打开输出文件从文件中查找书时,总是从文件开始位置查找,以读方式打开文件用一个循环语句实现可连续地将新书加入文件或从文件中查找指定的书名由于是以一个 Book 类的实例进行文件输入输出的,所以,这文件的类型应该是二进制文件简化的参考程序如下:#include #include #include class Book{long int num; //书号char bookname[40]; //书名char publicname[40]; //出版社char name[20]; //作者public:Book(){ num=0; bookname[0] =0;publicname[0] =0; name[0] =0;}char * Getbookname(void) { return bookname ;}long Getnum(void ) { return num;} C++面向对象程序设计 实验指导void Setdata(long , char *,char *,char *);void Show(void );Book(long , char *,char *,char *);};void Book::Setdata(long nu , char *bn,char *p,char *n){num = nu; strcpy(bookname,bn);strcpy(publicname,p); strcpy(name,n);}void Book::Show(void ){cout>f;switch(f){case 1: cout>bn;file1.open("book.dat",ios::in | ios::binary);//按读方式打开文件while(!file1.eof() ){int n;file1.read((char *)&b1,sizeof(Book));实验 6 标准设备与文件流的输入输出n=file1.gcount();if(n==sizeof(Book)){if(strcmp(b1.Getbookname(),bn)==0) //显示书的信息b1.Show();}}file1.close();break;case 2:cout>nu;cout>bn;cout>pn;cout>na;b1.Setdata(nu,bn,pn,na);file3.open("book.dat",ios::app|ios::binary);//增补方式打开文件file3.write((char*)&b1,sizeof(b1));file3.close();break;default: flag = 'n';}}}⑵上机要求修改程序增加按出版社、作者。

      从文件中查找书名,输出同一出版社出版的所有书名,按列表的格式输出文件中的所有书名等⑶写出实验报告2.上机实验题二自定义一个描述人的基本信息的类,至少包括的数据成员:姓名,单位,出生日期⑴分析用友元函数重载重载提取和插入运算符,实现对象的输入和输出⑵上机要求编制一个完整的程序⑶写出实验报告6.3 项目选做用 C++提供的集成环境或使用其它的纯文本编辑工具,把若干个实数输入到文本文件“DATA.TXT”中,设计一个程序对该文件中的数据进行处理:统计该文件中的实数个数、求出这些数的平均值和均方差,按每行五个数据输出文件中的所有数据。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.