Vous êtes sur la page 1sur 2

TP 2 Les pointeurs

TP 2
Exercice 1
#include<stdio.h>
void main( )
{ int A = 1, B = 2, C = 3, *P1, *P2;
P1=&A;
P2=&C;
*P1=(*P2)++;
P1=P2;
P2=&B;
*P1-=*P2;
++*P2;
*P1*=*P2;
A=++*P2**P1;
P1=&A;
*P2=*P1/=*P2;
}

Copier le tableau suivant et compléter le pour chaque instruction du programme ci-


dessus.

A B C P1 P2
Init. 1 2 3 / /
P1=&A 1 2 3 &A /
P2=&C

*P1=(*P2)++

P1=P2
P2=&B
*P1-=*P2
++*P2
*P1*=*P2

A=++*P2**P1

P1=&A

*P2=*P1/=*P2
TP 2 Les pointeurs

Exercice 2
Ecrire un programme C qui permet de lire un tableau T d’entiers (dimension max
50) et de déterminer et d’afficher les positions de la valeur maximale.
Utiliser le formalisme pointeur à chaque fois cela est possible.
EXP :
T 5 20 7 3 20 -10 14 19 20 6
La valeur maximale est 20. Les
positions sont : 2 5 9
Exercice 3
Ecrire un programme qui permet de lire une chaîne de caractères comportant
éventuellement des parenthèses. On suppose que l’utilisation des parenthèses dans
cette chaîne est correcte. Le résultat de ce programme sera cette même chaîne à
laquelle on aura enlevé les parenthèses et la partie de la chaîne qu’elles délimitent.
EXP :
ENTREE : CH="ORDI(ERREUR)NATEUR" SORTIE :
CH="ORDINATEUR"
RQ :
 Utiliser le formalisme pointeur à chaque fois que cela est possible.
 Utiliser une seule chaîne.
Exercice 4
Ecrire un programme qui range les éléments d'un tableau A de type int dans l'ordre
inverse. Le programme utilisera des pointeurs P1 et P2 et une variable
numérique AIDE pour la permutation des éléments.
Exercice 5
Ecrire de deux façons différentes, un programme qui vérifie, sans utiliser une
fonction de <string>, si une chaîne CH introduite au clavier est palindrome :
a) en utilisant uniquement le formalisme tableau ;
b) en utilisant des pointeurs au lieu des indices numériques.
Exercice 6
Ecrire un programme qui lit deux tableaux A et B et leurs dimensions respectives
N et M au clavier et qui ajoute les éléments de B à la fin de A. Utiliser le
formalisme pointeur à chaque fois que cela est possible.
Exercice 7
Ecrire un programme qui lit un entier X et un tableau A du type int au clavier et élimine
toutes les occurrences de X dans A en tassant les éléments restants. Le programme
utilisera deux pointeurs P1 et P2 pour parcourir le tableau.
Exercice 8
Ecrire un programme qui lit une chaîne de caractères CH et détermine la
longueur de la chaîne à l'aide d'un pointeur P. Le programme n'utilisera pas de
variables numériques.

Vous aimerez peut-être aussi