Académique Documents
Professionnel Documents
Culture Documents
2023 - 2024
Atelier programmation I
Filière: MPI/CBA
3
Logiciels à utiliser:
CodeBlocks
4
Chapitre 1
1- Introduction
2- Structure d’un programme en C
3- Manipulation de variables
3.1- Déclaration de variables et types
3.2- Opérateurs de base
3.3- Conversion de type
3.4- Quelques fonctions de la bibliothèque <math.h>
5- Exercice
5
1- Introduction
Processus de programmation
Code source
édité
Traduction (mon programme)
6
1- Introduction
Processus de programmation
7
1- Introduction
Processus de programmation
Mon
programme
Code source (Programme.c)
Analyse du programme
et détection des erreurs .c
lexiques et syntaxiques Compilation
Mon
Code objet (Programme.obj) programme
Combiner différents
fichiers
objets pour créer un fichier
.obj
Edition des liens
exécutable
Programme exécutable
Mon
Résultats fournis par le
(Programme.exe) programme
programme et
Détection d’éventuelles Exécution .exe
erreurs logiques
8
2-Structure d’un programme C
Remarque :
9
2-Structure d’un programme C
Remarques
Exemples :
math.h : bibliothèque de fonctions mathématiques
stdio.h : bibliothèque d'entrées/sorties standard (Lire, Ecrire)
10
2-Structure d’un programme C
Inclusion de la bibliothèque
#include <stdio.h> contenant la fonction d’affichage printf
{
Début du programme
} Fin du programme
8
11
3-Manipulation de variables
3.1- Déclaration de variables et types
Prototype
Une variable est une zone mémoire caractérisée par un:
Nom
Type
[…]: Facultatif
12
3-Manipulation de variables
3.1- Déclaration de variables et types
Les noms des variables sont composés de lettres et de chiffres.
L’ensemble des symboles utilisables:
Lettres ‘a’, ’b’,………..., ‘z’, ’A’, ’B’,………., ’Z’.
Chiffres 0, 1, 2,…….’9’.
Le symbole ‘_’.
Type NomVariable;
int nbre_occurrence;
float racine;
int x ;
float x ; // Interdit
16
3-Manipulation de variables
3.1- Déclaration de variables et types
Exemple d’affectation
NomVariable = Expression;
18
3-Manipulation de variables
3.1- Déclaration de variables et types
Exemples de déclaration de variables:
Déclarer un entier « nb » int nb;
Déclarer un réel « pi » ayant pour valeur initiale
« 3.14 » float pi = 3.14;
Déclarer un caractère « c » de valeur initiale « ’a’ »
char c = 'a';
19
3-Manipulation de variables
3.1- Déclaration de variables et types
Déclaration de constantes
Une constante est une donnée dont la valeur ne peut pas varier.
void main()
{
const int x = 4;
const float pi = 3.14 ;
...
}
20
3-Manipulation de variables
3.2- Opérateurs de base
Opérateurs arithmétiques :
+ : addition a + b
- : soustraction a – b
* : multiplication a * b
21
Exercice 1
Déclarer une variable V de deux chiffres (valeur
initiale au choix) et une constante C de valeur (0.5)
Faire la somme des chiffres de V et le multiplier à
C
Afficher le résultat.
22
CORRECTION EXERCICE 1
23
3-Manipulation de variables
3.2- Opérateurs de base
Opérateurs logiques:
Pas de type booléen en C. 1: vrai / 0: faux
a
&& : et logique (AND)
0
b 0 0 0 1
|| : ou logique (OR) 0 1 0 1 1
a &&
1 b0 0 1 0
! : négation (NOT)
1
a || b 1 1 1 0
== : égal à a == b
!= : différent de a != b
25
3-Manipulation de variables
3.2- Opérateurs de base
Exemples
a = 2; valeur de a: 2
r = 3%2; valeur de r: 1
x=a+r ; valeur de x: 3
b = (3==3); valeur de b: 1
c = (6==5); valeur de c: 0
d = (2!=3); valeur de d: 1
e = (6<=3); valeur de e: 0
f = !1; valeur de f: 0
g =((3==3) || (6<=3)); valeur de g: 1
h =((3==3) && (6<=3)); valeur de h: 0
26
3-Manipulation de variables
3.2- Opérateurs de base
Le langage C autorise des écritures simplifiées pour
l’incrémentation et la décrémentation de variables :
i = i+1; i++;
i = i-1; i--;
a = a+b; a+= b;
a = a-b; a-= b;
a = a * b; a*= b;
a = a / b; a/= b;
a=i++; a=i; i=i+1;
a=++i; i=i+1; a=i;
27
3-Manipulation de variables
3.3- Conversion de type
L’operateur de conversion de type, appelée cast,
permet de modifier explicitement le type d'un objet.
Syntaxe:
(type) objet
Exemple:
int i=3, j=2, y; Le cast est appliqué sur la valeur de
i, cela permet au reste du calcul de
float x; se transformer en float
x= (float)i/j; /* affiche x=1.5 */
y = (int) x /* affiche y=1 */
28
3-Manipulation de variables
3.4- Quelques fonctions de la bibliothèque <math.h>
Exemple:
printf (“Bonjour”);
// Affichage d’un entier long
int x = 5;
printf ("%d \n", x);
// Affichage d’un réel
float taille = 1.74;
printf ("%f", taille);
Syntaxe:
putchar(caractère); printf("%c\n",x);
Exemple:
char c= ‘a’;
putchar(c);
33
4-Les fonctions d’affichage et de lecture
4.2- Fonction de lecture: scanf
Syntaxe:
scanf("formats",paramètres);
Exemple:
int j; float y;
Exemple:
Char c;
C=getchar();
36
4-Les fonctions d’affichage et de lecture
Récapitulatif
Lecture scanf Écriture printf
Format Données
%i ou %d Nombre entier
%u Nombre entier non signé
%c Caractère
%f Nombre à virgule flottante
…
Lecture d’un caractère : scanf ou getchar()
char lettre;
scanf (“%c”, &lettre) lettre = getchar();
Ecriture d’un caractère : printf ou putchar()
char lettre = ‘A’;
printf (“%c”, lettre) putchar (lettre); 37
4-Les fonctions d’affichage et de lecture
4.3- Fonction fflush(stdin)
Lorsqu’on saisit un caractère au clavier , on doit le
valider par "RETURN". Ce caractère sera rangé
dans un tampon.
38
4-Les fonctions d’affichage et de lecture
4.3- Fonction fflush(stdin)
Exemple:
#include<stdio.h>
void main()
{
char c1, c2;
printf("Entrer un caractère: ");
scanf("%c", &c1);
printf (“le premier caractère saisi: %c \n ", c1);
printf("Entrer un autre caractère: ");
scanf("%c", &c2);
printf (" le second caractère saisi: %c \n ", c2);
}
Le programme ne donne pas la main pour saisir le
deuxième caractère.
39
4-Les fonctions d’affichage et de lecture
4.3- Fonction fflush(stdin)
Solution: utilisation de la fonction fflush(stdin)
avant la deuxième saisie. Cette fonction permet de
vider la tampon
#include<stdio.h>
void main()
{
char c1, c2;
printf("Entrer un caractère: ");
scanf("%c", &c1);
printf (“le premier caractère saisi: %c \n ", c1);
fflush(stdin);
printf("Entrer un autre caractère: ");
scanf("%c", &c2);
printf (" le second caractère saisi: %c \n ", c2);
}
40
5-Exercice
41