//wczytywanie z pliku, zapis do pliku, struktura
// ciezary.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#define _CRT_SECURE_NO_DEPRECATE
struct struct_Ciezarki {
float Waga;
char Imie [20];
int Powt;
float Srednia;
};
int _tmain(int argc, _TCHAR* argv[])
{
FILE *wczytaj;
FILE *zapisz;
int i=0;
int porownanie=0;
int Powt = 1;
struct_Ciezarki Ciezarki [100];
wczytaj = fopen ("wciezary.txt","r");
if (wczytaj == NULL) {
perror ("blad");
exit(1);
}
while (!feof (wczytaj)) {
fscanf (wczytaj,"%s %f", &Ciezarki[i].Imie, &Ciezarki[i].Waga);
Ciezarki[i].Powt = 1;
printf ("%s %.2f \n", Ciezarki[i].Imie, Ciezarki[i].Waga);
for (int j=0; j<i;j++) {
porownanie = strcmp (Ciezarki[i].Imie, Ciezarki[j].Imie);
if (0 == porownanie) {
Ciezarki[j].Waga = Ciezarki[i].Waga + Ciezarki[j].Waga;
Ciezarki[j].Powt++;
i--;
}
}
i++;
}
zapisz = fopen ("zciezary.txt","w");
if (zapisz == NULL) {
perror ("blad");
fclose (wczytaj);
exit (1);
}
for (int j=0; j<i;j++) {
Ciezarki[j].Srednia = Ciezarki[j].Waga / Ciezarki[j].Powt;
printf ("%s podniosl srednio %.2f \n", Ciezarki[j].Imie,Ciezarki[j].Srednia);
fprintf (zapisz,"%s podniosl srednio %.2f \n", Ciezarki[j].Imie,Ciezarki[j].Srednia);
}
_getch();
return 0;
}
/* tak wyglada "wciezary.txt"
Adam 10
Adam 5
Lukas 14
Marcin 99
Adam 7
Marcin 53
Wiktor 51
Darek 3
Wiktor 4
Darek 5
Darek 6
*/
Comments
0 B
|👍
/👎