。net 获取 1----100000 随机数分散不开 怎么办?static Random rs;
protected void Page_Load(object sender, EventArgs e)
{
if (rs == null)
{
rs = new Random();
}
int aaa = (int)(rs.NextDouble() * 100000);
}
protected void Page_Load(object sender, EventArgs e)
{
if (rs == null)
{
rs = new Random();
}
int aaa = (int)(rs.NextDouble() * 100000);
}
int i = r.next(1,100000);
srand(time(NULL));
int x = rand();
private static string CreateRandomText()
{
randomCount++; Guid guid = Guid.NewGuid( ); int key1 = guid.GetHashCode( );
int key2 = unchecked( (int)DateTime.Now.Ticks ); int seed = unchecked( key1 * key2 * randomCount );
Random rand = new Random( seed ); int n = rand.Next( 100000, 999999 );
string sn = n.ToString( );
for ( int j = 0 ; j < 6 ; j++ )
{
char ch = Convert.ToChar( rand.Next( 65, 90 ) );
if ( ch == 'E' || ch == 'O' || ch == 'S' || ch == 'B' || ch == 'I'
|| ch == 'L' || ch == 'D' || ch == 'C' || ch == 'G' )
{
break;
}
sn = sn.Replace( rand.Next( 1, 9 ).ToString( ), ch.ToString( ) );
}
sn = sn.Replace( "0", rand.Next( 2, 9 ).ToString( ) );
sn = sn.Replace( "1", rand.Next( 2, 9 ).ToString( ) );
sn = sn.Replace( "5", rand.Next( 6, 9 ).ToString( ) ); return sn;
}
{ Random rs = new Random(); int aaa = rs.Next(1,100001);
}
{
int j;
int[] b=new int[Number];
Random r=new Random();
for(j=0;j<Number;j++)
{
int i=r.Next(minNum,maxNum+1);
int num=0;
for(int k=0;k<j;k++)
{
if(b[k]==i)
{
num=num+1;
}
}
if(num==0 )
{
b[j]=i;
}
else
{
j=j-1;
}
}
return b;
}
或者
protected void Page_Load(object sender, EventArgs e)
{ Random rs = new Random(); int aaa = rs.Next(1,100001);
}
string NumStr = null;
int RadNum = r.Next(999999);
if (RadNum.ToString().Length != 6)
{ for (int j = 1; j <= 6 - RadNum.ToString().Length; j++)
{
NumStr += "0";
}
NumStr += RadNum.ToString();
}
else
{
NumStr = RadNum.ToString();
}
string RandomCode = NumStr;这个应该可以
int num = rnd.Next(1, 100000);
//string number = num.ToString().PadLeft(6, '0');
int i=rd.Next(1,1000001);这是获得一个1-1000001的随机数楼下的,你觉得你猜它下面一个随机数会是多少
猜对了我给你500W
for (int j = 0; j < 20; j++)
{
Random rd = new Random();
int i = rd.Next(1, 3100001);
abc[j] = i;
}
for (int j = 0; j < 20; j++)
{
Console.WriteLine(abc[j].ToString());
}理论上,这个程序应该是输出20个不同的随机数,但是直接执行的时候,输出的是20个一样的数,如果我进行调试,输出的却是20个不同的数
这是为什么?
Random rd = new Random();应该放在循环外