Vous êtes sur la page 1sur 15

Exercice 1 :

#include <stdio.h>

#define SIZE 6

void inverseTableau(int tableau[], int taille) {

int i, temp;

for (i = 0; i < taille / 2; i++) {

temp = tableau[i];

tableau[i] = tableau[taille - i - 1];

tableau[taille - i - 1] = temp;

int main() {

int T[SIZE] = {15, 10, 22, 9, 40, 7};

int i;

printf("T avant inversion:\n");

for (i = 0; i < SIZE; i++) {

printf("%d ", T[i]);

inverseTableau(T, SIZE);

printf("\nT après inversion:\n");

for (i = 0; i < SIZE; i++) {


printf("%d ", T[i]);

return 0;

Exercice 2 :
#include <stdio.h>

// Fonction de recherche linéaire

int recherche(int tableau[], int taille, int valeur) {

for (int i = 0; i < taille; i++) {

if (tableau[i] == valeur) {

return i; // La valeur a été trouvée à la position i

return -1; // La valeur n'a pas été trouvée dans le tableau


}

int main() {

int taille = 4; // La taille du tableau

int T[] = {4, 0, 8, 15}; // Les valeurs du tableau

int x = 5; // La valeur à rechercher

// Appel de la fonction de recherche

int resultat = recherche(T, taille, x);

// Affichage du résultat

if (resultat == -1) {

printf("La valeur %d n'existe pas.\n", x);

} else {

printf("La valeur %d existe à la position %d.\n", x, resultat + 1);

return 0;

}
Exercice 3 :
#include <stdio.h>

int main() {

// Déclaration d'un tableau d'entiers de dimension 20

int tableau[20];

// Remplissage du tableau avec des entiers

for (int i = 0; i < 20; i++) {

printf("Entrez un entier : ");

scanf("%d", &tableau[i]);

// Calcul du nombre d'entiers multiples de 3 dans le tableau

int nombre_multiples_de_3 = 0;

for (int i = 0; i < 20; i++) {

if (tableau[i] % 3 == 0) {

nombre_multiples_de_3++;
}

// Affichage du tableau

printf("Tableau d'entiers : ");

for (int i = 0; i < 20; i++) {

printf("%d ", tableau[i]);

printf("\n");

// Affichage du nombre d'entiers multiples de 3

printf("Nombre d'entiers multiples de 3 : %d\n", nombre_multiples_de_3);

return 0;

Exercice 4 :
#include <stdio.h>

int main() {

// Déclaration d'un tableau d'entiers de dimension 20 (vous pouvez ajuster la taille selon vos
besoins)

int tableau[20];

// Remplissage du tableau avec des entiers

printf("Entrez les entiers dans le tableau:\n");

for (int i = 0; i < 20; i++) {

printf("Entrez un entier : ");

scanf("%d", &tableau[i]);

// Recherche de la plus grande et la plus petite valeur ainsi que de leur position

int max = tableau[0];

int min = tableau[0];

int position_max = 0;

int position_min = 0;

for (int i = 1; i < 20; i++) {

if (tableau[i] > max) {

max = tableau[i];

position_max = i;

if (tableau[i] < min) {

min = tableau[i];
position_min = i;

// Affichage de la plus grande valeur et sa position

printf("La plus grande valeur est %d et elle se trouve à la position %d.\n", max, position_max);

// Affichage de la plus petite valeur et sa position

printf("La plus petite valeur est %d et elle se trouve à la position %d.\n", min, position_min);

return 0;

Exercice 5 :
#include <stdio.h>

int main() {
// Déclaration du tableau t

float t[3][4];

// Supposons que le tableau t est déjà rempli avec des valeurs (vous pouvez le remplir selon vos
besoins)

// Calcul de la somme des éléments du tableau

float som = 0.0;

for (int i = 0; i < 3; i++) {

for (int j = 0; j < 4; j++) {

som += t[i][j];

// Affichage de la somme

printf("La somme des elements du tableau est : %f\n", som);

return 0;

}
Exercice 6 :
#include <stdio.h>

// Fonction pour échanger deux éléments du tableau

void echanger(int *a, int *b) {

int temp = *a;

*a = *b;

*b = temp;

// Fonction pour trier un tableau dans l'ordre croissant

void triBulles(int tableau[], int taille) {

for (int i = 0; i < taille - 1; i++) {

for (int j = 0; j < taille - 1 - i; j++) {

// Si l'élément actuel est plus grand que le suivant, les échanger

if (tableau[j] > tableau[j + 1]) {


echanger(&tableau[j], &tableau[j + 1]);

int main() {

// Déclaration et initialisation d'un tableau d'entiers

int tableau[] = {64, 34, 25, 12, 22, 11, 90};

// Calcul de la taille du tableau

int taille = sizeof(tableau) / sizeof(tableau[0]);

// Appel de la fonction de tri

triBulles(tableau, taille);

// Affichage du tableau trié

printf("Tableau trié dans l'ordre croissant : ");

for (int i = 0; i < taille; i++) {

printf("%d ", tableau[i]);

return 0;

}
Exercice 7 :
#include <stdio.h>

// Fonction pour vérifier la symétrie d'une matrice carrée

int estSymetrique(int matrice[][100], int taille) {

for (int i = 0; i < taille; i++) {

for (int j = 0; j < taille; j++) {

// Vérification de la symétrie

if (matrice[i][j] != matrice[j][i]) {

return 0; // La matrice n'est pas symétrique

return 1; // La matrice est symétrique

}
int main() {

// Déclaration et initialisation d'une matrice carrée

int taille;

printf("Entrez la taille de la matrice carrée : ");

scanf("%d", &taille);

int matrice[100][100];

printf("Entrez les éléments de la matrice :\n");

for (int i = 0; i < taille; i++) {

for (int j = 0; j < taille; j++) {

printf("Element [%d][%d] : ", i, j);

scanf("%d", &matrice[i][j]);

// Vérification de la symétrie

if (estSymetrique(matrice, taille)) {

printf("La matrice est symétrique.\n");

} else {

printf("La matrice n'est pas symétrique.\n");

return 0;

}
Exercice 8 :
#include <stdio.h>

// Fonction pour rechercher la première position d'une valeur dans un tableau trié

int recherchePosition(int tableau[], int taille, int valeur) {

int debut = 0;

int fin = taille - 1;

int position = -1;

while (debut <= fin) {

int milieu = (debut + fin) / 2;

// Si la valeur est égale à l'élément au milieu du tableau

if (tableau[milieu] == valeur) {

position = milieu;

fin = milieu - 1; // Rechercher à gauche pour la première occurrence


} else if (tableau[milieu] < valeur) {

debut = milieu + 1;

} else {

fin = milieu - 1;

return position;

int main() {

// Déclaration et initialisation d'un tableau trié

int taille;

printf("Entrez la taille du tableau : ");

scanf("%d", &taille);

int tableau[100];

printf("Entrez les elements du tableau (trié par ordre croissant) :\n");

for (int i = 0; i < taille; i++) {

printf("Element %d : ", i + 1);

scanf("%d", &tableau[i]);

// Demander la valeur à rechercher

int valeur;

printf("Entrez la valeur à rechercher : ");


scanf("%d", &valeur);

// Rechercher la première position de la valeur dans le tableau trié

int position = recherchePosition(tableau, taille, valeur);

// Afficher le résultat

if (position != -1) {

printf("La valeur %d a été trouvée à la position %d dans le tableau trié.\n", valeur, position);

} else {

printf("La valeur %d n'a pas été trouvée dans le tableau trié.\n", valeur);

return 0;

Vous aimerez peut-être aussi