c#中怎么获得0-9之间的随机数 Random rn = new Random(); for (int i = 0; i < 10; i++) { Console.WriteLine(rn.Next(10)); } 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 int[] myint = new int[10] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; int temp=0,k=0; for (int i = 0; i < 2; i++) { for (int j = 0; j < myint.Length; j++) { k = rn.Next(10 - j) + j; temp = myint[j]; myint[j] = myint[k]; myint[k] = temp; } } for (int i = 0; i < 10; i++) { Console.WriteLine(myint [i]); } 参考这个http://www.cnblogs.com/zhjzwl/archive/2009/03/02/1401578.html 具体的思路是:你先将第一个随即得到的数放到一个list中(这个表不会很大,因为最多才9个数字),然后每次得到一个随机数就和list表中的数据对比,如果没有一样的值就取出,并且放在list表中,否则不处理。 可以使用Random类来生成一个小于某个数字的非负随机数,比如:Random rnd = new Random();int iNum1 = rnd.Next(10);iNum1生成0~9之间的任意一个数字。要生成一组不重复的,存在一个数组中循环取吧! Random rn = new Random(); int a=0; for (int i = 0; i < 10; i++) { a= rn.next(9); } Random rn = new Random(); int a=0; for (int i = 0; i < 10; i++) { a= rn.next(i); } int[] intArray = new int[10]; Random radnom = new Random(); for (int i = 0; i < intArray.Length; i++) //产生10个随机数 { int temp; if (i == 0) { intArray[i] = radnom.Next(0, 10); } #region 当i>=1时判断产生的随机数是否与前面i-1个随机数是否相等,如果相等则重新生成,直到不相等为止 else { temp = radnom.Next(0, 10); for (int j = 0; j < i; j++) { if (intArray[j] == temp) { temp = radnom.Next(0, 10); //重新产生随机数 intArray[i] = temp; j = -1; //使循环归零,重新判断新产生的随机数是否与前面i-1个随机数相等 } else { intArray[i] = temp; } } } #endregion } #region 输出随机数 StringBuilder stringBuilder = new StringBuilder(); for (int i = 0; i < intArray.Length; i++) { stringBuilder.Append(intArray[i].ToString()); stringBuilder.Append(" "); } Console.WriteLine(stringBuilder.ToString()); Console.Read(); #endregion Random rn = new Random(); rn.Next(10)就产生一个 通过Random ran=new Random()ran.Next(10)产生一个。。然后用个for循环来循环你要的个数然后在已经被循环的数字给他定义一个bool类型的。让他编程true然后如果当这个为true的时候这个数字就不在随机出现 另一种思路,对0-9排序,排序的依据是randome.g.int n = 9;//假设要9个var r = new Random();(from i in Enumerable.Range(0,10) // 0-9 orderby r.NextDouble() select i).Take(n).ToList().ForEach(Console.WriteLine); 怎么才能从数据库里提取一个数赋值给一个label控件 C#代码执行exe程序后,如何放到一个控件上显示?如panel C#的FTP上传函数问题 注册表 分辨率 输出字符串问题 winform问题,晕,搞了那么久 有没有.NET下的序列化工具包? 如何通过变量名获取类的实例,如:我输入A,则实例化A,输入B,则实例化B类 为什么找不到textbox的passwordchar属性呢? 第一次excel编程,那位仁兄给一份完整打开,写入,保存的代码或随便给点意见,都有分 输入字符串格式不正确?? 关于xtragrid
int temp=0,k=0;
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < myint.Length; j++)
{
k = rn.Next(10 - j) + j;
temp = myint[j];
myint[j] = myint[k];
myint[k] = temp;
}
}
for (int i = 0; i < 10; i++)
{
Console.WriteLine(myint [i]);
}
Random rnd = new Random();
int iNum1 = rnd.Next(10);
iNum1生成0~9之间的任意一个数字。要生成一组不重复的,存在一个数组中循环取吧!
int a=0;
for (int i = 0; i < 10; i++)
{
a= rn.next(9); }
int a=0;
for (int i = 0; i < 10; i++)
{
a= rn.next(i); }
Random radnom = new Random();
for (int i = 0; i < intArray.Length; i++) //产生10个随机数
{
int temp;
if (i == 0)
{
intArray[i] = radnom.Next(0, 10);
}
#region 当i>=1时判断产生的随机数是否与前面i-1个随机数是否相等,如果相等则重新生成,直到不相等为止
else
{
temp = radnom.Next(0, 10);
for (int j = 0; j < i; j++)
{
if (intArray[j] == temp)
{
temp = radnom.Next(0, 10); //重新产生随机数
intArray[i] = temp;
j = -1; //使循环归零,重新判断新产生的随机数是否与前面i-1个随机数相等
}
else
{
intArray[i] = temp;
}
}
}
#endregion
}
#region 输出随机数
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < intArray.Length; i++)
{
stringBuilder.Append(intArray[i].ToString());
stringBuilder.Append(" ");
}
Console.WriteLine(stringBuilder.ToString());
Console.Read();
#endregion
rn.Next(10)就产生一个
ran.Next(10)产生一个。。然后用个for循环来循环你要的个数然后在已经被循环的数字给他定义一个bool类型的。让他编程true然后如果当这个为true的时候这个数字就不在随机出现
e.g.
int n = 9;//假设要9个
var r = new Random();
(from i in Enumerable.Range(0,10) // 0-9
orderby r.NextDouble()
select i).Take(n).ToList().ForEach(Console.WriteLine);