C/C++ 生成随机数
1.生成随机数的范围为[0,RAND_MAX]
例如[1,10]。
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <ctime>
//RAND_MAX为stdlib.h文件中的一个常数,大小通常为32767
int main()
{
srand((unsigned int)time(NULL));//设置随机数种子
for(int i = 0; i < 10; i++)
{
printf("%d ", rand() % 10 + 1);
}
return 0;
}
2.生成[a,b]范围内的随机数时,且 b > 32767
例如[10000, 60000]
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <ctime>
//1.0*rand(),将生成的数变为浮点数
//round(x)返回x的四舍五入整数值
int main()
{
srand((unsigned int)time(NULL));
for(int i = 0; i < 10; i++)
{
printf("%d ", (int)(round(1.0*rand()/RAND_MAX*50000+10000)));
}
return 0;
}
3.随机数引擎
c/c++老版本的rand()存在一

本文介绍了C/C++中生成随机数的方法,包括如何生成[0,RAND_MAX]范围内的随机数,以及如何生成[a,b](b>32767)区间内的随机数。同时,讨论了旧版rand()函数的局限性,以及随机数引擎在避免非随机性方面的改进。"
111839444,10296747,瑞斯康达Gazelle系列工业以太网交换机详解,"['工业网络', '网络设备', '交换机', '工业自动化', '冗余技术']
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



