DONc jrékapitule, en fait j'ai 2 exo que j'ai proposé :
le 1er: EXO C :
1) Proposer une déclaration de structure de données en C qui permette de créer, par la suite, une liste simplement chainée, notée L, formée de cellules pouvant contenir pour chacune d'entres elles:
_ un indice "ind" représentant le rang de la cellule dans la liste,
_ une valeur numérique réelle "x" codée sur 4 octets,
_ un lien vers la cellule suivante
2) Une liste chaînée est dite ordonnée (ou triée) si chaque maillon, qui n’est pas le dernier, porte une valeur numérique, x, inférieur ou égale à la valeur portée par son successeur. Ecrire un bout de programme ou une fonction qui, étant donné un réel y et une liste L, créer une cellule portant l’information y et l’insérer dans la liste à la place qu’il faut pour que la liste reste ordonnée. On supposera ici, que la liste L obtenue à l’aide de la déclaration proposée à la question 1 a été préalablement ordonnée avant insertion de la nouvelle valeur.
3) La procédure d’insertion d’une nouvelle valeur dans la liste de la question 2 provoque une invalidation de l’indexation portée par l’indice noté ind. Proposer une fonction qui réalise une mise à jour des indices ind des cellules de la liste.
Et lexo 2 : Aprés avoir commenté les instructions suivante, donner pour chaque ligne le résultat:
int a[10], *pa, x;
a[0]=11; a[1]=22; a[2]=33; a[3]=44
pa=&a[0];
x=*pa;
pa++;
x=*pa+1;
x=*(pa+1);
x=*++pa;
x=++*pa;
x=*pa++;