Advertisement
Guest User

tut 12 zad 2

a guest
Jan 23rd, 2017
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.32 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h> /*zbog funkcije exit()*/
  3.  
  4. int main() {
  5. FILE *ulaz;
  6. char znak, ime[20];
  7. int broj_redova = 0, broj_rijeci = 0, broj_znakova = 0, razmak = 1, velika_slova = 0, broj_samoglasnika = 0, cifre = 0;
  8.  
  9. printf ("Unesite ime datoteke: ");
  10. scanf ("%s", ime);
  11. ulaz = fopen(ime, "r");
  12. if (ulaz == NULL) {
  13. printf ("Pogreska kod otvaranja datoteke %s!\n\n", ime);
  14. exit (1);
  15. }
  16. while ((znak = fgetc(ulaz)) != EOF) {
  17. /*ako je znak novi red, povećaj broj linija za jedan*/
  18. if (znak=='\n')
  19. ++broj_redova;
  20.  
  21. /*da li je znak razmak?*/
  22. if (znak==' ' || znak=='\n' || znak=='\t')
  23. razmak=1;
  24.  
  25. else {
  26. ++broj_znakova;
  27. if(znak>='A' && znak<='Z') velika_slova++;
  28. if(znak=='A' || znak=='E' || znak=='I' || znak=='O' || znak=='U' || znak=='a' || znak=='e' || znak=='i' || znak=='o' || znak=='u') broj_samoglasnika++;
  29. if(znak>='0' && znak<='9') cifre++;
  30. /*ako je prethodni znak bio razmak a ovaj nije,
  31. povećavamo broj rijeci za 1*/
  32. if (razmak==1) ++broj_rijeci;
  33. razmak=0;
  34. }
  35. }
  36. if (broj_znakova != 0) broj_redova++;
  37. printf ("Broj redova: %d\nBroj rijeci: %d\nBroj znakova: %d\nBroj samoglasnika: %d\nBroj velikih slova: %d\nBroj cifara: %d",
  38. broj_redova, broj_rijeci, broj_znakova, broj_samoglasnika, velika_slova, cifre);
  39. fclose (ulaz);
  40. return 0;
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement