PDA

Visualizza la versione completa : [C] media di n numeri


Hertzzz
20-10-2012, 18:40
Salve a tutti,mi sto cimentando nel mondo del linguaggio C.
Ho scritto un programma che dovrebbe fare la media di n numeri e stampare il risultato,ma non capisco per quale motivo non mi funzioni.

il sorgente è questo.
#include <stdio.h>
#include <stdlib.h>

int main()

{

float cnt,n,dato,somma,media;

cnt=0;
somma=0;


printf("tra quanti numeri vuoi fare la media?\n");
scanf("%f",&n);

while(cnt<n);
{

printf("inserisci il numero");
scanf("%f",&dato);
somma=somma+dato;
cnt++;
}
media=somma/n;
printf("la media è:%f",media);

return EXIT_SUCCESS;
}

comas17
20-10-2012, 18:53
"Non mi funzioni" non vuol dire niente... cerca di dare qualche informazione in più: ti dà errori di compilazione ? di esecuzione ? non dà errori ma la media che calcola è sbagliata ?

Hertzzz
20-10-2012, 20:04
la sintassi è corretta,pertanto il compilatore lo compila.

ma quando inserisco il primo numero..poi non mi entra nel ciclo while e non capisco il motivo dato che cnt<n viene soddisfatta.

YuYevon
20-10-2012, 20:25
C'è un ; dopo il while che va tolto.
E in ogni caso perché dichiari n e cnt di tipo float? Se ti serve solo contare il "numero dei numeri", un tipo intero va benissimo.

Hertzzz
20-10-2012, 21:33
sisi lo so che int andava benissimo,ma ho messo float per essere sicuro sul formato di stampa (%f) visto che sono una matricola alle prime armi con il C.
Grazie per la segnalazione del ; dopo il while,domani provo a ricompilare e faccio sapere. :ciauz:

Loading