Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as C++ by ja ( 14 years ago )
#include "stdafx.h"
#include "stdlib.h"
#include "stdio.h"
#include <string>
struct lista
{
char nazwisko[80];
char imie[80];
int indeks;
char grupa[5];
float ocena;
lista *next;
};
void drukuj(lista *first);
struct lista *usun_wszystko(lista *first);
struct lista *dodaj(lista *first, char *nazwisko, char *imie, int indeks, char *grupa, float ocena);
//struct lista *dodaj_ostatni(lista *last, char* nazwisko, char* imie, int indeks, char* grupa, float ocena);
int main()
{
FILE *plik = fopen("wyniki.txt","r");
if(plik == NULL)
{
printf("Nie udalo sie otworzyc pliku!");
system("pause");
exit(1);
}
lista *first = NULL, *last = NULL;
char nazwisko[80];
char imie[80];
char grupa[5];
int indeks;
float ocena;
int i = 0;
while(!feof(plik))
{
printf("\nODCZYT\n");
fscanf(plik,"%s %s %d %s %f", nazwisko, imie, &indeks;, grupa, &ocena;);
printf("%s %s %d %s %f\n", nazwisko, imie, indeks, grupa, ocena);
if (i==0)
{
first = last = dodaj(first,nazwisko,imie,indeks,grupa,ocena);
printf("\nLISTA\n");
drukuj(first);
}
else
{
first = dodaj(first,nazwisko,imie,indeks,grupa,ocena);
printf("\nLISTA\n");
drukuj(first);
}
//first = dodaj(first,nazwisko,imie,indeks,grupa,ocena);
i++;
}
//printf("\n\nLISTA \n\n");
//drukuj(first);
first = last = usun_wszystko(first);
system("pause");
return EXIT_SUCCESS;
}
struct lista *dodaj(lista *first, char *nazwisko, char *imie, int indeks, char *grupa, float ocena)
{
lista *wsk;
wsk = (lista*)malloc(sizeof(lista));
strcpy(wsk->nazwisko, nazwisko);
strcpy(wsk->imie, imie);
strcpy(wsk->grupa, grupa);
wsk->indeks = indeks;
wsk->ocena = ocena;
wsk->next = first;
return wsk;
}
/*struct lista *dodaj_ostatni(lista *last, char* nazwisko, char* imie, int indeks, char* grupa, float ocena)
{
lista *wsk;
wsk = (struct lista*) malloc(sizeof(struct lista));
wsk->nazwisko = nazwisko;
wsk->imie = imie;
wsk->indeks = indeks;
wsk->grupa = grupa;
wsk->ocena = ocena;
wsk->next = NULL;
if (last!=NULL)
last->next = wsk;
return wsk;
}*/
void drukuj(lista *first)
{
while(first != NULL)
{
printf("%s %s %d %s %f\n", first->nazwisko,first->imie,first->indeks,first->grupa,first->ocena);
first = first->next;
}
}
struct lista *usun_wszystko(lista *first)
{
struct lista *wsk;
while (first!=NULL)
{
wsk = first->next;
free(first);
first = wsk;
}
return first;
}
Revise this Paste
Parent: 43735