我正在尝试使用自定义函数来简化随机数的生成。它只能工作50%,因为它将生成一个随机数,但是在循环中使用时,它会一次又一次地生成相同的随机数。
我得到一个结果,第一个数字不同,但随后的9个相同。我无法重现这一结果。
我希望每个数字都完全不同。
代码:
#include <iostream>
#include <cstdlib>
#include <ctime>
int randomNumber(int x, int y) {
srand(time(0));
return x + (rand() % y);
}
int main() {
for (int i = 0; i <= 10; i++) {
std::cout << randomNumber(1, 100) << std::endl;
}
return 0;
}
可能的结果:
37
37
37
37
37
37
37
37
37
37
所需结果:
1
47
32
56
82
// and so on...