Struktury w C

0

Zacząłem pisać strukturę w C. Co jakiś czas kompiluje, żeby sprawdzić czy nie ma błędu i pojawił się jeden, nie wiem gdzie wcisnąć ten " ; "

 
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>

typedef struct
{
    float ocena;
    char indeks[6];
    int nieobecnosci
} kol;
void InicjalizujTablice(kol * tab2, int m)
{
    int i;
    float A = rand() % 6+1 ;
    float B = rand() % 2/2 ;
    for(i=0; i < m; i++)
    {
        tab2[i].ocena = (A + B).;
        sprintf(tab2[i].indeks,"2289_%c%c",i+'1', i+'1') ;
        tab2[i].nieobecnosci = rand() %3 ;
    }
}
void WyswietlTablice(kol * tab2, int m)
{

    int i;
    puts("  Oceny z kolokwium kursu Informatyka1 dla kierunku AIR  ");
    for(i=0; i < m; i++)
        printf("%2.d. %6s %8.2f %3.d \n",i+1, tab2[i].indeks, tab2[i].ocena, tab2[i].nieobecnosci );
}
void sortowanie(kol * tab2, int m)
{
    int j;
    int i ;
    int min;
    kol p;
    for ( i=0; i<m-1; i++)
    {
        min=i;
        for ( j=i+1; j<m; j++)
        {
            if (tab2[j].ocena<tab2[min].ocena)
                min=j;
        }
        p=tab2[min];
        tab2[min]=tab2[i];
        tab2[i]=p;
    }
}


Prosze o pomoc :/

3

int nieobecnosci
Gdybyś rozumiał co robisz to zapewniam że byloby łatwiej...

0

nie chodzi o to :D wiem, to drugi błąd. Chodzi o tą linijke. Sorry za wprowadzania w błąd:
tab2[i].ocena = (A + B).;

2

No to wyjaśnij mi co wg ciebie oznacza zapis (A + B).

0

dodaje wartości A i B, a kropka na końcu ze względu na strukturę. Na zajęciach nas zbytnio nie uczą co jest po co. Dostajemy przykładowy program i tyle. Byłbym wdzięczny za kilka słów wytłumaczenia.

4

Co to niby znaczy kropka ze względu na strukturę? o_O Kropka to operator odwołania do POLA STRUKTURY, a ty tam masz dwa dodane floaty. Gdzie tu sens i logika jakaś?
Serio, łatwiej pisze sie kod kiedy ROZUMIE się co jest po co. Nie da się programować wstawiając losowe znaki i licząc że coś zadziała.

1 użytkowników online, w tym zalogowanych: 0, gości: 1