回覆列表
  • 1 # 使用者3456175603979

    隨機產生陣列的下標,不直接產生數,我舉隨機產生0~9的隨機數

    int[] num = new int[10];

    int[] newNum = new int[10];

    int i,r = 9;

    int n;

    int tmp;

    Random rand = new Random();

    for (i = 0; i

    {

    num[i] = i;

    }

    ///這個演算法只需要迴圈你的數範圍的次數而已

    for (i = 0; i

    {

    n = rand.Next(0, r);//隨機產生一個0~9之間的數,r的初始值是9

    newNum[i] = num[n];//把產生的隨機數當成num的下標賦給newNum陣列

    tmp = num[n];//然後把num[n]和它最後一個數交換(num[r]),這是避免重複

    num[n] = num[r];

    num[r] = tmp;

    r--;//自減,下次產生的隨機數就可以從0到8了,

    }

    for (i = 0; i

    {

    Console.Write("{0} ", newNum[i]);

    }

    Console.Read();

  • 中秋節和大豐收的關聯?
  • 熵增定律告訴我們,宇宙終將湮滅,人類能夠擺脫宿命嗎?