Advertisement
Guest User

Untitled

a guest
May 23rd, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.16 KB | None | 0 0
  1. Kako bi smanjio nered alatničar je odlučio na svoj stog baciti samo one alate kojih ima manje od 10 komada. Napišite funkcije za inicijalizaciju i dodavanje elemenata na stog realiziran jednostruko povezanom listom. Napišite i glavni program koji mora učitati sve zapise o alatima iz zadane datoteke te na stog dodati sve alate čija je količina manja od 10.
  2.  
  3. #include <stdio.h>
  4. #include <malloc.h>
  5.  
  6. typedef struct{
  7. char alat[20+1];
  8. int kolicina;
  9. }zapis;
  10.  
  11. typedef struct at{
  12. tip element;
  13. struct at *sljed;
  14. } atom;
  15. typedef struct {
  16. atom *vrh;
  17. } Stog;
  18.  
  19. void init_stog(Stog *stog){
  20. stog->vrh=NULL;
  21. }
  22.  
  23. int dodaj(tip element, Stog *stog){
  24. atom *novi;
  25. if((novi=(atom*)malloc(sizeof(atom)))!=NULL){
  26. novi->element=element;
  27. novi->sljed=stog->vrh;
  28. stog->vrh=novi;
  29. return 1;
  30. }
  31. else return 0;
  32. }
  33.  
  34. int main( ) {
  35. FILE *alatnica;
  36. zapis z;
  37. Stog stog;
  38.  
  39. init_stog(&stog);
  40. alatnica=fopen("alatnica.txt", "r");
  41.  
  42. while(fscanf(alatnica, "%s %d", z.alat, &z.kolicina)!=EOF){
  43. if(z.kolicina<10){
  44. dodaj(z, &stog);
  45. printf("Dodan: %20s - %4d komada\n", z.alat, z.kolicina);
  46. }
  47. }
  48. fclose(alatnica);
  49. return 0;
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement