CLUB SDAD
Faculté des Scienc es et Techniques Guéliz
Université Cadi Ayad,
Marrak ech
Tutoriel de -C-
Semaine 03
Les Tableaux en langage C
Réalipar : Z. ELMOURABIT ; K. NAIM ; I. ASAKOUR ; S. BASKAR
CLUB SDAD
L’objectif :
Comprendre la notion des tableaux en C, avec des manipulations en utilisant les
fonctions, au but de comment déclarer un tableaux, comment faire le remplissage
et aussi affichage …..
Prêts ?
On Commence !...
Tutoriel C Semaine02
CLUB SDAD
C’est quoi un tableau en C ?
Les tableaux sont des regroupements de plusieurs objets.
Cependant, à l’inverse de celles-ci, les tableaux regroupent des
données de même type et de manière contig
Tableau de 1 dimension :
La définition d’un tableau nécessite trois informations:
Le type des éléments du tableau (rappelez-vous: un
tableau est une suite de données de même type);
Le nom du tableau (en d’autres mots, son identificateur);
La longueur du tableau (autrement dit, le nombre
d’éléments qui le composent). Cette dernière doit être une
expression entière.
Comme pour les variables, il est possible d’initialiser un tableau
ou, plus précisément, tout ou une partie de ses éléments.
L’initialisation se réalise de la même manière que pour les
structures, c’est-à-dire à l’aide d’une liste d’initialisation,
séquentielle ou sélective.
Tutoriel C Semaine02
CLUB SDAD
Tableau de 2 dimensions :
Jusqu’à présent, nous avons travaillé avec des tableaux
linéaires, c’est-à-dire dont les éléments se suivaient les uns à la
suite des autres. Il s’agit de tableaux dit à une dimension ou
unidimensionnels.
Cependant, certaines données peuvent être représentées plus
simplement sous la forme de tableaux à deux dimensions
Tutoriel C Semaine02
CLUB SDAD
(autrement dit, organisées en lignes et en colonnes). C’est par
exemple le cas des images (non vectorielles) qui sont des
matrices de pixels ou, plus simplement, d’une grille de Sudoku
qui est organisée en neuf lignes et en neuf colonnes.
Le langage C vous permet de créer et de rer ce type de
tableaux dit multidimensionnels (en fait, des tableaux de
tableaux) et ce, bien au-delà de deux dimensions.
Prêt !!
Tutoriel C Semaine02
CLUB SDAD
Ex00 :
Ecrire une fonction qui remplit un tableau tab formé de n entiers.Cette
fonction doit aussi afficher les valeurs de ce tableau
Elle devra être prototypée de la façon suivante :
Ex01 :
Ecrire une fonction qui retourne le nombre de fois de répétition d’une une
valeur entière x cherchée dans un tableau tab de n entiers.
Elle devra être prototypée de la façon suivante :
Le remplissage et affichage du tableau se fait avec la fonction d’ex00
Tutoriel C Semaine02
CLUB SDAD
EX02 :
Ecrire une fonction qui trie un tableau Tb formé de n entiers.
Elle devra être prototypée de la façon suivante :
Tutoriel C Semaine02
CLUB SDAD
EX03 :
Ecrire un programme qui permet de fusionner deux tableaux tries TA et
TB contenant respectivement n et m éléments. Le sultat est un tableau
trie TC avec (n+m) éléments. Utiliser trois indices IA, IB et IFUS.
Comparer TA[IA] et TB[IB]; remplacer TC[IFUS] par le plus petit des
deux éléments (appeler la fonction précédente) ; avancer dans le tableau
TC et dans le tableau qui a contribué son ément. Lorsque l'un des deux
tableaux TA ou TB est épuisé, il suffit de recopier les éléments restants
de l'autre tableau dans le tableau TC.
EX04 :
Ecrire une fonction retourne la min et max et la moyen des valeur d’un
tableau T passe en argument
Elle devra être prototypée de la façon suivante :
Tutoriel C Semaine02
CLUB SDAD
EX05 :
Ecrire une fonction qui renvoie la somme, la soustraction, le produit des
valeurs de 2 tableaux tab1 et tab2 :
Elle devra être prototypée de la façon suivante :
EX06 :
Ecrire un programme permettant de
Remplir une matrice ;
Afficher une matrice ;
Calculer la somme de deux matrices M1 et M2 ;
Calculer le produit de deux matrices M1 et M2 ;
Calculer la transposition d'une matrice.
Tutoriel C Semaine02
CLUB SDAD
EX07 : (les chaines de caractères )
Ecrire un programme qui contient l’identique des fonctions suivantes :
Lire et afficher une chaine de caractères ;
toupper() pour afficher la chaine en majuscule ;
tolower() pour afficher la chaine en miniscule ;
EX08 :
Écrire une fonction ft_firstword qui affiche la première mot d’une phrase
donne en chaine de caractères .
Ex :
Bonjour ‘ affiche ‘’Bonjour’’
Salut cv ‘’ affiche ‘’Salut’’
Salut,cv ‘’ affiche’Salut,cv’’
EX10 :
Reproduire l’identique de la fonction atoi() asciitointeger
Elle devra être prototypée de la façon suivante :
Tutoriel C Semaine02
CLUB SDAD