Advertisement
mali_cox

AMOGLASIDOC

Jan 14th, 2016
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.50 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  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, broj_samoglasnika = 0, broj_velikih_slova = 0, br_cifara = 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, povecaj broj linija za jedan*/
  18.     if (znak=='\n')
  19.     broj_redova++;
  20.     /*Da li je znak samoglasnik?*/
  21.     if (znak == 'a' || znak == 'A' || znak == 'e' || znak == 'E' || znak == 'i' || znak == 'I' || znak == 'o' || znak == 'O' ||
  22.         znak == 'u' || znak == 'U')
  23.         broj_samoglasnika++;
  24.     /*Da li je znak veliko slovo?*/
  25.     if (znak >= 'A' && znak <= 'Z')
  26.     broj_velikih_slova++;
  27.     /*Da li je znak veliko cifra?*/
  28.     if (znak >= '0' && znak <= '9')
  29.     br_cifara++;
  30.     /*Da li je znak razmak?*/
  31.     if(znak==' ' || znak =='\n' || znak =='\t')
  32.     razmak=1;
  33.     else {
  34.         broj_znakova++;
  35.         /*Ako je prethodni znak bio razmak a ovaj nije, povecavamo broj rijeci za 1*/
  36.         if(razmak==1) broj_rijeci++;
  37.         razmak=0;
  38.     }
  39. }
  40. if(broj_znakova!=0) broj_redova++;
  41. printf("Broj redova; %d\nBroj znakova: %d\nBroj rijeci: %d\nBroj samoglasnika: %d\nBroj velikih slova: %d\nBroj cifara: %d\n",
  42.         broj_redova, broj_znakova, broj_rijeci, broj_samoglasnika, broj_velikih_slova, br_cifara);
  43. fclose(ulaz);
  44.     return 0;
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement