Ir ao conteúdo
  • Cadastre-se

HeartBreat

Membro Júnior
  • Posts

    16
  • Cadastrado em

  • Última visita

Tópicos solucionados

  1. O post de HeartBreat em Contar Letras de uma Mensagem usando Recursividade foi marcado como solução   
    Olha cara, tem varias coisas faltando e outras erradas, a variável "contador" tem que estar declarada como global para que o valor não se perca na recursão(nesse caso especifico), você não pode comparar uma string com um char desse forma ("Mensagem == Letra"), a iteração dentro da função recursiva também não faz sentido algum.Uma das coisas mais importantes na recursão é o caso base, é uma "condição" de parada para a função, nesse caso o '\0' no final da string, você ate colocou mas foi na parte comentada do código.O enunciado pede que o usuário digite uma palavra e uma letra 100 vezes uma de cada vez e que em cada chamada da função seja feita a contagem das letras


    Enfim, eu fiz algumas modificações e deixei o mais próximo que o enunciado pede.

     
    #include <stdio.h> #include <stdlib.h> #include <string.h> #define TAM 100 int cont = 0, i = 0; int Contar_Letra (char Mensagem[], char Letra); int main(){ char Mensagem[TAM], Letra; int l = 0; while(l<TAM){ printf("Digite a Mensagem: "); gets(Mensagem); printf("Digite a Letra: "); scanf("%c",&Letra); printf("Se repete: %i\n", Contar_Letra(Mensagem,Letra)); setbuf(stdin, NULL); cont = 0; i = 0; l++; } return 0; } int Contar_Letra(char Mensagem[], char Letra){ if(Mensagem[i] == '\0') return cont; if(Mensagem[i] == Letra){ cont++; } i++; Contar_Letra(Mensagem, Letra); }  

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!