Chapitre 2
Les éléments de base de la programmation en C
Avant-propos
Dans ce cours, nous insisterons sur les notions de base du C ainsi que sur les
bonnes habitudes de programmation. Nous utilisons le logiciel Dev-C++.
Le logiciel Dev-C++
un éditeur de texte
un préprocesseur
un compilateur
un éditeur de liens
un chargeur d’exécutable
Le compilateur C
Un ordinateur ne sait pas exécuter un programme écrit en C (ni d'ailleurs
en C++ ou n'importe quel langage dit de haut niveau): le seul langage qu'il
«connaisse» est un langage de bas niveau appelé assembleur. L'assembleur
(qui varie selon le type de processeur utilisé) est un langage très simple qui
permet d'écrire des instructions comme: transférer le contenu de telle
adresse mémoire dans un registre, additionner le contenu de deux registres,
etc. Le rôle d'un compilateur est de traduire le code écrit dans un langage
de haut niveau (dans notre cas, le C) en assembleur.
Page 1 2020/2021
M. L. HASNAOUI UMI-EST Algorithmique et Base de Programmation
Premier Programme en C
#include <stdio.h>
#include <stdlib.h>
main()
system("pause") ;
Page 2 2020/2021
M. L. HASNAOUI UMI-EST Algorithmique et Base de Programmation
/* standard input output header fil fichier d'en-tête des entrées-sorties standards */
#include <stdio.h>
#include <stdlib.h>
/* fonction "principale" */
main() {
int valeur1, valeur2, temporaire ;
Exécution:
Entrez 2 entiers suivis par la touche <Entrée> 53 17
Avant l'échange, valeur1 = 53, valeur2 = 17
Après l'échange, valeur1 = 17, valeur2 = 53
Page 3 2020/2021
M. L. HASNAOUI UMI-EST Algorithmique et Base de Programmation
stdio.h (standard input/ouput header file) est le nom d'un fichier d'en-tête
permettant de gérer les entrées et sorties standard (scanf, printf, etc ....)
L'utilisation d'un fichier d'en-tête permet d'utiliser surtout des fonctions
prédéfinies (implantées et fournies avec le compilateur).
3) la fonction principale (main)
4) d'un bloc d'énoncés délimités entre { et }
5) de la déclaration de trois variables de type entier (int pour integer) :
int valeur1, valeur2, temporaire ;
Une instruction se termine par le point virgule.
6) des instructions d'affichage :
printf("messages et codes de format", liste d'informations à afficher);
le mot "print" signifie "imprimer", "afficher"
le suffixe "f" signifie "avec format". Exemple %d est le code pour afficher un
entier, le caractère \n vient de "new line" signale un changement de ligne.
7) de l'opérateur d'affectation avec le symbole "=" : valeur1 = valeur2 ;
8) de l'instruction de lecture avec format :
scanf( " Codes de format ", liste des adresses des variables) ;
Le mot "scan" signifie "lire" et mies en mémoire les valeurs lues.
En C, on lit une liste des valeurs selon certains codes de format et on
dépose aux adresses des variables correspondantes.
La notion "adresse de" (opérateur "&") emplacement dans la mémoire
9) de l'instruction
printf("\nCliquez sur le bouton de fermeture ");
Permettant de rappeler l'usager à quitter l'écran des résultats en cliquant sur le
bouton de fermeture
Page 4 2020/2021
M. L. HASNAOUI UMI-EST Algorithmique et Base de Programmation
b) Identificateur :
C'est une suite de caractères choisis parmi les lettres ou les chiffres, le premier
caractère étant une lettre. Le C permet aussi le caractère "souligné" qui est
considéré comme une lettre : tp1, note_Moyenne, plusGrandeNote,, prixAPayer,
sont des identificateurs valides.
Les valeurs possibles de chacun des types suivants sont reliées avec notre
environnement de travail :
d) Opérateur d’affectation :
Le C utilise l'opérateur "=" pour affecter une expression à une variable.
Page 5 2020/2021
M. L. HASNAOUI UMI-EST Algorithmique et Base de Programmation
Page 6 2020/2021
M. L. HASNAOUI UMI-EST Algorithmique et Base de Programmation
Exemples :
(17 % 3) == 2 vaut vrai
5*4 < 8 vaut faux
Rappels :
Exemples :
! ( 27 < 13 ) vaut vrai (le contraire de faux)
(15 > 4) && (5 > 17 % 3) vaut vrai
(6 <= 5) || (12 > 8.5) vaut vrai
Page 7 2020/2021
M. L. HASNAOUI UMI-EST Algorithmique et Base de Programmation
4. Les constantes:
Page 8 2020/2021
M. L. HASNAOUI UMI-EST Algorithmique et Base de Programmation
Exemples :
Avec les déclarations et les affectations suivantes :
int age, nbCafe ;
float taille ;
char sexe ;
age = 23 ;
nbCafe = 3 ;
taille = 1.72 ;
sexe = 'M' ;
Page 9 2020/2021
M. L. HASNAOUI UMI-EST Algorithmique et Base de Programmation
Attention :
Pour un long message qui dépasse une ligne on ecrit comme suit :
printf("L'employé est un analyste qui gagne %6.2f $ par "
"semaine et reçoit un bonus de %5.1f $\n", salHebdo, bonus);
Page 10 2020/2021
M. L. HASNAOUI UMI-EST Algorithmique et Base de Programmation
Page 11 2020/2021