在给定的一组数里面,随机抽取其中的一个数。

lw8601100 2010-10-04 02:03:21
比如现在有一组数 5,58,12,47,69,57 没有规律的。每次从其中随机抽取一个出来。不能有重复的。
...全文
209 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
ysz89757 2010-10-04
  • 打赏
  • 举报
回复
学习了
KeepSayingNo 2010-10-04
  • 打赏
  • 举报
回复
你这貌似是想写个抽奖的程序,其实你在随机选取了之后把那个选过的数去掉就OK了,下次随机选就不会重复了。
wuyq11 2010-10-04
  • 打赏
  • 举报
回复
from c in arr
wuyq11 2010-10-04
  • 打赏
  • 举报
回复
int[] arr= new int[] { 1, 2, 3, 4, 5,... };
var q = (from c in abc
orderby Guid.NewGuid()
select c).Take(20);
wuyq11 2010-10-04
  • 打赏
  • 举报
回复
Random r = new Random(Guid.NewGuid().GetHashCode());
string[] arr = { 1,2,4,5,36,7,8}
List<int> lst=new L;ist<int>();
for(int i=0;i<20;i++)
{
lst.Add(r.Next(0, arr.Length));
}
linq arr.orderBy(a=> Guid.NewGuid()).Take(20)
wanghui0380 2010-10-04
  • 打赏
  • 举报
回复
linq
var res=list.orderBy(c=> Guid.NewGuid()).take(20)
lw8601100 2010-10-04
  • 打赏
  • 举报
回复
可能我没说得具体,那么现在有无规律的100个数,那么我现在随机从中抽取20个出来,如果说把它排了序,在从头到尾抽失去意义了。就是要随机乱抽。
wanghui0380 2010-10-04
  • 打赏
  • 举报
回复
[Quote=引用楼主 lw8601100 的回复:]
比如现在有一组数 5,58,12,47,69,57 没有规律的。每次从其中随机抽取一个出来。不能有重复的。
[/Quote]

每次从其中随机抽取一个出来。不能有重复的-------病句啊
ZengHD 2010-10-04
  • 打赏
  • 举报
回复
        private void button1_Click(object sender, EventArgs e)
{
Random r = new Random(Guid.NewGuid().GetHashCode());
string[] arr = { "2","5","7","1","9","4"};

foreach (string s in arr)
{
int index = r.Next(0, arr.Length);
string strTemp = arr[index];
arr[index] = arr[0];
arr[0] = strTemp;
}

foreach (string s in arr)
{
MessageBox.Show(s);
}
}
q107770540 2010-10-04
  • 打赏
  • 举报
回复
将已取出的数字放在另一数组内
每次取出值 判断是否包含在此数据中
如果包含重取
老Key 2010-10-04
  • 打赏
  • 举报
回复
随用随机数,去数组长度的随机数,然后将取出来的存放一起,判断本次取出来的和以前取出来是时候一直即可
ZengHD 2010-10-04
  • 打赏
  • 举报
回复
把数组随机排序,然后重头取到尾

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧