十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
原型:void srand(unsigned int seed)。种子是无符号整型。
无极网站建设公司创新互联,无极网站设计制作,有大型网站制作公司丰富经验。已为无极数千家提供企业网站建设服务。企业网站搭建\成都外贸网站建设公司要多少钱,请找那个售后服务好的无极做网站的公司定做!
使用(unsigned)time(NULL)作为种子可以使每次运行的种子都不同,产生的随机序列也不同。自己指定一个数作为种子,除非通过某种方法使每次程序运行时该数的值都不同,否则将始终产生相同的随机序列。
%是取模运算,不是除法运算,a%b的结果是a除以b以后得到的余数
a%b以后,余数肯定在[0,b-1]的范围里
因此rand()%(Y-X+1)的结果在[0,Y-X]的范围里,再加X以后,就在[X,Y]这个范围里,所以要产生X到Y范围里的数,用rand()%(Y-X+1)+X
rand()%100的结果是在[0,99]里,也可以理解成rand()%(99-0+1)+0
随机数是依靠一个复杂的数学函数f(x)来生成的,给它一个初始值(种子)x,那么就可以得到一个数f(x),然后利用f(x)又可以得到另外一个数f(f(x)),如此反复,就可以得到很多的数,这些数是多少,我们是无法控制的,但是我们能让最终的结果限定在某个范围内,利用%运算就可以
我以前学过一点这方面的知识,不知道能不能帮到你。
我记得srand这个函数是用来产生一个范围的,他应该是从一个标准时间开始到现在时间所持续的秒数的这么一个范围。
然后rand函数是从这个范围中进行随机取值。他的返回值是0至RAND_MAX之间的随机数值,RAND_MAX定义在stdlib.h中。具体多少不记得了。。