C++ 库有一个名为 rand() 的函数,每次调用该函数都将返回一个非负整数。要使用 rand() 函数,必须在程序中包含 头文件。
直接调用rand()即可:
示例代码:
#include
#include
using namespace std;
int main()
{
cout << rand() << endl;
return 0;
}
#include
#include
using namespace std;
int main()
{
cout << rand()%10 << endl; ///产生0-9之间的整数
cout << rand()%10+1 << endl; ///产生1-10之间的整数
return 0;
}
rand()%a产生的是0~(a-1)之间的整数,如果我想得到一个0-1之间的小数直接再除以a即可,这样获取的一定是个小数
示例代码:
#include
#include
using namespace std;
int main()
{
cout << rand()%10/(double)10 << endl;
return 0;
}
细心的你可能已经发现了,上面产生的随机数一直都是不变的,这并不是我们想要的结果,那怎么产生变化的随机数呢?
这就要用到srand(),srand()可用来设置rand()产生随机数时的随机数种子。通过设置不同的种子,我们可以获取不同的随机数序列。
但是怎么获取不同的种子比较方便呢?我们可以引入time(0)函数,time(0)每一次返回的值都是不一样的,用它当我们的随机种子再好不过了,使用time(0)函数要引入头文件哦
代码示例:
#include
#include
#include
using namespace std;
int main()
{
srand(time(0));
cout << rand()%10 << endl; ///产生0-9之间变化的整数
return 0;
}