第1个回答 2010-11-10
定义一个随机数,定义一个for循环,定义一个键值对的数组,
for(int i=0;i<100;i++){}
然后将随机生成的值存入数组里面,从第二个开始数开始
将生成的数与数组里面的进行对比,如果重复就返回,i--,就ok了本回答被提问者采纳
第2个回答 2010-11-09
class Program
{
static void Main(string[] args)
{
int[] intArray = new int[100];//定义一个整形数组
bool[] assigned = new bool[100];//bool类型数组
Random rand = new Random();//实例化一个Random对象
for (int i = 0; i < 100; i++)
{
int intindex = 0;
bool foundInt = false;
while (foundInt == false)
{
intindex = rand.Next(100);
//if语句用来判断随产生地机数是否是第一次出现
if (assigned[intindex] == false)
foundInt = true;
}
//把第一次产生的随机数赋给数组
intArray[i ] = intindex ;
assigned[intindex] = true;
}
foreach (int i in intArray)
Console.Write(" {0}", i);//输出随机数
Console.ReadLine();//停顿一下
}
}
调试过了,行.
呵呵,希望对你有用.
第3个回答 2017-09-24
int[] intArr=new int[100];
ArrayList myList=new ArrayList();
Random rnd=new Random();
while(myList.Count<100)
{
int num=rnd.Next(1,101);
if(!myList.Contains(num))
myList.Add(num);
}
for(int i=0;i<100;i++)
intArr[i]=(int)myList[i];
第4个回答 2010-11-09
利用Hashtable。
Hashtable hashtable = new Hashtable();
Random rm = new Random();
int RmNum = 100;
for (int i = 0; hashtable.Count < RmNum; i++)
{
int nValue = rm.Next(100);
if (!hashtable.ContainsValue(nValue) && nValue != 0)//去重
{
hashtable.Add(nValue, nValue);
Console.WriteLine(nValue.ToString());
}
}本回答被网友采纳