Récursivité en C [Résolu]

Signaler
Messages postés
23
Date d'inscription
mercredi 7 décembre 2005
Statut
Membre
Dernière intervention
9 juin 2006
-
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
-
bonjour tout le monde,

j'ai besoin d'utiliser une méthode récursive dans mon programme en C. Est-ce que c'est possible et, si oui, y a-t-il une syntaxe particulière pour définir qu'une fonction va être récursive ?

Pour être plus précis, j'ai :

typedef struct {
T_Model* Father;
T_Model* FirstSon;
T_Model* NextBrother;
T_Node* Node;
} T_Model;

et T_Node est défini comme suit :

typedef struct {
int valeur;
T_Node* next;
} T_Node;

Mon objectif est de parcourir toutes les valeurs des T_Node contenus dans les T_Model.... Si la valeur que je lis n'a jamais été lue avant je dois rajouter un T_Objet à une liste chainée T_Objet*. vous auriez une idée de la façon dont je pourrais m'y prendre sachant que cette structure de données m'est imposée, je ne peux pas la modifier !

Merci pour votre aide en tous cas ;)

Cédric

1 réponse

Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
voici une fct récursive (factorielle)

int fact(x)
{
if(x <= 1)
  return 1;
else
  return x*fact(x-1);
}

il suffit d'avoir une condition d'arrêt et de rappeler la même fct.