1. 在C++中,常用rand()来生成随机数,但这样生成的随机数是伪随机的,由于seed一样,两次执行程序生成的随机数也是一样的。这时候需要用srand()函数来制定不一样的seed,一般采用时间作为seed来作为随机种子,随后再调用rand()函数生成的随机数便会每次不一样。
#include <time.h>
srand((unsigned)time(NULL));
int num = rand();
2. 想要生成一个a~b之间的一个随机数,可以如下:
int num = a + rand() % (b-a+1);
3. rand()和srand()的函数原型如下:
int rand(void);
void srand(unsigned seed);