C/C++语言随机数生成教程
在实际编程中,我们经常需要生成随机数,进行对程序的测试。
在C++语言中,我们一般使用chrono
头文件的名称,也是子名称空间的名称:此头文件中的所有元素都不是直接在std
名称空间下定义的(像大多数标准库一样),而是在std:: chrono
命名空间。
下面是一个随机数生成的实例:
#include<iostream>
#include<random>
#include<chrono>
using namespace std;
using namespace std::chrono;
///生成随机数
int main(int argc, char const *argv[])
{
auto seed=high_resolution_clock::now().time_since_epoch().count();
mt19937 gen(seed);
uniform_int_distribution<>dis(-10,100);
for (int i = 0; i < 1000; i++)
{
cout<<dis(gen)<<' ';
}
return 0;
}
为了方便对其它程序进行测试(如测试冒泡算法,快排等),我们经常把数据保存在一个1000.in文件里面。
则操作为如下:
-
首先打开cmd进入当前目录,进行编译。把.cpp文件编译成.exe二进制文件
g++ test.cpp -o test.exe
-
把随机数保存在1000.in文件
test > 1000.in
如图:
结果: