我想取1-100之间的整数!为什么作了一个10次的循环,用random输出的都是一个数呀?是不是应该输出10个不同的数呀??我刚学习C++不懂,谢谢大家能帮我做详细解答!#include <iostream>#include <ctime>#include <cstdlib>using namespace std;int main(){for (int i=0;i<10;i++){randomize();unsigned int r=random(100);cout<<r<<'\t';}return 0;}是这个样子吗??不行呀??
2 回答
猛跑小猪
TA贡献1858条经验 获得超8个赞
方法:rand()函数用来产生随机数,但是,rand()的内部实现是用线性同余法实现的,是伪随机数,由于周期较长,因此在一定范围内可以看成是随机的。
rand()会返回一个范围在0到RAND_MAX(32767)之间的伪随机数(整数)。
在调用rand()函数之前,可以使用srand()函数设置随机数种子,如果没有设置随机数种子,rand()函数在调用时,自动设计随机数种子为1。随机种子相同,每次产生的随机数也会相同。
rand()函数需要的头文件是:<stdlib.h>
rand()函数原型:int rand(void);
使用rand()函数产生1-100以内的随机整数:int number1 = rand() % 100;
C++中的rand( )应该小写,需要加载<stdlib.h>头文件
拓展资料
rand( )函数不是真正的随机数生成器,而srand()会设置供rand()使用的随机数种子。如果你在第一次调用rand()之前没有调用srand(),那么系统会为你自动调用srand()。而使用同种子相同的数调用 rand()会导致相同的随机数序列被生成。
- 2 回答
- 0 关注
- 937 浏览
添加回答
举报
0/150
提交
取消