Home- Exercices - Solutions des exercices

 

Page Précédente - Page Suivante


Exercices chapitre 9 : Les pointeurs

Exercice 9.1

Soit le programme suivant :

 
   main()
   {
      int A = 1;
      int B = 2;
      int C = 3;
      int *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;
   }

Complétez le tableau suivant

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 


Exercice 9.2

En utilisant les pointeurs, écrire un programme qui permet de :

Exercice 9.3

Donnez un exemple des pointeurs qui pointe derrière un tableau.

Exercice 9.4

Soit P un pointeur.
On considère que P  'pointe' sur un tableau T:

   int T[] = {12, 23, 34, 45, 56, 67, 78, 89, 90};
   int *P;
   P = T;

Donnez le résultat des expressions suivantes:

       a)     *P+2   
       b)     *(P+2) 
       c)     &P+1   
       d)     &T[4]-3       
       e)     T+3    
       f)     &T[7]-P       
       g)     P+(*P-10)     
       h)     *(P+*(P+8)-T[7])     

Exercice 9.5

En utilisant deux pointeurs, écrire un programme en C qui permet de :

Exercice 9.6

En utilisant deux pointeurs et une variable X, de ranger les éléments d’une tableau T dans l’ordre inverse.



Home- Exercices - Solutions des exercices
Copyright © 2019