永发信息网

C++ 怎么我用 rand()产生的随机数都是同一个?

答案:5  悬赏:0  手机版
解决时间 2021-04-24 10:23
  • 提问者网友:相思似海深
  • 2021-04-23 09:35
每次运行都产生同一个随机数
最佳答案
  • 五星知识达人网友:冷風如刀
  • 2021-04-23 10:04
#include <time.h> // time()
#include <stdlib.h> // srand(), rand()

srand( time( 0 ) ); // 在使用rand()前加上这个设置随机化种子
全部回答
  • 1楼网友:笑迎怀羞
  • 2021-04-23 13:24

你应该将代码放在这个位置,别人帮你找错~~~

你可以添加#Include<time.h>这样的头文件看一下,问题很可能就在这。

  • 2楼网友:时间的尘埃
  • 2021-04-23 13:02

这样也可以

在调用随机数函数之前加上srand((unsigned)GetCurrentTime());

同时包含头文件include <windows>

  • 3楼网友:痴妹与他
  • 2021-04-23 12:06

需要设置随机种子

下面的是我写的程序中的一部分

#include <time.h> int main() { int rand(); srand((int)time(0)); //用来设置rand()产生随机数时的随机数种子 m=1+(int)(10.0*rand()/(RAND_MAX+1.0));//随即产生1-10之间的一个数

}

  • 4楼网友:一叶十三刺
  • 2021-04-23 11:42

包含下#include <ctime>头文件.

然后在程序开始时添加下面这句代码.

srand((unsigned) time(NULL));

让随机数根据时间种子生成.

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯