怎么将控制台的输出保存到记事本

如何将控制台的输出保存到记事本?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;

namespace cs1
{
    class Program
    {
        static void Main(string[] args)
        {
            double[] x = new double[100];
            double[] y = new double[100];
            double[] z = new double[100];
            double total = 0;
            Random rd = new Random();
            for (int i = 0; i < 100; i++)
            {
                x[i] = rd.Next(0, 1000);
                y[i] = rd.Next(0, 1000);
                z[i] = rd.Next(0, 1000);
                total = total + z[i];
                Console.WriteLine("{0} {1} {2} {3}", i + 1, x[i], y[i], z[i]);
            }
            Console.WriteLine("平均高程为{0}", total / 100);
            Console.ReadLine();
        }
    }
}

------解决思路----------------------
前边加上

Console.SetOut(new StreamWriter(new FileStream("d:\\tmp\\a.txt", FileMode.Create))
                           {
                               AutoFlush = true
                           });