Académique Documents
Professionnel Documents
Culture Documents
chaines
Langage C
BT2
Anthony Desvernois
v. 1.0
9 pages
BT2-PROGC-TP05
Langage C
2008-2009
Proprits du document
Auteur
Valid par
Version
Nombre de pages
Rfrence
Anthony Desvernois
Julien Stuyck
1.0
9
BT2-PROGC-TP05
Historique du document
Date
12/02/2009
Version
1.0
15/02/2009
1.1
Auteur
Anthony
Desvernois
Anthony
Desvernois
Accs au document
La dernire version de ce document est tlchargeable ladresse suivante :
www.intranet.isbp.fr
Destinataires
Ce document est destin aux tudiants de SupBiotech en BT2
2/9
Langage C
2008-2009
Contents
1.
But du TP ......................................................................................................................................... 4
2.
Les bases.......................................................................................................................................... 5
2.1.
2.2.
Ajout en tte............................................................................................................................ 5
2.3.
2.4.
Recherche ................................................................................................................................ 6
3.
3.1.
Suppression ............................................................................................................................. 7
3.2.
3.3.
Echange ................................................................................................................................... 8
4.
Warrior ............................................................................................................................................ 9
4.1.
4.2.
3/9
Langage C
2008-2009
1. But du TP
Le but du TP est de vous entrainer la manipulation des listes chaines vu en TD. Pour cela, vous
allez utiliser une liste dlve identifi par leur UID.
La structure que vous utiliserez pour manipuler les tudiants est la suivante :
typedef struct student {
unsigned int uid;
struct student* next;
} s_student;
Une archive contenant les sources du TP ( complter) est disponible ladresse suivante :
http://perso.isbp.fr/~desver_a/isbp/bt2-progc-tp05.tar.bz2
Pour rappel, lextraction de cette archive se fera via la commande suivante :
4/9
Langage C
2008-2009
2. Les bases
2.1. Cration dun tudiant
But
Fichier
bases.c
Prototype :
s_student*
Fichier
bases.c
Prototype :
s_student* insert_head(unsigned int uid, s_student* list);
Fichier
bases.c
Prototype :
s_student* insert_tail(unsigned int uid, s_student* list);
5/9
Langage C
2.4. Recherche
But
Fichier
bases.c
Prototype :
int
6/9
2008-2009
Langage C
2008-2009
3. Un peu de manipulation
3.1.Suppression
But
Fichier
bases.c
Prototype :
s_student* delete(unsigned int uid, s_student* list);
Si llve nexiste pas, ne rien faire.
3.2.
But
Fichier
medium.c
Prototype :
s_student* insert_n(unsigned int uid, unsigned int place,
s_student* list);
7/9
Langage C
2008-2009
3.3. Echange
But
Fichier
medium.c
Prototype :
s_student* swap(unsigned int uid, unsigned int uid2,
s_student* list);
Si lun des deux tudiants nexiste pas, ne rien faire. Vous devez effectuer un change des structures,
et pas uniquement des UID.
8/9
Langage C
2008-2009
4. Warrior
4.1. Insertion en place
But
Fichier
warrior.c
Prototype :
s_student* insert(unsigned int uid, s_student*
sorted_list);
Vous pouvez considrer que la liste passe en argument est trie. Le tri est fait en fonction des UID.
Fichier
warrior.c
Prototype :
s_student* sort(s_student*
Le tri doit tre fait en fonction des UID.
9/9
unsorted_list);