RandomRange(int M,int N) //返回一范围内的随机数字
{
int rand_num = 0;
srand((unsigned int)time(0));
rand_num = M + rand()%(N-M+1);
return rand_num;
}cout<<RandomRange(1,4)<<endl;
cout<<RandomRange(1,4)<<endl;
cout<<RandomRange(1,4)<<endl;为什么输出的总是相同的?比如全是4,或全是1.谢谢
{
int rand_num = 0;
srand((unsigned int)time(0));
rand_num = M + rand()%(N-M+1);
return rand_num;
}cout<<RandomRange(1,4)<<endl;
cout<<RandomRange(1,4)<<endl;
cout<<RandomRange(1,4)<<endl;为什么输出的总是相同的?比如全是4,或全是1.谢谢
你在一秒种内输出了三个同样种子的第一个随机数,不一样是不可能的srand通常调用一次
或者确保每次种子不一样,需要考虑到一秒钟计算机能做很多事情