C 语⾔的随机数rand ()函数详解
库函数printf详解
在⽣活中很多场景下都需要产⽣随机数,⽐如抽奖,打牌,游戏等场景下就需要使⽤随机数。在C 语⾔标准库函数⾥⾯有专门⽤来产⽣随机数的函数
1234567
#include <stdio.h>#include <stdlib.h>int
main(int  argc, char** argv) {
int  i;
i = rand();
printf("%d",i);
return  0;
}直接调⽤
此时⽣成的随机数为41,下⾯多⽣产⼏个随机数看看。
通过⼀个for 循环产⽣10个随机数,通过打印的结果可以看到第⼀个随机数是41,其他后⾯9个数据都⽐较⼤。将随机次数改为15,在测试⼀次。
此时产⽣了15个随机数,但是通过和产⽣10个随机数相⽐可以发现,这次产⽣的随机数前⾯10个数字和上次⼀模⼀样。将程序重新运⾏之后,产⽣的随机数和上⼀次也⼀模⼀样。
这时什么原因呢?难道随机数⽣成函数
实际上通过
种⼦的值是由
函数没有返回值,它的参数就是需要设置的种⼦值。将修改种⼦的函数也添加到代码中。
将种⼦值设置为10,然后⽣成10个随机数。
将种⼦值设置为20,然后⽣成10个随机数。
可以看到当种⼦的值发⽣变化后,⽣成的随机数也就发⽣了变化。如果程序中需要重复的使⽤随机的话,那么随机种⼦的值就不能时⼀个定值,它必须时刻发⽣变化,这么⽣成的随机数才能时刻发⽣变化。在系统中时刻发⽣变化的数字,⾸先能想到的就是
时间,因为时间实时都在发⽣变化,不可能出现同样的值。
那么就可以将获取系统的时间,然后作为随机数的种⼦。时间函数
*_Time) { return_time64(_Time); }
调⽤
调⽤
要控制数字的范围,那么可以使⽤数学的取余数运算,如果要将⽣成的数字控制在10以内,那么对⽣成的数字除以10,然后取余数。这样余数的⼤⼩就不会超过10。
这⾥对⽣成的随机数除以100取余,这样最后产⽣的随机数都会在100以内。
总结
本篇⽂章就到这⾥了,希望能够给你带来帮助,也希望您能够多多关注的更多内容!