rand()原理

rand()原理

参考这一篇博客这一篇博客

用rand()之前,要设置一个种子:srand(seed),否则seed默认为1

也可以srand(timd(NULL)),这样每次生成的伪随机数都不一样

总的来说,系统的生成大概就是一个一次函数,然后加一个模数 r a n d ( ) = ( a s e e d + b ) % c ,其中 a , b , c 均为常数

生成 [ a , b ) 之间的伪随机整数: A n s = r a n d ( ) % ( b a ) + a

生成 [ 0 , 10 k ) 之间的伪随机浮点数: r a n d ( ) / ( d o u b l e ) ( M a x R a n d / 10 k ) ,其中 M a x R a n d 为自己定义的随机上限

猜你喜欢

转载自blog.csdn.net/ArliaStark/article/details/81297335