0% ont trouvé ce document utile (0 vote)
15 vues2 pages

TP1 Ranya

Le document présente plusieurs exercices de programmation en C, axés sur l'utilisation des pointeurs et de la mémoire dynamique. Les exercices incluent la manipulation de variables, tableaux, et la création d'une matrice représentant un triangle de Pascal. Chaque exercice demande d'écrire, exécuter et commenter des programmes spécifiques.

Transféré par

melkymaryem
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
15 vues2 pages

TP1 Ranya

Le document présente plusieurs exercices de programmation en C, axés sur l'utilisation des pointeurs et de la mémoire dynamique. Les exercices incluent la manipulation de variables, tableaux, et la création d'une matrice représentant un triangle de Pascal. Chaque exercice demande d'écrire, exécuter et commenter des programmes spécifiques.

Transféré par

melkymaryem
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Atelier de programmation II

Exercice1
Ecrire, exécuter et commenter le programme suivant :

#include <stdlib.h>
#include <stdio.h>
void main () {
int *ptr;
int a, b, c;
int tab[3 ];
int i;
a=1;
b=2;
c=3;
tab[0 ] = 5 ;
tab[1 ] = 8 ;
tab[2 ] = 12 ;
/* Faire en sorte que ptr reference une variable existante */
ptr = &a;
printf ("Valeur actuelle de la donnee referencee par ptr = %d\n" ,*ptr);
ptr = &b;
printf ("Valeur actuelle de la donnee referencee par ptr = %d\n" ,*ptr);
ptr = &tab[1 ];
printf ("Valeur actuelle de la donnee referencee par ptr = %d\n" ,*ptr);
/* Modifier la valeur de ce qui est reference par ptr */
ptr = &c;
printf ("Valeur actuelle de la donnee referencee par ptr = %d\n" ,*ptr);
c=4;
printf ("Valeur actuelle de la donnee referencee par ptr = %d\n" ,*ptr);
/* Reserver une zone memoire referencee par ptr */
ptr = (int*) malloc(sizeof(int));
*ptr = 10 ;
printf ("Valeur actuelle de la donnee referencee par ptr = %d\n" ,*ptr);
free(ptr);
/* Reserver une zone memoire reference par ptr II : tableau dynamique */
ptr = (int*) malloc(5 *sizeof(int));
*ptr = 1 ;
*(ptr+1 ) = 5 ;
*(ptr+2 ) = 10 ;
*(ptr+3 ) = 15 ;
*(ptr+4 ) = 20 ;
for (i=0 ; i < 5 ; i++) {
printf ("Valeur actuelle de l'element %d du tableau dynamique défini par ptr = %d\n" ,i, *(ptr+i));
}
free(ptr);
}

1
Exercice 2
Ecrire un programme C qui permet de
 Déclarer un entier i et un pointeur p vers un entier ;
 Initialiser l'entier à une valeur arbitraire et faire pointer p vers i ;
 afficher la valeur de i ;
 Modifier l'entier pointé par p (en utilisant p, pas i) ;
 afficher la valeur de i.
Exercice 3
Ecrire un programme C en utilisant les pointeurs qui permet de
 Déclarer et initialiser un tableau d'entiers t avec des valeurs.
 afficher le tableau t.
 Calculer la somme des éléments du tableau.
Exercice 4
Ecrire un programme C en utilisant les pointeurs qui permet de
 Déclarer et initialiser un tableau d'entiers t avec des valeurs.
 afficher le tableau t.
 Inverser les éléments du tableau.
Exercice 5
Ecrire un programme C en utilisant les pointeurs qui permet de
 Déclarer et initialiser un tableau d'entiers t avec des valeurs.
 afficher le tableau t.
 trier par ordre croissant les éléments du tableau.

Exercice 6
Ecrire un programme C en utilisant les pointeurs qui permet de
 Remplir un tableau d'entiers T.
 Remplir une matrice d'entiers M.
 Construire une matrice P représentant un triangle de Pascal d’ordre n.
Exp : si n=6, on obtiendra le triangle de Pascal suivant :
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1

Vous aimerez peut-être aussi