Bonsoir;
J'ai un exercice d'entrainent sur les fonctions récursives où le but est d'afficher le nombre de fois qu'un caractère apparaît dans une chaine donnée.
J'ai faits une procédure permettant cela (qui marche) mais je ne suis pas sûr que ce soit une vraie récursivité (proprement faite).
Voici le code :
merci d'avanceCode:#include <stdio.h> void oc(char chaine[100], char caract, int nb, int *ptr_n) { if(*ptr_n<100) { if(chaine[*ptr_n] == caract) { ++nb; } *ptr_n += 1; oc(chaine, caract, nb, ptr_n); }else { printf("Il y a %d %c dans la chaine\n", nb, caract); } } int main() { int n = 0; char chaine[100], caract; printf("Entrez une chaine : \n"); scanf("%s", chaine); getchar(); printf("Entrez un caractère : \n"); scanf("%c", &caract); oc(chaine, caract, 0, &n); return 0; }![]()
-----