Hej. Mam do napisania program, który pobiera max 1000 liczb, podanie 0 kończy pobieranie, po skończeniu pobierania ma wyliczyć średnia.
Póki co mam coś takiego:
#include <stdio.h>
#define N 1000
int main()
{
int tab[N];
int i, ile;
int suma=0;
float sr;
puts("Podaj liczby: ");
for(i=0; i<=N; i++)
{
scanf("%d", &tab[i]);
if(tab[i]==0)
break;
}
for(i=0; tab[i]>0; i++)
suma+=tab[i];
printf("%d", suma);
return 0;
}
Nie rozumiem czemu jeżeli po wyświetleniu sumy napiszę printf("%f", sr); to wyświetlanie sumy zmienia się na zmiennoprzecinkowe i wynik jest nieprawidłowy. Bez tego jest ok.
Poza tym nie wiem jak napisać warunek do liczenia średniej. Wiem, że jest to suma / ilość liczb, tylko jak zapisać tą ilość liczb skoro nie jest to stała liczba tylko zmienia się zależnie od ilości podanych liczb?
Z góry dzięki za pomoc :)