文件中有一整数数组,要求排序后输出到另一文件(C++)

好久没有用到C++的容器方面了,再加上它的文件对象的处理也是一个陌生的点,这道题可以有效的复习一下子这些知识点,还有就是排序算法。

#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
void Sort(vector<int> &data)
{
	for(int i=1; i < data.size(); i++)
	{
		int tmp = data[i];
		for(int j=i-1; j>=0 && tmp < data[j]; j--)
			data[j+1] = data[j];
		data[j+1] = tmp;
	}
}

int main()
{
	void Sort(vector<int> &data);

	ifstream in("data.txt");
	if(!in)
	{
		cout << "file error" << endl;
		exit(1);
	}

	int tmp;
	vector<int> data;
	while(!in.eof())
	{
		in>>tmp;
		data.push_back(tmp);
	}
    
	Sort(data);

	ofstream out("result.txt");
	if(!out)
	{
		cout << "file error!" << endl;
		exit(1);
	}

	for(vector<int>::iterator it=data.begin(); it != data.end(); it++)
		out << *it << " ";

	out.close();
	return 0;
}


你可能感兴趣的:(文件中有一整数数组,要求排序后输出到另一文件(C++))