Buchstaben zählen
-
Hallo,
wie kann ich in einem beliebigen text die anzahl der unterschiedlichen buchstaben (a bis z) zählen?
die häufigeit je buchstabe soll in einem int-array gespeichert werden
hab mir das in etwa so gedacht:
//----------------------------------------------------------
int alphabet[26];
int letter;
char *beliebiger_text= "test bla bla";for(letter=0; letter<26; letter++)
alphabet[letter] = //so und hier sollen im ersten schleifendurchlauf alle "a" in diesem beliebiger_text-string gezählt werden..im zweiten durchlauf alle "b" usw.....wie kann ich das realisieren?
-
unsigned int num_char[26] = {0}, len = strlen(string), i; for(i = 0; i < len; i++) num_char[string[i] - 'A']++;
In der Schleife sollte man natürlich auch erst prüfen, ob das überhaupt nen Buchstabe von A-Z ist oder nen Leerzeichen, Punkt .. etc. Was mir auch noch einfällt: auf alle Buchstaben toupper anwenden, sonst bekommst du auch Probleme.