File: Stare vježbe/vjezbe12/75__datoteka_brojanje.c

  1. /*
  2.   75__datoteka_primjer.c
  3.   -----
  4.   Program cita tekstualnu datoteku i racuna koliko u njoj
  5.   ima slova, koliko brojki, a koliko ostalih znakova.
  6.   Ime datoteke navodi se kao argument komandne linije.
  7. */
  8.  
  9. #include <stdio.h>
  10. #include <ctype.h>
  11.  
  12. int main (int argc, char *argv[]) {
  13. FILE *myfile;
  14. char c;
  15. int alphae = 0;
  16. int numbs = 0;
  17. int ostalo = 0;
  18.  
  19. if (argc != 2) {
  20. printf ("Program kao argument prima ime jedne datoteke!\n");
  21. return 1;
  22. }
  23. if (myfile = fopen (argv[1], "r")) {
  24. while ((c = fgetc(myfile)) != EOF) {
  25. if (isalpha(c))
  26. alphae++;
  27. else if (isdigit(c))
  28. numbs++;
  29. else
  30. ostalo++;
  31. }
  32. printf("U datoteci %s nalazi se:\n", argv[1]);
  33. printf("%d slova, %d znamenki i %d ostalih znakova.\n",
  34. alphae, numbs, ostalo);
  35. fclose (myfile);
  36. return 0;
  37. }
  38. else {
  39. printf ("Program nije uspio otvoriti datoteku %s!\n", argv[1]);
  40. return 1;
  41. }
  42. }
  43.