Albo jeszcze ładniej - słownikiem:
static string CharCount(string word)
{
word = word.ToLower(); // Zmień wszystkie litery na małe
var charCount = new Dictionary<char, int>();
// Dla każdego znaku w string'u
foreach(char character in word)
{
if(charCount.ContainsKey(character))
{
// Jeżeli w słowniku jest już wpisany znak
// Zinkrementuj ilość wystąpień o 1
charCount[character]++;
}
else
{
// W przeciwnym wypadku dodaj znak
// oraz ustaw ilość wystąpień jako 1
charCount[character] = 1;
}
}
// Konwertowanie słownika na 1 string z wystąpeniami
string countAsString = "";
foreach(var character in charCount)
{
countAsString += character.Key + "-" + character.Value + " ";
}
countAsString.TrimEnd(' '); // Usuń ostatnią spację
return countAsString;
}