Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- typedef struct lista_okregow{
- char figura;
- int wsp_x, wsp_y, r;
- struct lista_okregow *next;
- }lista_o;
- typedef struct lista_prostokatow{
- char figura;
- int wsp_x, wsp_y, wsp2_x, wsp2_y;
- struct lista_prostokatow *next;
- }lista_p;
- void sortowanie (char* nazwa_pliku, lista_o** wierzcholek_o, lista_p** wierzcholek_p)
- {
- lista_o *nowy1;
- lista_p *nowy2;
- FILE * plik;
- char figura, wiersz[64];
- int wsp_x, wsp_y, r, wsp2_x, wsp2_y;
- if((plik = fopen(nazwa_pliku,"r"))==NULL)
- {
- printf("plik nie zostal otwarty");
- return NULL;
- }
- while((fgets(wiersz, sizeof(wiersz), plik)))
- {
- figura = wiersz[0];
- if(figura == 'o' || figura == 'O')
- {
- //printf("%c\n",figura );
- nowy1 = malloc(sizeof(lista_o));
- sscanf(wiersz, "%c %d %d %d", &figura, &wsp_x, &wsp_y, &r);
- nowy1 -> figura = figura;
- nowy1 -> wsp_x = wsp_x;
- nowy1 -> wsp_y = wsp_y;
- nowy1 -> r = r;
- nowy1 -> next = *wierzcholek_o;
- *wierzcholek_o = nowy1;
- }
- else if(figura == 'p' || figura == 'P')
- {
- //printf("%c\n",figura );
- nowy2 = malloc(sizeof(lista_p));
- sscanf(wiersz, "%c %d %d %d %d", &figura, &wsp_x, &wsp_y, &wsp2_x, &wsp2_y);
- nowy2 -> figura = figura;
- nowy2 -> wsp_x = wsp_x;
- nowy2 -> wsp_y = wsp_y;
- nowy2 -> wsp2_x = wsp2_x;
- nowy2 -> wsp2_y = wsp2_y;
- nowy2 -> next = *wierzcholek_p;
- *wierzcholek_p = nowy2;
- }
- }
- fclose(plik);
- }
- int main()
- {
- lista_o* wierzcholek_o = malloc(sizeof(lista_o)) , *pomoc_o;
- lista_p* wierzcholek_p = malloc(sizeof(lista_p)), *pomoc_p;
- sortowanie("figury.txt", &wierzcholek_o, &wierzcholek_p);
- pomoc_o = wierzcholek_o;
- pomoc_p = wierzcholek_p;
- while(pomoc_o != NULL)
- {
- printf("%d \n", pomoc_o->figura );
- printf("%d \n", pomoc_o->r );
- printf("%d \n", pomoc_o->wsp_x );
- printf("%d \n", pomoc_o->wsp_y );
- pomoc_o=pomoc_o->next;
- }
- while(pomoc_p != NULL)
- {
- printf("%d \n", pomoc_p->wsp_x );
- pomoc_p=pomoc_p->next;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement