随机数生成代码c++
时间: 2023-11-27 11:45:25 浏览: 56
在C++中,可以使用rand()函数生成随机数。但是在使用rand()函数之前,需要先使用srand(time(0))函数设置随机数种子,否则每次产生的随机数都会相同。下面是一个生成5个100以内随机数的示例代码:
```
#include <bits/stdc++.h>
using namespace std;
const int maxn = 5;
int main() {
int x;
srand(time(0));
for(int i = 1; i <= maxn; i++) {
x = rand() % 100; //生成100以内的随机数
cout << x << "\n";
}
return 0;
}
```
如果需要更快速的随机数生成函数,可以使用一些特殊的算法,比如Mersenne Twister算法。但是这些算法需要自己实现,不属于标准库的范畴。
相关问题
随机数生成器 c++ 代码
这是一个随机数生成器的 C 代码示例:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int i, n;
time_t t;
n = 5;
/* 初始化随机数生成器 */
srand((unsigned) time(&t));
/* 生成并打印随机数 */
for( i = 0 ; i < n ; i++ ) {
printf("%d\n", rand() % 50);
}
return 0;
}
注意,在使用随机数生成器时,需要先调用 srand() 函数来初始化生成器。在这个例子中,我们使用了当前时间作为初始化参数,以确保每次运行程序时都会生成不同的随机数序列。
c++生成随机数代码
在C++中,可以使用头文件<random>中的随机数库来生成随机数。其中包括随机数生成器和随机数分布器。下面是一个简单的示例代码:
```
#include <iostream>
#include <random>
int main()
{
// 使用随机设备作为种子
std::random_device rd;
// 使用 Mersenne Twister 引擎
std::mt19937 gen(rd());
// 定义随机数分布器,生成 1 到 100 之间的整数
std::uniform_int_distribution<> dis(1, 100);
// 生成 10 个随机数并输出
for (int i = 0; i < 10; ++i) {
std::cout << dis(gen) << ' ';
}
std::cout << std::endl;
return 0;
}
```
在上面的代码中,我们使用了随机设备作为种子,使用了 Mersenne Twister 引擎作为随机数生成器,使用了 uniform_int_distribution 分布器生成 1 到 100 之间的整数。最后,我们生成了 10 个随机数并输出。