#include <iostream>
#include <fstream>
#include <vector>
using namespace std ;
void Order(vector<int>& data)
{
int count = data.size() ;
int tag = false ;//设置标志,如果要是有序的,只需比较一趟,就可以了提高了效率
for (int i = 0 ; i < count; ++i)
{
for (int j = 0 ; j < count - i - 1; ++j)
{
if (data[j] > data[j + 1])
{
tag = true ;
int temp ;
temp = data[j] ;
data[j] = data[j + 1] ;
data[j + 1] = temp ;
}
}
if (!tag)
break ;
}
}
int main()
{
vector<int> data ;
ifstream in("c:\\data.txt") ;
if (!in)
{
cout << "file error" ;
exit(1) ;
}
int temp ;
while(!in.eof())
{
in>>temp ;
data.push_back(temp) ;
}
in.close() ;
Order(data) ;
ofstream out ("c:\\result.txt") ;
if (!out)
{
cout << "file error" ;
exit(1) ;
}
for (int i = 0 ; i < data.size() ; ++i)
out << data[i] << " " ;
out.close() ;
system("pause") ;
return 0 ;
}
读取一个文件然后将文件中的数据排序然后输出到另外一个文件中(冒泡排序)
最新推荐文章于 2024-07-08 13:32:49 发布