C语言实现随机生成0或1

rand函数在产生随机数前,需要系统提供的生成伪随机数序列的种子,rand根据这个种子的值产生一系列随机数。如果系统提供的种子没有变化,每次调用rand函数生成的伪随机数序列都是一样的。srand(unsigned seed)通过参数seed改变系统提供的种子值,从而可以使得每次调用rand函数生成的伪随机数序列不同,从而实现真正意义上的“随机”。通常可以利用系统时间来改变系统的种子值,即srand(time(NULL)),可以为rand函数提供不同的种子值,进而产生不同的随机数序列。

#include <iostream>
#include <time.h>

//随机生成0或者1
int main()
{
    srand((unsigned)time(NULL));//srand()就是给rand()提供种子seed 

    //100次随机生成0或者1
    for (int i =0; i < 100; i++)
    {
        int num = rand()%2;//对2取余得到就是0或者1

        printf("第%d次随机生成的数: %d \n",i+1,num);
    }
    printf("\n");
    return 0;
}

运行结果:

 

猜你喜欢

转载自www.cnblogs.com/chechen/p/9074758.html