#include <stdio.h> #include <string.h> #include "struktuurid.h" void yhildus (Subject *aine_massiiv, int aine_arv, Student *tudeng_massiiv, int tudeng_arv, Output *koond_massiiv); void perenime_sortimine (); int main () { FILE *tudengid, *ained; // tekitab pointerid failidele Student tudeng; // muutuja tudengi andmete hoiustamiseks Student tudeng_massiiv[25]; // massiiv tudengite hoidmiseks Subject aine; // muutuja aine andmete hoiustamiseks Subject aine_massiiv[25]; // massiiv ainete hoiustamiseks Output koond_massiiv[25]; tudengid = fopen ("tudengid.txt", "r"); // avab faili tudengid ained = fopen ("ained.txt", "r"); // avab faili andmed int tudeng_arv = 0; // skanneerib failist sisse andmed tundegite kohta while (fscanf(tudengid,"%s %s %s ", tudeng.eesnimi, tudeng.perenimi, tudeng.matrikkel) != EOF) { printf("%s\t %s\t %s \n", tudeng.eesnimi, tudeng.perenimi, tudeng.matrikkel); //puts (tudeng_massiiv[tudeng_arv].eesnimi); //puts (tudeng_massiiv[tudeng_arv].perenimi); //puts (tudeng_massiiv[tudeng_arv].matrikkel); tudeng_massiiv[tudeng_arv] = tudeng; tudeng_arv++; } fclose (tudengid); printf (" \n\n"); int aine_arv = 0; // skanneerib failist sisse andmed ainete kohta while (fscanf(ained,"%s %s %s %d", aine.nimi, aine.kood, aine.matrikkel, &aine.tulemus) != EOF) { //printf("%s \t", aine.kood); printf("%s %s %s %d \n", aine.nimi, aine.kood, aine.matrikkel, aine.tulemus); //puts (aine_massiiv[aine_arv].nimi); //puts (aine_massiiv[aine_arv].kood); //puts (aine_massiiv[aine_arv].matrikkel); //printf ("%d\n\n", aine.tulemus); aine_massiiv[aine_arv] = aine; aine_arv++; } fclose (ained); // ühildab vastavad andmed yhildus (aine_massiiv, aine_arv, tudeng_massiiv, tudeng_arv, koond_massiiv); return 0; } void yhildus (Subject *aine_massiiv, int aine_arv, Student *tudeng_massiiv, int tudeng_arv, Output *koond_massiiv) { int i; int j; printf ("%d, %d \n", aine_arv, tudeng_arv); for (i = 0; i < aine_arv; i++) { for (j = 0; j < tudeng_arv; j++) { //printf ("%d, %d \n", i, j); if (strcmp (aine_massiiv[i].matrikkel, tudeng_massiiv[j].matrikkel) == 0) { printf ("%s, %s, %s, %s, %s, %d", aine_massiiv[i].nimi, aine_massiiv[i].kood, tudeng_massiiv[j].matrikkel, tudeng_massiiv[j].eesnimi, tudeng_massiiv[j].perenimi, aine_massiiv[i].tulemus); //strcpy (koond_massiiv[i].perenimi, tudeng_massiiv[j].perenimi); //strcpy (koond_massiiv[i].eesnimi, tudeng_massiiv[j].eesnimi); //printf ("\n%s, %s", koond_massiiv[i].perenimi, koond_massiiv[i].eesnimi); } else { printf ("%d\t %d, %d\n", strcmp (aine_massiiv[i].matrikkel, tudeng_massiiv[j].matrikkel), i, j); printf ("%s, %s\n\n", aine_massiiv[i].matrikkel, tudeng_massiiv[j].matrikkel); } } } return; } void perenime_sortimine () { return; }