Ciao ragazzi, qualcuno riesce a spiegarmi perchè con questo semplice codice

codice:
int numero_vettori=12;
float centroidi[numero_vettori];
for (j=0;j<numero_vettori;j++)
{
	centroidi[j]=(float)125.5;
	printf("centroide = %f \n",centroidi[j]);
}
mi stampa "-5011019108882072967975643073478656.000000"
invece di "125.5"?

Dove sto sbagliando?