Retourner 2 valeur en C
Résolu
didi
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
salut a toi progammeur !
Bonjour tout le monde je suis en train de realiser un petit projet en C: implementation de B arbres .
voila la fonction qui me pose probleme : rechercher_une _clé(arbre a, noeud x, int k) , la cle etant k, la racine de l'arbre x et l'arbre a.
A la fin de cette fonction je voudrais retourner 2 valeur : un pointeur vers le noeud qui contient la clé ( dans la fonction je le trouve recursivement ) et aussi un entier qui est l'indice du tableau de clé(le tableau de cle se trouve dans la structure noeud.
Voici ou j'en suis :
struct noeud{
int n ; /* nb_cle*/
int * cle ;/* tableau de clé*/
bool feuille ;/* est une feuille ?*/
noeud * c ;/*le tableau des noeud enfant */
};
struct arbre{
int ordre ;
noeud racine ;
};
int rechercher_B_arbre(arbre a, noeud x, int k){
int i=1 ;
while(i <= x->n && k > x->cle[i]){
i=i+1 ;
if(i <= x->n && k = x->cle[i])
return x[i]; /* le probleme est la ! car ici je ne retourne que un entier :( */
if(x->feuille)
return NULL ;
else
return rechercher_B_arbre(a, x->c[i], k);
}
}
merci, merci pour l'aide que vous apporterez, je galere !
si je suis pas assez clair dans mes donnée hesitez pas a me redemander des infos .
Bonjour tout le monde je suis en train de realiser un petit projet en C: implementation de B arbres .
voila la fonction qui me pose probleme : rechercher_une _clé(arbre a, noeud x, int k) , la cle etant k, la racine de l'arbre x et l'arbre a.
A la fin de cette fonction je voudrais retourner 2 valeur : un pointeur vers le noeud qui contient la clé ( dans la fonction je le trouve recursivement ) et aussi un entier qui est l'indice du tableau de clé(le tableau de cle se trouve dans la structure noeud.
Voici ou j'en suis :
struct noeud{
int n ; /* nb_cle*/
int * cle ;/* tableau de clé*/
bool feuille ;/* est une feuille ?*/
noeud * c ;/*le tableau des noeud enfant */
};
struct arbre{
int ordre ;
noeud racine ;
};
int rechercher_B_arbre(arbre a, noeud x, int k){
int i=1 ;
while(i <= x->n && k > x->cle[i]){
i=i+1 ;
if(i <= x->n && k = x->cle[i])
return x[i]; /* le probleme est la ! car ici je ne retourne que un entier :( */
if(x->feuille)
return NULL ;
else
return rechercher_B_arbre(a, x->c[i], k);
}
}
merci, merci pour l'aide que vous apporterez, je galere !
si je suis pas assez clair dans mes donnée hesitez pas a me redemander des infos .
A voir également:
- Vba fonction retourne plusieurs valeurs
- Retourner ecran pc - Guide
- Supercopier 2 - Télécharger - Gestion de fichiers
- Comment retourner une video - Guide
- 2 ecran pc - Guide
- Paris multiple 2/6 explication ✓ - Forum Loisirs / Divertissements