码迷,mamicode.com
首页 > 系统相关 > 详细

Linux 随机数

时间:2019-02-14 23:39:41      阅读:274      评论:0      收藏:0      [点我收藏+]

标签:clu   设置   srand函数   种子   stdio.h   time   ++   img   str   

一、rand函数

rand函数的简单使用,rand()返回一个[0, RAND_MAX]中的随机数 

#include <stdlib.h>
#include <stdio.h>
#include <time.h>

int main()
{
    printf("%d\n", RAND_MAX);

    //srand(time(NULL));

    for(int i = 0; i < 5; i++)
    {
        printf("%d\n", rand());
    }

    return 0 ;
}

运行结果

技术图片

 

二、srand函数

rand得到的随机数只是一个伪随机数,由算法得到的,且存在一个问题,当我们再一次运行时会发现和上一次得到的随机数时一样的

这是因为rand内部实际是通过一个种子进行一些算法得到的值,默认为1,种子相同,算法相同,所以每次得到的值相同!

技术图片

于是就用到了srand函数,为rand函数设置随机种子,传入一个值,可以传入时间,保证不相同!

#include <stdlib.h>
#include <stdio.h>
#include <time.h>

int main()
{
	printf("%d\n", RAND_MAX);

	srand(time(NULL));

	for(int i = 0; i < 5; i++)
	{
		printf("%d\n", rand());
	}

	return 0 ;
}

  这样每次运行程序时得到的值不再相同!

 

Linux 随机数

标签:clu   设置   srand函数   种子   stdio.h   time   ++   img   str   

原文地址:https://www.cnblogs.com/external/p/10381257.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!