Voici une solution simple :
void liste::affiche(unsigned combien)// affiche combien éléments de la liste// (et nombre au maximum){ if (combien > nombre) combien = nombre; int reste = nombre -combien; while (combien--) { cout << '\t' << valeur(); avance(); } avance(reste); cout << '\n';}
On avance à la fin de reste
positions pour remettre le début de la liste sur sa valeur de départ.