Travaux pratiques 1
Année: 2025-2026
Objectifs
C est un langage procédural et bas niveau. Il permet de comprendre la gestion mémoire, les types de données et les structures de contrôle. Les objectifs des TP se concentrent sur :
- Bases de la programmation : Utilisation des fonctions pour afficher des données (
printf), manipulation des entrées et sorties, compilation et exécution.
- Manipulation des variables : Déclaration explicite des types de variables (
int, float, char, etc.).
- Opérateurs : Arithmétiques, logiques, de comparaison et bit à bit.
- Boucles et structures de contrôle :
for, while, do..while, if, else, break, continue.
- Conversion et formatage : Techniques de formatage et conversion des types (ex. conversion en binaire).
Exercice 1.1 [★]
Affichage de “Bonjour le Monde” en C
Objectif :
Écrire un programme simple en C qui affiche le message “Bonjour le Monde!” à l’écran.
Étapes :
- Créez le fichier
bonjour.c et écrivez le programme qui affiche le message.
- Compilez le fichier en utilisant GCC :
- Exécutez le programme :
- Pour générer un exécutable avec un nom spécifique :
$ gcc -o bonjour bonjour.c
$ ./bonjour
- Pour voir tous les avertissements pendant la compilation :
$ gcc -Wall -Wextra -o bonjour bonjour.c
$ ./bonjour
Exercice 1.2 [★]
Calcul de l’aire et du périmètre d’un cercle en C
- Créez
cercle.c.
- Demandez à l’utilisateur de saisir le rayon (
float ou double).
- Calculez l’aire :
aire = pi * rayon * rayon (pi ≈ 3.14159).
- Calculez le périmètre :
perimetre = 2 * pi * rayon.
- Affichez les résultats avec
printf().
Compilation et exécution :
$ gcc -o cercle cercle.c -lm
$ ./cercle
(L’option -lm permet de lier la bibliothèque mathématique <math.h>.)
Exercice 1.3 [★]
Tailles des types de base en C
- Créez
sizeof_types.c.
- Affichez la taille en octets des types :
char, signed char, unsigned char
short, unsigned short
int, unsigned int
long int, unsigned long int
long long int
float
double
long double
- Utilisez l’opérateur
sizeof() et printf() pour afficher les résultats.
Compilation et exécution :
$ gcc -o sizeof_types sizeof_types.c
$ ./sizeof_types
Exercice 1.4 [★★]
Affectation et affichage des variables de types de base en C
- Créez
variables.c.
- Déclarez des variables pour tous les types de base (
char, short, int, long int, long long int, float, double, long double), y compris les versions signées et non signées.
- Assignez des valeurs représentatives (valeurs négatives pour les types signés et maximales pour les types non signés).
- Affichez toutes les variables avec
printf().
- Compilez et exécutez :
$ gcc -o variables variables.c
$ ./variables
Exercice 1.5 [★★]
Utilisation des opérateurs arithmétiques et logiques en C
- Créez
operateurs.c.
- Déclarez deux variables :
a = 16, b = 3.
- Effectuez et affichez :
- Addition, soustraction, multiplication, division, modulo
- Comparaisons : égalité (
==), supérieur (>)
Compilation et exécution :
$ gcc -o operateurs operateurs.c
$ ./operateurs
Exercice 1.6 [★★]
Affichage d’un triangle rectangle avec des boucles
- Créez
boucles.c.
- Demandez à l’utilisateur d’entrer une taille
< 10.
- Affichez un triangle rectangle en alternant les caractères
* et #.
Exemple pour taille = 5 :
*
* *
* # *
* # # *
* * * * *
- Réalisez deux versions :
- avec boucle
for
- avec boucle
while ou do..while
- Testez avec différentes tailles pour vérifier que les caractères alternent correctement et que la taille est correcte.
Exercice 1.7 [★★]
Structures de contrôle avec boucles et conditions en C
- Créez
controle.c.
- Parcourez les nombres de 1 à 1000 et appliquez les conditions suivantes :
- Divisible par 4 mais pas par 6
- Nombre pair et divisible par 8
- Divisible par 5 ou 7 mais pas par 10
- Utilisez des boucles (
for, while, do..while) et des instructions conditionnelles (if, else, break, continue).
Compilation et exécution :
$ gcc -o controle controle.c
$ ./controle
Exercice 1.8 [★★★]
Opérations mathématiques et bitwise avec structures de contrôle
- Créez
calculs.c.
- Déclarez
num1, num2 (entiers) et op (caractère).
- Utilisez un
switch pour effectuer l’opération correspondante :
+ Addition
- Soustraction
* Multiplication
/ Division
% Modulo
& Bitwise AND
| Bitwise OR
~ Bitwise NOT (un seul opérande)
- Affichez le résultat et gérez les erreurs (ex. division par zéro).
Compilation et exécution :
$ gcc -o calculs calculs.c
$ ./calculs
Exercice 1.9 [★★★]
- Créez
binaire.c.
- Déclarez une variable entière.
-
Convertissez et affichez sa représentation binaire :
- utilisez la division par 2 et le reste pour obtenir chaque chiffre binaire
- affichez les bits dans l’ordre correct
Compilation et exécution :
$ gcc -o binaire binaire.c
$ ./binaire
Instructions supplémentaires :
- Testez avec plusieurs valeurs : 0, 4096, 65536, 65535, 1024.
Fichiers à rendre
- Fichiers md : CONTRIBUTORS.md, README.md
- Fichiers C : binaire.c, bonjour.c, boucles.c, calculs.c, cercle.c, controle.c, operateurs.c, sizeof_types.c, variables.c
Instructions générales
- Ajoutez des commentaires clairs : nom du fichier, objectif, auteurs, lignes importantes.
- Mettez à jour le README.md avec bibliothèques utilisées, références, difficulté et commentaires.
- Livrez un compte rendu unique au format
.zip.
Exemple
CONTRIBUTORS.md
1. NOM Prénom
2. NOM Prénom
README.md
# Bibliothèques:
* stdio.h
* math.h
* ..
# Références:
* groupe..
* http://www.example.com
* ..
# Difficulté: ..
* ..
# Commentaires
* commentaire 1
* commentaire 2
* ..