c语言中如何产生1或0随机数

2024-10-30 09:38:19
推荐回答(2个)
回答1:

float b=rand()/(RAND_MAX+1.0);
printf("%f\n",b);

注释:
stdlib.h头文件中有宏#define RAND_MAX 0x7fff
rand()产生一个0到0x7ffff即0到32767之间的随机数
rand()/(RAND_MAX+1.0)就等于一个0到1之间的小数了,因为rand()最大是32767最小是0,再除以32768就是一个0到1之间的小数(不能等于1),再乘以10就是一个0到10之间的数了(不等于10).最后再加1,就成了一个求1到10之间随机数的式子了.

回答2:

#include
#include
#include
int main()
{
    srand(time(0));
    for(int i=0;i<10;i++)
        printf("%3d",rand()%2);
    printf("\n");
    return 0;
}