1. 程式人生 > >C#之一維陣列,氣泡排序,輸入輸出案例

C#之一維陣列,氣泡排序,輸入輸出案例

using System;
namespace test
{
    class Program
    {
        public void CreateList(ref int[] a)    //建立順序表
        {
            int n = a.Length;   //獲取陣列的長度
            for (int i = 0; i < n; i++)   //迴圈輸入整數元素
            {
                a[i] = int.Parse(Console.ReadLine()); 
            }
            Console.WriteLine(Console.ReadLine().GetType());  //可以看出Console.ReadLine()讀取後型別為System.String
            Console.WriteLine(Console.Read().GetType());   //可以看出Console.Read()讀取後的型別為System.Int32
        }
        public void OutPutList(int[] a)     //輸出順序表
        {
            int n = a.Length;
            foreach (int i in a)
            {
                //Console.WriteLine(i);   //一行一個數字
                Console.Write(i);  //所有的數字全在一行
            }
            Console.WriteLine();
        }
        public void OrderList(ref int[] a)    //將順序表按照氣泡排序演算法排序
        {
           
            for (int i = 0; i < a.Length; i++)
            {
                for(int k=0;k<a.Length-i-1;k++)
                {
                    if (a[k] > a[k + 1])      //按照從小到大的順序排列
                    {
                       int temp;
                       temp = a[k];
                       a[k] = a[k + 1];
                       a[k + 1] = temp;
                    }
                }
            }
        }
        static void Main()
        {
            Program p = new Program();
            int[] a = new int[10];
            Console.WriteLine("請輸入一個整數陣列");
            p.CreateList(ref a);
            Console.WriteLine("輸入的內容為:");
            p.OutPutList(a);
            p.OrderList(ref a);
            Console.WriteLine("排序後的內容為");
            p.OutPutList(a);
        }
    }
}