我們在做能自動生成試卷的考試系統時
對於隨機數
我們可以使用兩種方式初始化一個隨機數發生器
第一種方法不指定隨機種子
Random ro = new Random();
第二種方法可以指定一個int型參數作為隨機種子
int iSeed=
Random ro = new Random(
long tick = DateTime
Random ran = new Random((int)(tick &
這樣可以保證
之後
不指定上下限的使用如下
int iResult;
iResult=ro
下面的代碼指定返回小於
int iResult;
int iUp=
iResult=ro
而下面這段代碼則指定返回值必須在
int iResult;
int iUp=
int iDown=
iResult=ro
除了Random
double dResult;
dResult=ro
但是用Random類生成題號
方法
int[] index = new int[
for (int i =
index = i;
Random r = new Random();
//用來保存隨機生成的不重復的
int[] result = new int[
int site =
int id;
for (int j =
{
id = r
//在隨機位置取出一個數
result[j] = index[id];
//最後一個數復制到當前位置
index[id] = index[site
//位置的下限減少一
site
}
方法
Hashtable hashtable = new Hashtable();
Random rm = new Random();
int RmNum =
for (int i =
{
int nValue = rm
if (!hashtable
{
hashtable
Console
}
}
方法
Random ra=new Random(unchecked((int)DateTime
int[] arrNum=new int[
int tmp=
int minValue=
int maxValue=
for (int i=
{
tmp=ra
arrNum=getNum(arrNum
}
public int getNum(int[] arrNum
{
int n=
while (n<=arrNum
{
if (arrNum[n]==tmp) //利用循環判斷是否有重復
{
tmp=ra
getNum(arrNum
}
n++;
}
return tmp;
}
From:http://tw.wingwit.com/Article/program/net/201311/15682.html