码迷,mamicode.com
首页 > 其他好文 > 详细

rand()与 srand()

时间:2018-06-30 01:03:15      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:class   系统   输出   改变   就是   int   函数   col   clu   

一   头文件 <time.h>

  srand()就是给rand()提供种子seed。

  在C语言中,srand()与rand()是随机函数,其中srand函数是伪随机数发生器的初始化函数,原型void srand(unsigned int seed);rand()是伪随机数生成器,在调用了srand()产生的种子以后,产生伪随机数。

  C语言中语句srand( (time(NULL) ) ; 表示设置一个随机种子,每次运行都能保证随机种子不同。

  在C语言中,rand()函数可以用来产生随机数,但是这不是真正意义上的随机数,是一个伪随机数,它是根据一个数,我们可以称它为种子,为基准以某个递推公式推算出来的一系数,但这不是真正的随机数,当计算机正常开机后,这个种子的值是定了的,除非你破坏了系统,为了改变这个种子的值。因此,C提供了srand()函数,它的原型是 void srand( int a)。用来改变这个种子值。

  srand( (time(NULL) )中time(NULL)函数是得到一个从1900年1月1日到现在的时间秒数,这样每一次运行程序的时间的不同就可以保证得到不同的随机数了

  

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
    srand(time(NULL));
    printf("%d",rand());

    return 0;
}

 

 

二  头文件 <windows.h>

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
int main()
{
    srand(time(NULL));//time.h
    printf("%d",rand());
    Sleep(500);//windows.h
    printf("xxx");
    return 0;
}

  输出:

28666xxx
Process returned 0 (0x0)   execution time : 0.537 s

 

rand()与 srand()

标签:class   系统   输出   改变   就是   int   函数   col   clu   

原文地址:https://www.cnblogs.com/654321cc/p/9245867.html

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