Programação Imperativa

100 Questões Fichas Testes/Exames

Questão 14: charMaisFreq

Voltar

Defina uma função char charMaisFreq (char s[]) que determina qual o caracter mais frequente numa string. A função deverá retornar 0 no caso de s ser a string vazia.

Exemplo

> charMaisFreq("Programacao")
(char) 'a'

Resolução

int freqC(char ch, char s[]) {
    int i, freq = 0;
    for(i = 0; s[i]; i++) {
        if(s[i] == ch) freq++;
    }
    return freq;
}

char charMaisFreq(char s[]) {
    char maisFreq = 0;
    int i, freqMax = 0, freq;
    for(i = 0; s[i]; i++) {
        if((freq = freqC(s[i],s)) > freqMax) {
            freqMax = freq;
            maisFreq = s[i];
        }
    }
    return maisFreq;
}