十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
直接使用C语言的库函数srand和rand就可以了,最简单随机数发生器就是平均分布的。首先使用你密钥导出一个整数,假设为i。然后 srand(i);后面不断调用rand就可以了。
创新互联公司-专业网站定制、快速模板网站建设、高性价比龙湾网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式龙湾网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖龙湾地区。费用合理售后完善,十载实体公司更值得信赖。
生成随机数时需要我们指定一个种子,如果在程序内循环,那么下一次生成随机数时调用上一次的结果作为种子。但如果分两次执行程序,那么由于种子相同,生成的“随机数”也是相同的。
rand第一次产生的随机数由第一个srand给出,下一次产生的随机数就由上一次产生的随机数生成,因为第一个确定了,所以后面的就一样了。
srand(time(0));//设置随机数种子 for (int i=0;i6;i++){ a[i]=rand()%20+1;//产生随机数,并把随机数设置在预定范围内,对20求模再加一,所得的数只能在1~20中。
本文由青松原创并依GPL-V2及其后续版本发放,转载请注明出处且应包含本行声明。\x0d\x0a\x0d\x0aC++中常用rand()函数生成随机数,但严格意义上来讲生成的只是伪随机数(pseudo-random integral number)。
在test.cpp文件中,输入C语言代码: srand((unsigned)time(NULL)); for (int i = 0;i 100; i++) { printf(%d , rand()); } 编译器运行test.cpp文件,此时成功随机生成了100个随机数。
a[100],i; srand((unsigned)time(NULL)); // 初始化种子 for(i = 0; i 100; i++) { a[i] = rand() % 100; // 调用函数rand获取随机数字 } } 注意,编译文件后缀必须是.C文件。
rand()函数是产生随机数的一个随机函数。
下面是用C产生0-9的随机数,rand()函数产生的是伪随机数,反复调用函数rand所产生的一系列数似乎是随机的,但每次执行程序所产生的序列则是重复的。
第二次从0-8里选,选过的消失。。最后2个为9,以后永远都选不上第8和第九。无论9出没出现过,以此类推。最终全部为九,其余消失。如果为10的话,其实也影响不了,因为最后几个数永远都不会取到、采纳了吧。。
includestdlib.h(C++建议使用#includecstdlib,下同)(2)在标准的C库中函数rand()可以生成0~RAND_MAX之间的一个随机数,其中RAND_MAX 是stdlib.h 中定义的一个整数,它与系统有关。
while(n10) { int m = rand()%10; //获取一个0~9的随机数。 if(f[m]) continue;//该数之前已经获取到过。 a[n++] = m;//将该数存入数组。 f[m] = 1;//标记该数已经获取过。