/* (程序头部注释开始)
* 程序的版权和版本声明部分
* 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 "";
}
}
}
运行结果: