Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2020
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.88 KB | None | 0 0
  1. typedef struct lista_okregow{
  2. char figura;
  3. int wsp_x, wsp_y, r;
  4. struct lista_okregow *next;
  5. }lista_o;
  6.  
  7. typedef struct lista_prostokatow{
  8. char figura;
  9. int wsp_x, wsp_y, wsp2_x, wsp2_y;
  10. struct lista_prostokatow *next;
  11. }lista_p;
  12.  
  13. void sortowanie (char* nazwa_pliku, lista_o* listaokr, lista_p* listprost)
  14. {
  15. lista_o *wierzcholek1, *nowy1;
  16. lista_p *wierzcholek2, *nowy2;
  17. FILE * plik;
  18. char figura;
  19. int wsp_x, wsp_y, r, wsp2_x, wsp2_y;
  20.  
  21. if((plik = fopen(nazwa_pliku,"r"))==NULL)
  22. {
  23. printf("plik nie zosta³ otwarty");
  24. return NULL;
  25. }
  26. wierzcholek1 = NULL;
  27. wierzcholek2 = NULL;
  28.  
  29. while((fscanf(plik, "%s", &figura))!=EOF)
  30. {
  31. if(figura == 'o' && figura == 'O')
  32. {
  33. nowy1 = malloc(sizeof(lista_o));
  34. fscanf(plik, "%d %d %d", &wsp_x, &wsp_y, &r);
  35. strcpy(nowy1 -> figura, figura);
  36. nowy1 -> wsp_x = wsp_x;
  37. nowy1 -> wsp_y = wsp_y;
  38. nowy1 -> r = r;
  39. nowy1 -> next = wierzcholek1;
  40. wierzcholek1 = nowy1;
  41. }
  42. else if(figura == 'p' && figura == 'P')
  43. {
  44. nowy2 = malloc(sizeof(lista_p));
  45. fscanf(plik, "%d %d %d %d", &wsp_x, &wsp_y, &wsp2_x, &wsp2_y);
  46. strcpy(nowy2 -> figura, figura);
  47. nowy2 -> wsp_x = wsp_x;
  48. nowy2 -> wsp_y = wsp_y;
  49. nowy2 -> wsp2_x = wsp2_x;
  50. nowy2 -> wsp2_y = wsp2_y;
  51. nowy2 -> next = wierzcholek2;
  52. wierzcholek2 = nowy2;
  53. }
  54. }
  55. fclose(plik);
  56. }
  57.  
  58. int main()
  59. {
  60.  
  61.  
  62. lista_o* wierzcholek_o = NULL, *pomoc_o;
  63. lista_p* wierzcholek_p = NULL, *pomoc_u;
  64.  
  65. wierzcholek_o=sortowanie("figury.txt");
  66.  
  67. while(pomoc_o != NULL)
  68. {
  69. printf("%s \n", pomoc_o -> figura);
  70. pomoc_o=pomoc_o->next;
  71. }
  72.  
  73. return 0;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement