#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
for(int i = 0;i<10;i++){
srand(time(NULL));
int num = rand();
cout<<num<<endl;
}
return 0;
}
结果
1.png
例如上面所示,将srand()函数放在for循环里面,每次rand()生成的随机数都是一样的,这并是因为计算机运行很快,造成每次time产生的种子都是一样的(time的时间精度较低,只有55ms),所以得到的随机数也是一样的,所以要把srand()放在循环外面.
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
srand(time(NULL));
for(int i = 0;i<10;i++){
int num = rand();
cout<<num<<endl;
}
return 0;
}
结果
2.png
这样就可以了。
网友评论