文件操作 完成从一个文件中读入数据排序后输出到另一个文件

3170阅读 0评论2013-04-05 tjnulql
分类:C/C++


点击(此处)折叠或打开

  1. #include<iostream>
  2. #include<fstream>
  3. #include<vector>
  4. #include<stdlib.h>
  5. using namespace std;

  6. void Order(vector<int>& data) //bubble sort
  7. {
  8. int count = data.size() ;
  9. int tag = false ; // 设置是否需要继续冒泡的标志位
  10. for ( int i = 0 ; i < count ; i++)
  11. {
  12. for ( int j = 0 ; j < count - i - 1 ; j++)
  13. {
  14. if ( data[j] > data[j+1])
  15. {
  16. tag = true ;
  17. int temp = data[j] ;
  18. data[j] = data[j+1] ;
  19. data[j+1] = temp ;
  20. }
  21. }
  22. if ( !tag )
  23. break ;
  24. }
  25. }

  26. int main( void )
  27. {
  28. vector<int>data;
  29. ifstream in("c:/data.txt");
  30. if ( !in)
  31. {
  32. cout<<"file error!";
  33. exit(1);
  34. }
  35. int temp;
  36. while (!in.eof())
  37. {
  38. in>>temp;
  39. data.push_back(temp);
  40. }
  41. in.close(); // 关闭输入文件流
  42. Order(data);
  43. ofstream out("c:/result.txt");
  44. if ( !out)
  45. {
  46. cout<<"file error!";
  47. exit(1);
  48. }
  49. for (int i = 0 ; i < data.size() ; i++)
  50. out<<data[i]<<" ";
  51. out.close(); // 关闭输出文件流
  52. return 0;
  53. }

上一篇:_onexit函数的使用 完成主函数执行完毕后再执行一段程序
下一篇:没有了