文件的输入输出

自定义三个text 型磁盘文件f1.txt、f2.txt 和f3.txt,并对它们进行指定的读写操作:先往f1.txt 以及f2.txt 中写出数据,之后再将它们读入而形成f3.txt 文件。

实验要求:

通过使用运算符“>>”和“<<”,对自定义的text 型磁盘文件进行如下的指定操作。

(1) 对i=1,2,3,...,15,计算d=i*i+0.5,并将15 个结果写出到自定义的text型磁盘文件f1.txt 中(注意,f1 文件中的数据从小到大有序);

(2) 对i=1,2,3,...,10,计算d=10*i+0.5,并将10 个结果写出到自定义的text型磁盘文件f2.txt 中,而后再写出第11 个数:357.9(注意,f2 文件中的数据也从小到大有序);

(3) 读出文件f1.txt 以及f2.txt 中的数据,用来形成text 型磁盘文件f3.txt,但要求存放于f3.txt 中的数据仍然是有序的(按照从小到大的顺序);

(4) 从头到尾读出f3.txt 中的数据显示在屏幕上。

2、实验仪器、设备或软件

计算机一台,vc6.0

二、实验过程(实验步骤、记录、数据、)

 

3、运行结果:

 

#include 

using namespace std;

void fun1()

{

  ofstream outfile1("f1.txt");

  ofstream outfile2("f2.txt");

  for(int i=0;i<15;i++)

outfile1<<i*i+0.5<<"  ";

for(i=0;i<10;i++)

outfile2<<10*i+0.5<<"  ";

outfile2<<"357.9"<<"  ";

outfile1.close();

outfile2.close();

}

void fun2()

{

double k=0,arr[25],temp;

ifstream infile1("f1.txt");

ifstream infile2("f2.txt");

ofstream outfile3("f3.txt",ios::out);

if(!outfile3)

{

cout<<"open error!!!"<<endl;

exit(1);

}

for(int i=0;i<15;i++)

infile1>>arr[i];

for(int j=0;j<10;j++)

infile2>>arr[i+j];

for(i=0;i<25;i++)

for(int j=0;j<25-i;j++)

if(arr[j]>arr[j+1])

{

temp=arr[i];

arr[i]=arr[i+1];

arr[i+1]=temp;

}

for(i=0;i<26;i++)

outfile3<<arr[i]<<"  ";

infile1.close();

infile2.close();

outfile3.close();

for(i=0;i<25;i++)

{

if(i%5==0) cout<<endl;

cout<<arr[i]<<"  ";

}

}

int main()

{

fun1();

fun2();   

cout<<endl;

return 0;

}

 

 

 

 

posted on 2012-12-07 23:25  木本  阅读(322)  评论(0编辑  收藏  举报

导航