c++ rand随机数生成(随机种子设置)

需求:每次初始化不一样的随机数spa

一、默认code

//这样用每次都会产生相同数字
#include <stdlib.h>
#include <stdio.h>
#define N 10
int main(void) {
    int i;
    for (i = 0; i < N; i++) printf("%d", rand()%100+1);
    return 0;
}

二、随机种子blog

//这样用就不同了
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#define N 10
int main(void) {
    int i;
    srand(time(NULL)); /*根据当前时间设置“随机数种子”*/
    for (i = 0; i < N; i++) printf("%d", rand()%100+1);
    return 0;
}

三、随机种子-固定io

 1 //这样用会产生一样的数字
 2 #include <stdlib.h>
 3 #include <stdio.h>
 4 #define N 10
 5 int main(void) {
 6     int i;
 7     srand(20); /*随便一个数字,只要是不变的*/
 8     for (i = 0; i < N; i++) printf("%d\n", rand()%100+1);
 9     printf("\n");
10     srand(20); /*和上面的数字同样*/
11     for (i = 0; i < N; i++) printf("%d\n", rand()%100+1);
12     return 0;
13 }
相关文章
相关标签/搜索