c++排序和写文本文件

输入形式,正整数n和n个正整数
输出形式,文本文件result·txt,保存递增排序好的n个数,每个占4位
样例输入,5 1 3 2 5 4
阳历输出,1 2 3 4 5

如下:

#include <iostream>
#include <fstream>
using namespace std;


int main()
{
    int i,j,n;
    cin >> n;
    int *p= new int[n];
    ofstream os("result.txt");
    for(i=0;i<n;i++)
        cin >> p[i];
    //排序
    for (i=0;i<n-1;i++)
    {
        for (j=0;j<n-i-1;j++)
        {
            if(p[j]>p[j+1])
            {
                int t = p[j];
                p[j]=p[j+1];
                p[j+1]=t;
            }
        }
    }
    //写入
    for(i=0;i<n;i++)
    {
        if(i<n-1)
            os << p[i]<<" ";
        else
            os << p[i];
    }
    os.close();
    delete[] p;
    p=0;
    return 0;
}

用fopen打开文件,fprintf格式化