EX0 Langagec
EX0 Langagec
EX0 Langagec
PROGRAMMATION EN LANGAGE C
Exercice 1
a)
#include <stdio.h>
#define M 3
#define N 4
int main ( )
{
int a, b, c = 0 , d;
{
d = 0;
d += b;
c += d;
}
return 0;
}
b)
#include <stdio.h>
#define N 5
int main ( )
{
int a = 1, b = 0;
© COPYRIGHT 2023
while( a <= N )
b += a++;
printf ( "%d , %d \n", a, b ) ;
return 0;
Téléphone : 698 222 277 / 671 839 797 Facebook : Intelligentsia Corporation Email : [email protected] 32
TRAVAUX DIRIGÉS 3-ENSPY_AVRIL 2023
#include <stdio.h>
c) int main ( )
{
int a, b, c, d;
a = 1; b = 2;
c = a / b;
d = (a==b) ? 3 : 4 ;
a = ++b;
b %= 3;
printf( " a = %d , b = %d \n", a, b ) ;
b = 1;
return 0;
Exercice 2
5) Ecrire une fonction « int min(int T[], int n) » retournant la valeur du plus
petit élément du tableau T.
6) Ecrire une fonction « int position(int T[], int n, int k) » retournant la position
de la première occurrence de k dans le tableau T. On devra retourner -1 si k
n’exite pas dans le tableau.
Exercice 3
Exercice 4
Ecrire une procédure récursive « void quick_sort(int tab[], int min, int max) »
qui effectue le tri rapide par ordre croissant des éléments de tab entre les indices
« min » et « max ».
Exercice 5
Téléphone : 698 222 277 / 671 839 797 Facebook : Intelligentsia Corporation Email : [email protected] 34
TRAVAUX DIRIGÉS 3-ENSPY_AVRIL 2023
9. Créer une liste contenant des mots. Retournez le mot le plus grand suivant
l’ordre alphanumérique (On créera une structure adaptée au stockage des
mots).
Exercice 6
Le but de cet exercice est de créer n tableaux de chacun m éléments, de placer les
n pointeurs ainsi obtenus dans un tableau de pointeurs T de type int et de manier
T comme un tableau à deux dimensions.
Ecrivez les corps des fonctions suivantes :
8. « void setTijVal(int** t, int i, int j, int val) » affecte à Tij la valeur val.
NB : Pour les listes simplement chaînées, sauf en cas d’indication contraire, on
considèrera la structure de données définie en cours.
Exercice 7
© COPYRIGHT 2023
Téléphone : 698 222 277 / 671 839 797 Facebook : Intelligentsia Corporation Email : [email protected] 36