How to generate different random numbers in a loop in C++?(如何在 C++ 的循环中生成不同的随机数?)
问题描述
是否可以生成不同的随机数,每次循环运行.例如,我有:
Is it possible to generate different random number, every time loop runs. For example, i have:
for (int t=0;t<10;t++)
{
int random_x;
srand ( time(NULL) );
random_x = rand() % 100;
cout<<"
Random X = "<<random_x;
}
但问题是,它每次都会生成相同的随机数.是否可以在每次循环运行时生成不同的随机数?
But the problem is, it generates same random number everytime. Is it possible to generate different random numbers everytime loop runs?
有没有可能也重置随机数初始化?
IS there any possibility to reset random number initiallization as well?
推荐答案
不要在循环内使用 srand
,只使用一次,例如在 main()
的开头.而 srand()
正是您重置它的方式.
Don't use srand
inside the loop, use it only once, e.g. at the start of main()
. And srand()
is exactly how you reset this.
这篇关于如何在 C++ 的循环中生成不同的随机数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何在 C++ 的循环中生成不同的随机数?
- 哪个更快:if (bool) 或 if(int)? 2022-01-01
- 将 hdc 内容复制到位图 2022-09-04
- GDB 不显示函数名 2022-01-01
- 从父 CMakeLists.txt 覆盖 CMake 中的默认选项(...)值 2021-01-01
- 如何提取 __VA_ARGS__? 2022-01-01
- 将函数的返回值分配给引用 C++? 2022-01-01
- DoEvents 等效于 C++? 2021-01-01
- XML Schema 到 C++ 类 2022-01-01
- 使用 __stdcall & 调用 DLLVS2013 中的 GetProcAddress() 2021-01-01
- OpenGL 对象的 RAII 包装器 2021-01-01