I'd probably use an array of 26 ints initialised to zero, then for each letter encountered increment the relevant element. Pseudocode:
Code:
int arr[26] initialise to zero
char *str="college"
for each character c in str
  arr[str[c]-'a']++
end for
for each element e of arr
  if non-zero
    print the letter (e+'a') and the count
  end if
end for
arr[str[c]-'a']++ is the clever bit: str[c] is a char between 'a' and 'z', and subtracting 'a' from that gives us a number from 0-25 which we use as the index into the array. It may be a good idea to add some limits checking to this, for example if (str[c]>='a' && str[c]<='z') so that you don't accidentally increment something not in the array.