标题:求助!如何使所取随机数互异
只看楼主
huanxueer
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-6-15
 问题点数:0 回复次数:15 
求助!如何使所取随机数互异
想用随机函数取K个互不相等的整数放入数组t[K]中。程序片段如下:
    srand((unsigned)time( NULL ));
    for(i=0;i<K;i++)//随机取K个样本放入K类中
    {
        t[i]=rand()%N+1;
                   printf("%d",t[i]);
    
    }
打印结果有时候会有相同元素。如何改造才能使数组元素互异?
搜索更多相关主题的帖子: NULL 整数 互异 随机数 
2008-06-19 14:48
爱喝牛奶的猫咪
Rank: 1
来 自:QQ群46520219
等 级:禁止访问
帖 子:513
专家分:0
注 册:2008-6-16
得分:0 
预初始化一个内容为1-n的数组,然后随机打乱,再取前k个



" border="0" />[color=white]
2008-06-19 14:52
huanxueer
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-6-15
得分:0 
不好意思,我想再请教一下怎么打乱呢?
2008-06-19 15:10
卖菜的鸟
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2008-6-18
得分:0 
for(i=0;i<K;i++)//随机取K个样本放入K类中
    {
        srand((unsigned)time( NULL ));
        t[i]=rand()%N+1;
                   printf("%d",t[i]);
   
    }
这样呢
2008-06-19 15:10
卖菜的鸟
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2008-6-18
得分:0 
要是K 比较大 好象效率超低也 这样做
2008-06-19 15:11
huanxueer
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-6-15
得分:0 
我试过了,这样做取的数都是一样的
2008-06-19 15:16
爱喝牛奶的猫咪
Rank: 1
来 自:QQ群46520219
等 级:禁止访问
帖 子:513
专家分:0
注 册:2008-6-16
得分:0 
任意交换两个,交换足够多不就是打乱的一种吗



" border="0" />[color=white]
2008-06-19 15:24
huanxueer
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-6-15
得分:0 
好办法。万分感激!
2008-06-19 15:29
卖菜的鸟
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2008-6-18
得分:0 
我还没懂
2008-06-19 15:31
界水乘风
该用户已被删除
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2008-06-19 15:37



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-220018-1-1.html




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

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