Prosty program nie liczy średniej w języku C.

0

Witam,

Od kilku godzin stoję w martwym punkcie. Piszę trochę większy program z ćwiczeń załączonych do książki i część programu niestety nie daje mi pożądanego rezultatu. Chodzi o tą część programu:

#include <stdio.h>
#define X 3
#define Y 5

int main()
{
    int licz1, licz2, temp;
    double tablica[X][Y];

    printf("Za chwile bedziesz proszony o podawanie licz\n(wartosc nieliczbowa konczy program)\n\n");

    for(licz1=0; licz1<X; licz1++)
        {
            printf("Podaj 5 liczb do %d z 3 przedzialu: \n", licz1+1);
            for(licz2=0; licz2<Y; licz2++)
                if(scanf("%lf", &tablica[licz1][licz2])==0)
                     return 0;
        }

    printf("\n");
    
    for(licz1=0; licz1<X; licz1++)
        {
            temp=0;
            printf("\nSrednia liczb z %d przedzialu to: \n", licz1+1);
            for(licz2=0; licz2<Y; licz2++)
                temp+=tablica[licz1][licz2];
            printf("%.2f", temp/Y);
        }

    getchar();
    getchar();
    return 0;
}

Program daje mi zawsze jako średnie same zera. Naprawdę nie widzę żadnych błędów semantycznych już od kilku godzin. Proszę bardzo o pomoc.

Pozdrawiam.

1
  1. scanf("%f", &tablica[licz1][licz2])
  2. int licz1, licz2; double temp;
0

Dziękuję bardzo. Po prostu za dużo zadań robię w ciągu dnia i aż nie widzę takich rzeczy. A co do scanf() to raczej powinno być %lf bo to jest do typu double, u mnie działa.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.