#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define N 100
int main()
{
int a[N];
int i,o;
srand((unsigned)time(NULL));
for(i=0;i<N;i++)
{
a[i]=rand()%N;
if(a[i]>=50)
printf("a[%d]=%d\n",i,a[i]);
}
return 0;
}
这里我注意到如果不给产生随机数一个小一点的范围的话,编译器会将0到99的数组都输出且其值都大于50,因为在0~max这个范围上出现大于50的数的几率太高了,而如果在0~100之间就是50%的概率。