源代码如下:
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <iomanip>
using namespace std;
void think(ifstream & a,ofstream & b)
{
int fri,sec,thr;
float sum,ave;
int ii,num;
b.open("test.data");
if (b.fail())
{
cout << "output fail/n";
exit(1);
}
for(int i=1;i<=100;i++)
{
b << i << "/n";
}
b.close();
a.open("test.data");
if (a.fail())
{
cout << "input fail/n";
exit(1);
}
sum=0;
num=0;
while(! a.eof())
{
a >> ii;
sum=sum+ii;
num++;
}
ave=sum/num;
a.close();
cout << "the average data is /t" << ave << "/n";
}
int main()
{
ifstream input;
ofstream output;
think(input,output);
}
这里将流用作参数,但应注意的一点是当将流变量用作参数的时候,参数的传递方式必须用传引用调用。