C#随机函数怎么用? 我想输出结果为2个数字选一个

如题所述

楼上说的是 Sql中的随机数
C#中的随机数是Random 类
使用方法很简单,比如我要生成 1~100之间的随机数只要这样:
Random r = new Random();
int i = r.Next(1,100);//即可
但是你的问题(我想输出结果为2个数字选一个),我确实没有听明白
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-01
随机函数:rand()
在查询分析器中执行:select rand(),可以看到结果会是类似于这样的随机小数:0.36361513486289558,像这样的小数在实际应用中用得不多,一般要取随机数都会取随机整数。那就看下面的两种随机取整数的方法:

1、
A:
select floor(rand()*N) ---生成的数是这样的:12.0

B:
select cast( floor(rand()*N) as int) ---生成的数是这样的:12

2、
A:select ceiling(rand() * N) ---生成的数是这样的:12.0

B:select cast(ceiling(rand() * N) as int) ---生成的数是这样的:12

其中里面的N是一个你指定的整数,如100,可以看出,两种方法的A方法是带有.0这个的小数的,而B方法就是真正的整数了。
大致一看,这两种方法没什么区别,真的没区别?其实是有一点的,那就是他们的生成随机数的范围:
方法1的数字范围:0至N-1之间,如cast( floor(rand()*100) as int)就会生成0至99之间任一整数
方法2的数字范围:1至N之间,如cast(ceiling(rand() * 100) as int)就会生成1至100之间任一整数
对于这个区别,看SQL的联机帮助就知了
第2个回答  2011-11-01
double GetRandomItem(IList<double> rs)
{
return rs[Math.Floor(new Random().Next(0,1) * rs.Count)];
}