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;
}

运行结果:

原文地址:https://www.cnblogs.com/chechen/p/9074758.html

时间: 2024-10-08 01:30:03

C语言实现随机生成0或1的相关文章

随机生成0到n之间的m个数

分析:使用knuth算法: void PutRand(int n,int m) { srand(time(NULL)); for (int i=0;i<n;i++) { if(rand()%(n-i)<m) { cout<<i<<endl; m--; } } } 证明: 1.当i=0时,则生成的随机数是0,1,2...n-1之间的数,共n个:这是0被选到的概率为m/n. 2.当i=1时,生成的随机数是0,1,2...n-2之间的数,共n-1个:假设上次0被选到,那么这次

随机生成一组不重复的随机数组

public string RadomNumArray() { Random r = new Random(); int a = 0; int[] num = new int[6]; string text = ""; for (int i = 0; i < 6; i++) {//循环生成6个数字 a = r.Next(0, 99);//随机生成0到99之间的数字 num[i] = a; for (int k = 0; k < num.Length; k++) {//遍历数

转:在0~N(不包括N)范围内随机生成一个长度为M(M &lt;= N)且内容不重复的数组

1. 最朴素暴力的做法. void cal1() { int i = 0, j = 0, num = 0; int result[M]; result[0] = rand() % N; //第一个肯定不重复, 直接加进去 for (i = 1; i < M; i++) //获得剩下的(M-1)个随机数 { num = rand() % N; //生成0 ~ N之间的随机数字 for (j = 0; j < i; j++) { if (num == result[j]) //如果和result数

随机生成一份试卷,试卷的种类分为单选、多选、判断三种题型。nodejs6.0 mysql

背景:从数据库中,随机生成一份试卷,试卷的种类分为单选.多选.判断三种题型. 首先我需要生成随机数id(在这之前我需要知道数据库中各个题型的题数,这样我才能设置随机数),并依据生成的随机数id,去查找对应的题目.而在js的数组操作中,有filter.splice.concat.every.find等等.我需要从数据库中取出特定的数据,而我返回的是一组对象,那么我需要过滤出特定的部分. 代码如下: var danxuan = getRandomNum(danxuan_count,20);var d

【JavaScript】随机生成10个0~100的数字

随机生成10个0~100不重复的数字(包含0和100): 需要用到的知识点:随机数 去重 下面放代码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <script> // 定义声明一个数组, 放随机生成的10个数字 var arr = []; for(var

个人项目-随机生成四则运算

本周做的是一个自己单独完成的小程序,用来随机生成小学四则运算的题目. 看到这个题目时,头脑有大概的一个编写代码的思路,但都言万事开头难,到真正开始的时候却不知从何下手.于是采取老师的建议参考别人的代码,然后再自己做修改.我在百度上搜索了实现该题目的代码,最终我采用的是百度知道的知道行家ahulxh老师的代码,该代码是在Windows系统上运行,开发环境为visaul c++ 6.0.首次运行老师的代码时出现了一个bug,显示的原因是缺少头文件#include<stdio.h>,修改以后再次运行

R语言系列:生成数据

R语言系列:生成数据 (2014-05-04 17:41:57) 转载▼ 标签: r语言 教育 分类: 生物信息 生成规则数据1.使用“:“,如x=1:10,注意该方法既可以递增也可以递减,如y=10:12.seq,有两种用法:①seq(起点,终点,步长); ②seq(length=9, from=1, to=5)    seq还有一种简写:seq(x)    #相当于1:length(x),但当length(x)为0时,返回integer(0)3.c(1,2,8)4.使用scan(),可以等待

数组(随机生成一维数组),二维数组的概念和题目设计(利用二维数组 :任意给定分数去计算科目和人均平均分)

1 //数组间的关系arr[]中的数字为几,[]内就有几个数 2 //{ }内的数是从0开始,如需要打印应从0开数 3 如{2,6,9,8,7}打印arr[4]就是7 4 #include <stdio.h> 5 #include <stdlib.h> 6 int main() 7 { 8 int arr[] = { 1,2,3,4,8}; 9 10 printf("%d\n", arr[3]); 11 12 system("pause");

用不同语言实现自动生成四则运算题目

Github项目地址:https://github.com/Aiyaxc/zuoye- 题目:用不同语言实现自动生成四则运算题目的命令行程序. (1)题目要求: a.  能自动生成小学四则运算题目(注意是给小学生用的,要是结果出现负数的话他们会迷茫的!) b. 除了整数外,还要支持真分数的四则运算  (2)思路: a.四则运算加减乘除,采用两个随机数,由于不能出现负数,所以在对两个随机数进行减法运算的时候,需要进行比较大小,而除法在运算中,除数不能取0. b.  进行真分数运算应注意假分数的影响