/* (程序頭部註釋開始)
* 程序的版權和版本聲明部分
* Copyright (c) 2011, 煙臺大學計算機學院學生
* All rights reserved.
* 文件名稱:定義一個靜態成員方法,使用Random實現從一組數中隨機抽取n個不重複的數。
* 作 者: 雷恆鑫
* 完成日期: 2012 年 10 月 22 日
* 版 本 號: V1.0
* 對任務及求解方法的描述部分
* 輸入描述:假定已經獲取題庫中的試題號,並存放在數組arrayKT中。
* 輸入描述:例如, int [] arrayKT={10,13,18,19,20,22,30,31...}。
* 輸入描述:定義一個靜態成員方法,該方法實現從上述數組中隨機抽出給定數量(n,1<=n<=arrayKT.Length)的考題,
* 輸入描述:並組成一個考題字符串。比如,隨機從arrayKT中抽取5題組成考題字符串:“10,18,20,22,30”。
* 輸入描述:要求,組成考題字符串中考題不重複,且一定在數組中存在。
* 輸入描述:自行設計程序驗證上述方法正確性。
* 問題描述:
* 程序輸出:
* 程序頭部的註釋結束
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
namespace nine_week
{
class Program
{
static void Main(string[] args)
{
int [] arrayKT={10,13,18,19,20,22,30,31};
getKTH(5, arrayKT);
Console.ReadKey();
}
public static string getKTH(int n,params int [] arrayKT)
{
//提示:主體中使用random類
Random rd = new Random();
Console.Write("從題庫中抽出的題爲:");
for (int j = 0; j < n; j++)
{
int index = rd.Next(0, arrayKT.Length);
Thread.Sleep(1000); //延時的辦法的方法來避免Random快速連續產生相同隨機數
Console.Write(" {0}",arrayKT[index]);
}
return "";
}
}
}
運行結果: