| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 530 人关注过本帖
标题:随机数问题
只看楼主 加入收藏
guoke0531
Rank: 1
来 自:连云港
等 级:新手上路
帖 子:10
专家分:0
注 册:2010-3-30
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
随机数问题
如何生成10个互不相同的随机数,写入数组R中,必须用C#写的
搜索更多相关主题的帖子: 随机数 
2010-05-29 15:57
apull
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:三体星系
等 级:版主
威 望:216
帖 子:1506
专家分:9241
注 册:2010-3-16
收藏
得分:0 
定义个数组,然后循环中生成一个随机数,在用循环从元素0开始检查有没有重复的,如果有,重新生成一个,否则继续。
2010-05-29 16:06
封闭
Rank: 9Rank: 9Rank: 9
来 自:广东省汕头市
等 级:蜘蛛侠
威 望:1
帖 子:501
专家分:1084
注 册:2007-9-14
收藏
得分:20 
程序代码:
            int[] number = new int[10];        //定义一个数组
            bool isEquals;                     //判断该值是否与数组中的值相等
            int nowNumber = 0;                 //记录当前数组的下标
            while (true)
            {
                if (nowNumber == 10)            //如果大于数组的长度,则退出
                    break;
                isEquals = false;           
                Random r = new Random();
                int random = r.Next(50);        //产生随机数
                for (int i = 0; i < number.Length; i++)
                {
                    //判断产生的随机数是否与数组中的数相等,如果有相等,则记录isEquals为true
                    if (number[i] == random)
                    {
                        isEquals = true;
                        break;
                    }
                }
                //如果不与数组中的某个值相等,则将该值放进数组中
                if (!isEquals)
                {
                    number[nowNumber++] = random;
                }
            }
            for (int i = 0; i < 10; i++)
            {
                Console.WriteLine(number[i]);
            }

这个还有一个小缺点,就是当产生随机数为0的时候,将不被放进数组中,所以这个问题就留给LZ自己解决了!
2010-05-29 20:32
快速回复:随机数问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.034480 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved