### **Cours de Programmation en C pour Élèves de Première**
---
0-pré-requis
Pour programmer en C on a besoin de :
1-un éditeur :notepad,bloc note
2-un compilateur :pour transformer le fichier source en fichier exécutable
#### **1. Structure d'un Programme en C**
Un programme en C se compose des éléments suivants :
- **Directives de préprocesseur** : Inclure des bibliothèques (ex: `#include
<stdio.h>` pour les entrées/sorties).
- **Fonction principale** `main()` : Point de départ du programme.
- **Blocs de code** : Délimités par des accolades `{}`.
- **Instruction `return`** : Termine la fonction (ex: `return 0;` pour
indiquer une exécution réussie).
**Exemple : Programme "Hello World"**
```c
#include <stdio.h>
int main() {
printf("Bonjour le monde !\n");
return 0;
```
---
#### **2. Instructions Simples**
**a. Déclaration de Variables**
Les variables stockent des données. Types de base :
- `int` (entiers), `float` (réels), `char` (caractères), `double` (réels précis).
**Exemple :**
```c
int age = 17;
float prix = 12.99;
char lettre = 'A';
```
**b. Affectation**
Modifier la valeur d'une variable avec `=`.
```c
age = 18; // Met à jour la variable age
```
**c. Lecture et Écriture Formatée**
- **Écrire** : `printf("Texte %format", variables);`
- **Lire** : `scanf("%format", &variable);` (⚠️`&` est obligatoire pour les
variables).
**Exemple :**
```c
#include <stdio.h>
int main() {
int nombre;
printf("Entrez un nombre : ");
scanf("%d", &nombre); // Lit un entier
printf("Vous avez saisi : %d\n", nombre);
return 0;
```
**Formats courants** :
- `%d` : entier, `%f` : réel, `%c` : caractère, `%s` : chaîne de caractères.
---
#### **3. Structures Alternatives**
**a. Condition `if`**
Exécute un bloc si la condition est vraie.
```c
if (condition) {
// Code à exécuter
```
**Exemple : Vérifier si un nombre est positif**
```c
if (nombre > 0) {
printf("Le nombre est positif.\n");
```
**b. Condition `if...else`**
Ajoute une alternative si la condition est fausse.
```c
if (age >= 18) {
printf("Majeur.\n");
} else {
printf("Mineur.\n");
```
**c. `else if` pour plusieurs conditions**
```c
if (note >= 16) {
printf("Très bien !");
} else if (note >= 12) {
printf("Bien.");
} else {
printf("À travailler.");
```
---
#### **4. Boucles**
**a. Boucle `for`**
Utilisée quand on connaît le nombre d'itérations.
Syntaxe : `for (initialisation; condition; mise à jour)`.
**Exemple : Afficher 1 à 10**
```c
for (int i = 1; i <= 10; i++) {
printf("%d\n", i);
```
**b. Boucle `while`**
Exécute tant qu'une condition est vraie.
```c
int i = 1;
while (i <= 10) {
printf("%d\n", i);
i++;
```
**c. Boucle `do...while`**
Exécute au moins une fois, puis vérifie la condition.
```c
int choix;
do {
printf("Entrez 1 pour quitter : ");
scanf("%d", &choix);
} while (choix != 1);
```
---
#### **Exercices Proposés**
1. **Variables** : Calculez la somme de deux nombres saisis par
l’utilisateur.
2. **Conditionnelles** : Vérifiez si un nombre est pair ou impair.
3. **Boucles** : Affichez les tables de multiplication de 1 à 5 avec une
boucle `for`.
---
**Bon à savoir** :
- Utilisez des commentaires `//` pour expliquer votre code.
- Les erreurs courantes : oublier `;`, `{}`, ou le `&` dans `scanf`.
- Compilez avec `gcc programme.c -o programme` puis exécutez avec
`./programme`.
📌 **À vous de jouer !** Essayez de créer un programme qui demande une
note et affiche "Validé" si elle est ≥ 10.