Année universitaire 2002-2003
espace

Licence d'informatique
Module 4 - partie "C / shell"



Travaux pratiques 5 :

  • 1. Manipulation des chaînes de caractères.
  • 2. Exercice 1 : inversion d'une chaîne de caractères.
  • 3. Exercice 2 : liste chaînée de caractères.
  • 4. Exercice 3 : inversion de chaînage.

  • 1. Manipulation des chaînes de caractères.

    Pour la manipulation des chaînes de caractères, il est possible d'utiliser les fonctions suivantes, accessibles grâce à l'inclusion du fichier string.h en début de programme :

    2. Exercice 1.

    Écrire un programme qui inverse une chaîne de caractères tapée au clavier par l'utilisateur, en utilisant les fonctions de manipulation de chaînes présentes dans la bibliothèque de fonctions string.h. On déclarera dans le programme principal trois tableaux de caractères :

    Remarques :

    3. Exercice 2.

    Répondre à la même question que l'exercice 1, en utilisant une liste chaînée pour enregistrer la chaîne de caractères. Chaque élément de la liste contiendra un caractère et un pointeur vers le caractère suivant :

    On commencera par lire la chaîne de caractères et par créer la liste chaînée par ajouts successifs d'éléments en queue, en veillant à ne pas allouer d'espace mémoire superflu (le nombre de structures créées doit être égal au nombre de caractères de la chaîne). Ensuite, on affichera le contenu de la liste chaînée, en guise de vérification. Enfin, on inversera les valeurs des champs car deux à deux, en procédant de la manière suivante :

    Remarques :

    Contrôle des allocations dynamiques :

    4. Exercice 3.

    Répondre à la même question que précédemment, en utilisant une liste chaînée du type défini plus haut, puis en reconstruisant le chaînage à l'envers, et enfin en affichant le nouveau chaînage.

    Attention :


    Ces pages ont été réalisées par A. Crouzil, J.D. Durou et Ph. Joly.
    Pour tout commentaire, envoyer un mail à crouzil@irit.fr, à durou@irit.fr ou à Philippe.Joly@irit.fr.