#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void main() {
int k;
double b[2000];
srand((unsigned int ) time(NULL)*4876465);
for(k=0;k<2000;k++) b[k]=rand();
for(k=0;k<2000;k++) printf("%f",b[k]);
}

配列の一つ一つに異なる乱数を代入したいのですが、
以上のようにやるとすべて同じ値が代入されてしまいます。
for文の中にsrandを入れても同様の結果になってしまいました。
原因を教えていただきたいです・・