电子信息工程学院2014级《C++语言程序设计》实验报告姓名缪佳能学号22201433210187实验项目C++的流类库与输入输出实验目的和内容(1)掌握C++格式化的输入输出方法(2)掌握重载运算符“”和“”的方法(3)掌握磁盘文件的输入输出方法程序分和设计4.编写一个程序,将两个文本文件连接成一个文件,然后将此文件中所有小写字母转换成大写字母,并打印出来#includeiostream#includefstream//用与输入输出文件的流类库usingnamespacestd;intmain(){fstreamfile1,file2,file3,file4;//四个文件charfilename1[10],filename2[10],filename3[10],ch;//文件的字符只有10个cout输入源文件1名:;//输入输出文件名cinfilename1;cout输入源文件2名:;cinfilename2;cout输入目标文件名:;cinfilename3;file1.open(filename1,ios::in);//打开文件file2.open(filename2,ios::in);file3.open(filename3,ios::out);cout文件1filename1内容为abc;//输出文件的内容while((ch=file1.get())!=EOF)//循环比较文件内的字符与ch比较输出{coutch;file3.put(ch);}cout\n文件filename2内容为:ABC;while((ch=file2.get())!=EOF)//同上{coutch;file3.put(ch);}file3.close();file3.open(filename3,ios::in);电子信息工程学院2014级《C++语言程序设计》实验报告cout\n文件filename3(filename1'+'filename2)内容是:abcABC;while((ch=file3.get())!=EOF)coutch;coutendl;file3.close();file4.open(filename3,ios::in);cout文件filename3中的小写字母转换成大写字母后是:ABCABC;while((ch=file4.get())!=EOF)coutchar(toupper(ch));coutendl;file1.close();file2.close();file4.close();system(pause);return0;}程序设计和分析:本题中用了includefstream是#include是C++的预编译语句,作用是包含对应的文件,在这里是包含C++的STL头文件fstream。在包含了这个文件后,就可以使用fstream中定义的类及各种成员函数了。fstream是C++STL中对文件操作的合集,包含了常用的所有文件操作。本题用了file.open\file.close\file.get\file.put等语句,file.open拿来打开文件,put用来输出一个字符、get的功能与提取运算符“”类似,主要是get读入时包括空白符而另一个没有。3.重载运算符“”和””,使其能够输入一件商品的信息和输出这件商品的信息、商品的信息有编码、商品名和价格。#includeiostream.hclassMerchandise{//定义一个商品类public:Merchandise();~Merchandise();friendistream&operator(istream&in,Merchandise&s);//友元重载提取函数运算friendostream&operator(ostream&out,Merchandise&s);private:intno;char*name;doubleprice;};Merchandise::Merchandise(){name=newchar[20];}电子信息工程学院2014级《C++语言程序设计》实验报告Merchandise::~Merchandise(){delete[]name;}istream&operator(istream&in,Merchandise&s)//友元重载提取运算函数的编译{cout商品信息:endl;cout商品编号:;ins.no;cout商品名称:;ins.name;cout商品价格;ins.price;returnin;}ostream&operator(ostream&out,Merchandise&s)//重载插入运算函数的编译{cout商品信息:endl;cout商品编号:;outs.no;coutendl商品名称:;outs.name;coutendl商品价格:;outs.price;coutendl;returnout;}intmain(){Merchandisemer;cinmer;coutmer;return0;}程序分析和设计:本题用了istream、ostream通用输入输出流和其他输入输出流的基类运行结果电子信息工程学院2014级《C++语言程序设计》实验报告4.3.实验总结本次实验学会了用户自定义类的输入输出的方法,以及文件的输入输出方式,还有重载运算提取符的应用等。第七章那些istream&operator等的应用。见识和了解了一些常用的I/O流类库比如ios、ostream、iostream、ifstream等。学到了很多!