函数rand()是真正的随机数生成器。而srand()会设置供rand()使用的随机数种子。
假设你在第一次调用rand()之前没有调用srand(),那么系统会为你自己主动调用srand()。
注意而使用同种子同样的数调用 rand()会导致同样的随机数序列被生成。
因此我们假设要生成以m为随机数的种子首先要调用srand();
以下就举例,生成以100,为种子的随机数10个,将他们控制在0~100之内.
#include
int random(int m){
return rand()%m;//將随机数控制在0~m-1之间
}
int main(){
int n=10,i,m=100,s=50;
srand(s);//设置随机数种子
for(i=0;i
printf("%d ",random(m));
}
printf("
");
return 0;
}
/*常常使用:srand(time(NULL));来生成以当前时间为种子的随机数,要包括*/