LES OPÉRATIONS DE LA LISTE CHAINÉE

Signaler
Messages postés
252
Date d'inscription
vendredi 13 juin 2003
Statut
Membre
Dernière intervention
25 avril 2011
-
Messages postés
2
Date d'inscription
lundi 30 novembre 2009
Statut
Membre
Dernière intervention
22 mai 2010
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/51654-les-operations-de-la-liste-chainee

Messages postés
2
Date d'inscription
lundi 30 novembre 2009
Statut
Membre
Dernière intervention
22 mai 2010

excellent.............
Messages postés
252
Date d'inscription
vendredi 13 juin 2003
Statut
Membre
Dernière intervention
25 avril 2011

Salut,

Quelques remarques (suggérées par un compilateur):

Lignes 51 et 52, il y a deux if et ligne 58 un else; à quel if se rapporte-t-il ? Je sais qu'il y a une réponse, mais on risque toujours de se tromper. Alors autant mettre des accolades !

Ligne 119, une variable k est déclarée; jamais utilisée.

Ligne 170, une fonction inconnue est appelée. Peut-être est-elle connue de dev-C++ mais celui-ci est obsolète...

Enfin, la fonction main DOIT retourner un int (puisqu'elle est déclarée int main())...

---
Venons-en à scanf.
«[scanf] renvoie[...] le nombre d'éléments d'entrées correctement mis en correspondance et assignés. Ce nombre peut être plus petit que le nombre d'éléments attendus, et même être nul, s'il y a une erreur de mise en correspondance.» (le manuel)
Conclusion, il FAUT vérifier quelle est la valeur retournée.
Si l'utilisateur fait une erreur de saisie, le programme peut «boucler» indéfiniment. C'est fâcheux.

---
Dans le cas 5 (du switch principal), il me semble que
z=detruire(z);
serait plus adéquat qu'un simple
detruire(z);

---
Une dernière remarque pour la route. La fonction Supprdebut est-elle récursive à dessein ? Que penserais-tu d'une version récursive comme toutes les autres ?

Ce code servirait encore mieux le néophyte s'il était agrémenté de quelques commentaires.

Bonne prog.