Advertisement
kernel_memory_dump

Вежбе 8 - задатак 2

Jan 12th, 2014
558
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.42 KB | None | 0 0
  1. /********************
  2. spisak.txt
  3. Pera
  4. Jova
  5. Marina
  6. Izabela
  7. Nikoleta
  8. Anabela
  9.  
  10. brisi.txt
  11. Pera
  12. Marina
  13. Anabela
  14.  
  15.  
  16.  
  17.  
  18. *********************/
  19.  
  20.  
  21.  
  22.  
  23. #include <stdio.h>
  24. #include <stdlib.h>
  25. #include <errno.h>
  26. #include <string.h>
  27. struct student
  28. {
  29. char ime[10];
  30. struct student *sledeci;
  31. };
  32.  
  33. int main()
  34. {
  35.  
  36. FILE *pf;
  37. FILE *ph;
  38. char str[10];
  39. struct student * novi;
  40. struct student * prethodni;
  41. struct student * trenutni;
  42. struct student * glava;
  43. struct student * tekuci;
  44. char str3[10];
  45. char str2[10];
  46.  
  47. if((pf=fopen("spisak.txt", "r"))==NULL)
  48. {
  49. perror("Ne moze\n");
  50. exit(errno);
  51. }
  52.  
  53. if((ph=fopen("brisi.txt", "r"))==NULL)
  54. {
  55. perror("Ne moze\n");
  56. exit(errno);
  57. }
  58.  
  59. glava=NULL;
  60.  
  61. while(fscanf(pf, "%s", str)!=EOF)
  62. {
  63.  
  64. novi=(struct student *)malloc(sizeof(struct student));
  65. novi->sledeci=NULL;
  66. strcpy(novi->ime,str);
  67.  
  68. if(glava==NULL)
  69.     {
  70.         glava=novi;
  71.     }
  72.     else
  73.     {
  74.         trenutni=glava;
  75.  
  76.             while(trenutni->sledeci!=NULL)
  77.                 {
  78.                     trenutni=trenutni->sledeci;
  79.                 }
  80.                
  81.         trenutni->sledeci=novi;
  82.     }
  83.    
  84.  
  85. }
  86.  
  87.  
  88. trenutni=glava;
  89.  
  90. while(trenutni!=NULL)
  91. {
  92. printf("%s\n", trenutni->ime);
  93.  trenutni=trenutni->sledeci;
  94. }
  95.  
  96.  
  97. while(fscanf(ph, "%s", str2)!=EOF)
  98. {
  99. trenutni=glava;
  100. prethodni = glava;
  101. printf("tekuci  while %s\n", trenutni->ime);
  102. while(trenutni!=NULL && strcmp(trenutni->ime,str2)  )
  103. {
  104. printf("unutrasnji while %s\n", trenutni->ime);
  105. prethodni=trenutni;
  106. trenutni=trenutni->sledeci;
  107. }
  108. printf("nakon while:%s\n", trenutni->ime);
  109. if(trenutni!=NULL){
  110. prethodni->sledeci=trenutni->sledeci;
  111.   if (trenutni == glava){
  112.     glava = trenutni->sledeci;
  113. }
  114. free(trenutni);
  115. }
  116. }
  117.  
  118. trenutni=glava;
  119.  
  120. while(trenutni!=NULL)
  121. {
  122. printf("%s\n", trenutni->ime);
  123.  trenutni=trenutni->sledeci;
  124. }
  125.  
  126.  
  127.  
  128. tekuci=glava;
  129.  
  130. while(tekuci!=NULL)
  131. {
  132. trenutni=tekuci;
  133. printf("%stekuci WHILEEE NIJE PUKO\n", trenutni->ime);
  134. while(trenutni->sledeci!=NULL)
  135. {
  136. printf("%sUNUTRASNJI WHILEEE NIJE PUKO\n", trenutni->ime);
  137. prethodni=trenutni;
  138. trenutni=trenutni->sledeci;
  139. printf("%cOcekujemo I\n",trenutni->ime[0]);
  140. if(trenutni->ime[0]<prethodni->ime[0])
  141. {
  142. printf("%sIF NIJE PUKO\n", trenutni->ime);
  143. strcpy(str3,trenutni->ime);
  144. strcpy(trenutni->ime,prethodni->ime);
  145. strcpy(prethodni->ime,str3);
  146. }
  147. }
  148. tekuci=tekuci->sledeci;
  149. printf("%stekuci WHILEEE NIJE PUKO  DOLE KRSJJJJ\n", trenutni->ime);
  150. }
  151.  
  152. trenutni=glava;
  153. while(trenutni!=NULL)
  154. {
  155. printf("%s\n", trenutni->ime);
  156.  trenutni=trenutni->sledeci;
  157. }
  158.  
  159.  
  160.  
  161.  
  162. return 0;
  163. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement