24小时热门版块排行榜    

Znn3bq.jpeg
查看: 2584  |  回复: 2

ahuang1985

铁虫 (小有名气)

[求助] 求大家帮忙看个程序,C语言产生大于Rand_max(32767)个数的不重复的随机数

如题,下附我的程序;
但是运行i=32767后就停止了。 哪个高手帮帮忙哈, 多谢了!

#include
#include
#include
#include


int main(void)
{
    double Ci;
    int n,t=0,i=0,j=0,N;
    int b[100000];
    srand((unsigned)time(NULL));
    Ci=0.01;N=4025496;

    b[0]= (int)((double)(rand())/((double)(RAND_MAX)+1.0)*N);
        for (i=1;i<=(int)(N*Ci);i++)
        {
    Lab:b =(int)((double)(rand())/((double)(RAND_MAX)+1.0)*N);
for (j=0;j == b[j]) goto Lab;}

               printf("i=%d,%d\n",i,b);
         }
   printf("end";
        return 0;

}
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

锐利的碎片

木虫 (正式写手)

star watcher

【答案】应助回帖

感谢参与,应助指数 +1
c的rand用的lcg,rand_max就是伪随机数序列的周期.所以要大于rand_max只有换个更长周期的随机数发生器.
2楼2012-04-25 13:12:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

锐利的碎片

木虫 (正式写手)

star watcher

【答案】应助回帖

比如这个
CODE:
uint32_t xor128(void) {
  static uint32_t x = 123456789;
  static uint32_t y = 362436069;
  static uint32_t z = 521288629;
  static uint32_t w = 88675123;
  uint32_t t;

  t = x ^ (x << 11);
  x = y; y = z; z = w;
  return w = w ^ (w >> 19) ^ (t ^ (t >> 8));
}

3楼2012-04-25 13:16:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ahuang1985 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料工程085601,270求调剂 +35 @ASDF1234 2026-04-08 37/1850 2026-04-13 01:18 by 幸免 ..
[考研] 材料工程281还有调剂机会吗 +29 xaw. 2026-04-11 30/1500 2026-04-13 00:20 by 1005715100
[考研] 344 材料专业 求调剂211 无地域要求 +8 hualkop 2026-04-11 8/400 2026-04-12 22:24 by fqwang
[考研] 286求调剂 +26 Faune 2026-04-06 26/1300 2026-04-12 10:24 by lhj2009
[考研] 297求调剂 +17 ORCHID1 2026-04-10 18/900 2026-04-12 09:59 by zhouwenxian
[考研] 280求调剂 +13 wzzz王 2026-04-09 13/650 2026-04-12 00:31 by 勇攀高峰0126
[考研] 药学专硕调剂 +8 ? 一路生?花? 2026-04-10 10/500 2026-04-11 21:21 by zhouxiaoyu
[教师之家] 请问地理、遥感方面,可以做哪些横向项目啊,纵向完不成考核啊 +3 锦衣卫寒战 2026-04-07 5/250 2026-04-11 20:51 by 豫椒
[考研] 农学0904 312求调剂 +3 Say Never 2026-04-11 3/150 2026-04-11 17:22 by daydayup2005
[考研] 085501机械专硕 302分 不挑专业求调剂 +7 汪某. 2026-04-09 7/350 2026-04-11 14:37 by luhong1990
[考研] 调剂 +19 小张ZA 2026-04-10 20/1000 2026-04-10 22:08 by 猪会飞
[考研] 求调剂288 +6 ioodiiij 2026-04-10 8/400 2026-04-10 21:07 by zhouxiaoyu
[基金申请] 有爆料,一个青年教师卖房得400万,然后换了一个四青帽子 +9 babu2015 2026-04-08 9/450 2026-04-10 11:43 by 苏东坡二世
[考研] 347材料专硕求调剂 +19 zj8215216 2026-04-06 19/950 2026-04-10 09:36 by 690616278
[考研] 297求调剂 +27 GENJIOW 2026-04-07 30/1500 2026-04-09 23:20 by wolf97
[考研] 348求调剂 +3 candyyyi 2026-04-09 3/150 2026-04-09 17:20 by 段伟艳
[考研] 一志愿0807 数一英一 313 有没有二轮调剂 +11 emokidd 2026-04-08 12/600 2026-04-09 09:24 by wyf236
[考研] 机械专硕273请求调剂 +6 庚申壬申 2026-04-07 6/300 2026-04-08 22:41 by bljnqdcc
[考研] 071000生物学,一志愿深圳大学296分,求调剂 +12 TIckLw 2026-04-06 13/650 2026-04-07 20:34 by lijunpoly
[考研] 312求调剂 +4 LR6 2026-04-06 4/200 2026-04-07 08:42 by jp9609
信息提示
请填处理意见