相同和不同的随机数生成

时间:2013-05-18 13:03:29

标签: c++ random

我正在制作这个涉及生成随机数的游戏。我必须添加一个选项(在游戏结束时)重新启动同一个游戏或创建一个新游戏。如何生成相同和不同的随机数?

2 个答案:

答案 0 :(得分:4)

保存您在srand()中使用的种子以生成相同的随机数,根据time()初始化种子,每次都生成新的序列。

答案 1 :(得分:2)

/* srand example */
#include <stdio.h>      /* printf, NULL */
#include <stdlib.h>     /* srand, rand */
#include <time.h>       /* time */

int main ()
{
    printf ("First number: %d\n", rand()%100);
    srand (time(NULL));
    printf ("Random number: %d\n", rand()%100);
    srand (1);
    printf ("Again the first number: %d\n", rand()%100);

    return 0;
}

以上代码来自此处的srand示例:cplusplus.com

它显示了如何使用time()和srand()来获取随机数,以及如何再次检索已生成的数字。