美文网首页
力卉编程 | 毫秒级随机种子

力卉编程 | 毫秒级随机种子

作者: 力卉编程 | 来源:发表于2020-04-04 16:17 被阅读0次

代码的srand((unsigned)time(NULL)); 表示给rand()产生随机值的种子.
其中(unsigned)time(NULL)则将当前时间转为一个正整数,也就是说,
如果我们如果在小于1秒之内多次运行该代码,则随机值都是相同的。
思考:如果不按照时间,或者时间再加上自身的一个数作为随机种子呢????

#include <stdlib.h>
#include <stdio.h>
#include <stdio.h>
#include <time.h>
#include <sys/timeb.h>

int main(void)
{
int buf[10],i,j;
struct timeb timer;
ftime(&timer);
srand(timer.time * 1000 + timer.millitm);

for(i=0; i<10; i++)
{
        buf[i]=rand()%100;
        printf("%d   ",buf[i]);
}
 printf("\n");
 return 0;
}

文 | 力卉编程

相关文章

网友评论

      本文标题:力卉编程 | 毫秒级随机种子

      本文链接:https://www.haomeiwen.com/subject/ibujphtx.html