#include #include #define N 100 typedef int S; struct tas { int nb_noeuds; S *tab; }; typedef struct tas *arbrepa; arbrepa Vide_par() { S *tab = malloc(sizeof(S)*N); arbrepa a = malloc(sizeof(struct tas)); a->tab = tab; a->nb_noeuds = 0; return a; } arbrepa Ajoute(arbrepa a, S x) { a->tab[a->nb_noeuds++] = x; return a; } int nb_noeuds(arbrepa a) { return a->nb_noeuds; } arbrepa enleve(arbrepa a) { if(a->nb_noeuds>0) { a->nb_noeuds--; } return a; } arbrepa remplace(arbrepa a, S x, int k) { int n = a->nb_noeuds; if(n>0) { a->tab[k] = x; return a; } perror("bottom"); exit(1); } S etiquette(arbrepa a, int k) { int n = a->nb_noeuds; if(k>=0 && ktab[k]; } perror("bottom"); exit(1); } arbrepa echange(arbrepa a, int k1, int k2) { int n = a->nb_noeuds; if(k1>=0 && k1=0 && k2tab[k1]; a->tab[k1] = a->tab[k2]; a->tab[k2] = tmp; return a; } perror("bottom"); exit(1); } main() {}