///////////////////////////////////////////////////////////////////////
// ITS – Visoka Škola Strukovnih Studija Za Informacione Tehnologije
// https://www.its.edu.rs/
// Predmet: Osnovi Programiranja – Programski jezik C
//
// Primer: Program koji broji pojavljivanja pojedinacnih cifara,
//            blankova, malih i velikih slova i ostalih znakova na ulazu,
//            unos se prekida prelaskom u novi red
///////////////////////////////////////////////////////////////////////

#include <stdio.h>
main()
{
  int znak, br;
  // brojac malih i velikih slova, blankova i ostalih znakova na ulazu
  int blank = 0, others = 0, malo = 0, veliko = 0;
  // za cuvanje broja pojavljivanja cifara od 0 do 9
  int digits[10];
  // inicijalizacija
  for(br=0; br<10; ++br)
    digits[br]=0;
  // poruka korisniku
  printf("Unesite proizvoljan niz znakova:
");
  // prebrojavanje ulaznih znakova
  while((znak=getchar())!='
' )
    if(znak >='0' && znak<='9' ) // da li je cifra
      ++digits[znak -'0'];
    else if ( znak==' ' || znak==' ' ) // da li je blanko
      ++blank;
    else if ( znak>='a' && znak<='z') // da li je malo slovo
      ++malo;
    else if ( znak>='A' && znak<='Z') // da li je veliko slovo
      ++veliko;
    else
      // ili je neki drugi znak 
      ++others;
  // prikaz broja cifara 
  for( br=0; br<10; ++br )
    printf( "Cifra %d se pojavljuje %d puta
", br, digits[br] );
  // broj slova i znakova 
  printf("
Blankova ima: %d, Malih slova ima: %d
Velikih slova ima:%d, Ostalih znakova ima: %d
", blank, malo, veliko, others);
}