Creare un programma che allochi in maniera dinamica un vettore di 1000 valori di tipo
double. Il programma inizializzi il vettore con valori pseudo-casuali tra 0.0 e 1.0 e ne calcoli la somma e la media.
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
#include<math.h>
#define N 10
void stampavettore(float vect[N]);
main() {
int i;
float somma;
float media ;
somma=0.00;
media=0.00;
float vect[N];
srand(time(NULL));
for(i=0;i<N;i++)
//vect[i]=rand()%5;
vect[i]=fmod(rand(),(3));
printf("\n Genero un vettore di dimensioni %f:\n\n",N);
stampavettore(vect);
for(i=0;i<N;i++)
somma=somma+vect[i];
media=(somma)/(N);
printf("\n\nSomma=%f\tMedia%f\n\n",somma,media);
getchar();
}
void stampavettore(float vect[N])
{
int i;
for(i=0;i<N;i++){
printf("%4f",vect[i]);
printf("\n\n");
}
}
Il programma entra in esecuzione perfettamente , solo che i valori che mi stampa sullo schermo sono tutti : 0.0000., e anche la somma e la media ovviamente viene stampata 0.00000.
Qualcuno sa dirmi il perchè o indicarmi la retta via ? grazie