SlideShare une entreprise Scribd logo
1  sur  32
Chapitre 1: Entrées-Sorties
Niveau: 1A
1
Objectifs
A la fin de ce chapitre, l’étudiant sera capable de:
• Connaître la structure d’un programme C.
• Manipuler les variables et les opérateurs de base en C.
• Connaître et utiliser les fonctions de lecture et d’écriture en C.
2
Plan
• Introduction
• Notions de base
• Lecture & Ecriture des données
3
4
Introduction
▪ Le langage C
▪ Structure d’un programme C
▪ Compilation
▪ Remarques
5
Le langage C
• Crée par K. Thompson, D. Ritchie et B. Kernighan pour développer UNIX.
• C’est le langage le plus utilisé par les professionnels du logiciel.
• Il a influencé de nombreux langages plus récents dont C++ et Java.
Structure d’un programme C (1/4)
• En langage C le programme principal et les sous programmes sont définies comme des
fonctions.
• La fonction particulière nommée main() est la fonction principale d’un « programme C »
6
<include des bibliothèques>
void main()
{
< Traitements >;
}
#include <stdio.h> /* Bibliothèque d’entrées-sorties standard */
void main() /* Notre premier programme en C */
{
printf(" Bienvenue à ESPRIT" );
}
Syntaxe: Programme:
Bienvenue à ESPRIT
Exécution:
Structure d’un programme C (2/4)
7
#include <stdio.h> /* Bibliothèque d’entrées-sorties standard */
void main() /* Notre premier programme en C */
{
printf(" Bienvenue à ESPRIT" );
}
Programme:
main est toujours la fonction
principale d’un programme C
Début du bloc d’instructions
Fin du bloc d’instructions
Structure d’un programme C (3/4)
8
#include <stdio.h> /* Bibliothèque d’entrées-sorties standard */
void main() /* Notre premier programme en C */
{
printf(" Bienvenue à ESPRIT" );
}
Programme:
Commentaires
Structure d’un programme C (4/4)
9
#include <stdio.h> /* Bibliothèque d’entrées-sorties standard */
void main() /* Notre premier programme en C */
{
printf (" Bienvenue à ESPRIT" );
}
Programme:
Fonction affichant à l’écran une
chaîne de caractères
Bienvenue à ESPRIT
Inclusion de la bibliothèque contenant la fonction printf
Comment Créer un programme exécutable ?
10
1). Ecriture des fichiers source *.c
2). Compilation
3). Edition des liens
Remarques
✔Les commentaires sont utilisés pour des raisons de lisibilité et de compréhension du
programme. Un commentaire est une chaîne de caractères comprise entre /* et */ , ou
bien //
✔Cette chaîne est ignorée par le compilateur C et peut déborder sur plusieurs lignes.
✔ Le langage C distingue les minuscules, des majuscules.
✔Les mots réservés (exemples : for, while, return, struct …) du langage C doivent être
écrits en minuscules.
11
Exercice d’application
⮚ Exercice 1 de la série
12
Notions de base
▪ Les variables
▪ Les opérateurs
13
14
Les variables
• Les variables permettent de représenter les données d’un programme.
• Chaque variable est matérialisée par un emplacement mémoire identifié par un nom.
• Chaque variable possède :
1. un nom
2. un type
3. une valeur
15
Les variables
• Qu'est-ce qu'une variable ?
1. Le nom d’un emplacement mémoire
2. On en crée presque autant qu’on veut
3. Son contenu peut changer dans le temps
4. Elle contient toujours quelque chose
Une variable sera toujours définie avant utilisation : elle doit être associée à un type de données
16
Les variables ( Nom )
• Un nom de variables:
⮚ Contient 32 caractères max
⮚ Commence par une lettre ou le symbole _
⮚ C distingue les majuscules et les minuscules.
compteur ’ et ‘ Compteur’ sont deux variables différentes
⮚ Ne peut pas être un des mots réservés du C: Int, char, float, if ….
⮚ Le choix des noms est important pour la lisibilité du programme
17
Les variables ( Type )
Types Réels
C est un langage typé:
Types Entiers
Types de base en C
⬥ int : entier standard
⬥ short : entier court
⬥ long : entier long
Le langage C implémente le type
char qui est en fait numérique.
⬥ char : caractère
⬥ float : réel
⬥ double : réel double
⬥ long double : réel long double
18
Les variables ( Type : Entiers )
Type Nombre d’octets Domaine
int 4 [-231, 231-1]
unsigned int 4 [0, 232-1]
short 2 [-32768, 32767]
unsigned short 2 [0, 65535]
long 4 [-231, 231-1]
unsigned long 4 [0, 232-1]
char 1 [-128, 127]
Unsigned char 1 [0, 255]
Float 4 [-3.4*1038, 3.4*1038]
double 8 [-1.7*10308, 1.7*10308]
long double 10 [-3.4*104932, 1.7*104932]
Entiers
Réels
19
Les variables ( Exemple )
#include <stdio.h> /* Bibliothèque d’entrées-sorties standard */
int main()
{
int a; // déclaration
a=127; // affectation
printf("la valeur de a = %d",a); // affichage de la valeur de a
}
main est toujours la fonction
principale d’un programme
C
Début de bloc d’instructions
Fin de bloc d’instructions
Exercice d’application
⮚ Exercice 2 de la série
20
Lecture & Ecriture de données
21
22
Affichage de données
Fonction printf()
printf (" text Format de nomvar ", NomVar );
⇒ Permet d’afficher des chaînes de caractères et des données de types différents
Format Données
%d Nombre entier
%u Nombre entier non signé
%c Caractère
%f Nombre à virgule flottante: Réel
23
Lecture de données
Fonction scanf()
Scanf (“Format ", & NomVar);
⇒ permet de lire des chaînes de caractères et traite des données de types différents
Exercice d’application
⮚ Exercice 3 de la série
24
Opérateurs
25
Opérateurs de base
26
• Opérateurs arithmétiques :
▪ + : addition ⮊ a + b
▪ - : soustraction ⮊ a – b
▪ * : multiplication ⮊ a * b
▪ / : division (entière et rationnelle) ⮊ a / b
⬥ Si a et b sont des entiers (a = 7; b = 2) a / b donne 3
⬥ Si a ou b est un réel (a = 7; b = 2.0) a / b donne 3.5
▪ % : modulo (reste de la division entière) ⮊ a % b
⬥ a = 7; b = 2 alors a % b donne 1
Opérateurs de base
27
▪ && : et logique (AND)
▪ || : ou logique (OR)
▪ ! : négation (NOT)
a b a && b a || b ! a
0 0 0 0 1
0 1 0 1 1
1 0 0 1 0
1 1 1 1 0
• Pas de type booléen en C Les opérateurs logiques considèrent toute valeur différente de
zéro comme vrai et zéro comme faux.
(4 < 10) 1 (vrai)
!(5 > 1) 0 (faux)
Opérateurs ( Opérateurs de comparaison )
• Opérateurs de Comparaison : (1: vrai ou 0: faux)
▪ == : égal à ⮊ a == b
▪ != : différent de ⮊ a != b
▪ < : strictement inférieur ⮊ a < b
▪ <= : inférieur ou égal ⮊ a <= b
▪ > : strictement supérieur ⮊ a > b
▪ >= : supérieur ou égal ⮊ a >= b
28
Opérateurs ( Opérateurs d’affectation )
29
⮚ Affectation simple
int x;
x = 4;
⮚ Affectation combinée
var1 = (var1) op (var2) var1 op= var2
⮚ Affectation simple
int x;
x = 2;
x = x + 1; x++; x+=1;
i += 1 ;
i = i + 1;
Opérateurs ( Incréments et décréments )
30
• Incréments et décréments:
▪ ++ : augmentation de 1
y = x++; y = x; x = x+1;
▪ -- : diminution de 1
int x = 3; y 3 x 4
y = x--; y = x; x = x-1;
x++; x = x+1;
x--; x = x-1;
y = ++x x = x + 1; y = x; x 4 y 4
Les priorités
31
Priorité 1 (la plus forte) ( )
Priorité 2 ! ++ --
Priorité 3 * / %
Priorité 4 + -
Priorité 5 < <= > >=
Priorité 6 == !=
Priorité 7 &&
Priorité 8 ||
Priorité 9 (la plus faible) = += -= *= /= %=
• L’ordre d ’évaluation des différentes parties d’une expression est en principe le même
qu’en mathématiques. x = 2 + a - 5 * 4 – b / c + 6; ?
Exercice d’application
⮚ Exercice 5 et 6 de la série
32

Contenu connexe

Similaire à Chap1_Entrees_Sorties.pptx

CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCSiratiSoufiane
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)rezgui mohamed
 
Seance 1 - Programmation en langage C
Seance 1 - Programmation en langage CSeance 1 - Programmation en langage C
Seance 1 - Programmation en langage CFahad Golra
 
Cours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMACours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMALoic Yon
 
Chapitre1: Langage Python
Chapitre1: Langage PythonChapitre1: Langage Python
Chapitre1: Langage PythonAziz Darouichi
 
COURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptxCOURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptxLuneSabsPericolo1
 
C1 - Langage C - ISIMA - Première partie
C1 - Langage C - ISIMA - Première partieC1 - Langage C - ISIMA - Première partie
C1 - Langage C - ISIMA - Première partieLoic Yon
 
Introduction au langage python notion de base
Introduction au langage python notion de baseIntroduction au langage python notion de base
Introduction au langage python notion de basemohamedAitomar1
 
Introduction au langage python (Notion de base)
Introduction au langage python (Notion de base)Introduction au langage python (Notion de base)
Introduction au langage python (Notion de base)mohamedAitomar1
 
Langage de Programmation.pdf
Langage de Programmation.pdfLangage de Programmation.pdf
Langage de Programmation.pdfAboubacarDiarra10
 
Seance 3- Programmation en langage C
Seance 3- Programmation en langage C Seance 3- Programmation en langage C
Seance 3- Programmation en langage C Fahad Golra
 
C2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieC2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieLoic Yon
 
cpp1 : Quelques elements de base du C++
cpp1 : Quelques elements de base du C++cpp1 : Quelques elements de base du C++
cpp1 : Quelques elements de base du C++Abdoulaye Dieng
 

Similaire à Chap1_Entrees_Sorties.pptx (20)

CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)
 
Seance 1 - Programmation en langage C
Seance 1 - Programmation en langage CSeance 1 - Programmation en langage C
Seance 1 - Programmation en langage C
 
Ch02
Ch02Ch02
Ch02
 
Language-C.ppt
Language-C.pptLanguage-C.ppt
Language-C.ppt
 
Cours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMACours de C++ / Tronc commun deuxième année ISIMA
Cours de C++ / Tronc commun deuxième année ISIMA
 
langage C++
langage C++langage C++
langage C++
 
Chapitre1: Langage Python
Chapitre1: Langage PythonChapitre1: Langage Python
Chapitre1: Langage Python
 
COURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptxCOURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptx
 
C1 - Langage C - ISIMA - Première partie
C1 - Langage C - ISIMA - Première partieC1 - Langage C - ISIMA - Première partie
C1 - Langage C - ISIMA - Première partie
 
Introduction au langage python notion de base
Introduction au langage python notion de baseIntroduction au langage python notion de base
Introduction au langage python notion de base
 
Introduction au langage python (Notion de base)
Introduction au langage python (Notion de base)Introduction au langage python (Notion de base)
Introduction au langage python (Notion de base)
 
COURS_PYTHON_22.ppt
COURS_PYTHON_22.pptCOURS_PYTHON_22.ppt
COURS_PYTHON_22.ppt
 
Langage de Programmation.pdf
Langage de Programmation.pdfLangage de Programmation.pdf
Langage de Programmation.pdf
 
Seance 3- Programmation en langage C
Seance 3- Programmation en langage C Seance 3- Programmation en langage C
Seance 3- Programmation en langage C
 
Le langage C
Le langage CLe langage C
Le langage C
 
Langage c
Langage cLangage c
Langage c
 
C2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieC2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partie
 
cpp1 : Quelques elements de base du C++
cpp1 : Quelques elements de base du C++cpp1 : Quelques elements de base du C++
cpp1 : Quelques elements de base du C++
 
Turbo1
Turbo1Turbo1
Turbo1
 

Dernier

SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSKennel
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSKennel
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSKennel
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre françaisTxaruka
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETMedBechir
 
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 37
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSKennel
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxAsmaa105193
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 37
 
le present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptxle present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptxmmatar2
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSKennel
 
Principe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsPrincipe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsRajiAbdelghani
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .Txaruka
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETMedBechir
 
Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Gilles Le Page
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Alain Marois
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxMartin M Flynn
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxrababouerdighi
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeXL Groupe
 

Dernier (20)

SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre français
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSET
 
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. Marocpptx
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
 
le present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptxle present des verbes reguliers -er.pptx
le present des verbes reguliers -er.pptx
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
 
Principe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsPrincipe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 temps
 
DO PALÁCIO À ASSEMBLEIA .
DO PALÁCIO À ASSEMBLEIA                 .DO PALÁCIO À ASSEMBLEIA                 .
DO PALÁCIO À ASSEMBLEIA .
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
 
Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptx
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptx
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directe
 

Chap1_Entrees_Sorties.pptx

  • 2. Objectifs A la fin de ce chapitre, l’étudiant sera capable de: • Connaître la structure d’un programme C. • Manipuler les variables et les opérateurs de base en C. • Connaître et utiliser les fonctions de lecture et d’écriture en C. 2
  • 3. Plan • Introduction • Notions de base • Lecture & Ecriture des données 3
  • 4. 4 Introduction ▪ Le langage C ▪ Structure d’un programme C ▪ Compilation ▪ Remarques
  • 5. 5 Le langage C • Crée par K. Thompson, D. Ritchie et B. Kernighan pour développer UNIX. • C’est le langage le plus utilisé par les professionnels du logiciel. • Il a influencé de nombreux langages plus récents dont C++ et Java.
  • 6. Structure d’un programme C (1/4) • En langage C le programme principal et les sous programmes sont définies comme des fonctions. • La fonction particulière nommée main() est la fonction principale d’un « programme C » 6 <include des bibliothèques> void main() { < Traitements >; } #include <stdio.h> /* Bibliothèque d’entrées-sorties standard */ void main() /* Notre premier programme en C */ { printf(" Bienvenue à ESPRIT" ); } Syntaxe: Programme: Bienvenue à ESPRIT Exécution:
  • 7. Structure d’un programme C (2/4) 7 #include <stdio.h> /* Bibliothèque d’entrées-sorties standard */ void main() /* Notre premier programme en C */ { printf(" Bienvenue à ESPRIT" ); } Programme: main est toujours la fonction principale d’un programme C Début du bloc d’instructions Fin du bloc d’instructions
  • 8. Structure d’un programme C (3/4) 8 #include <stdio.h> /* Bibliothèque d’entrées-sorties standard */ void main() /* Notre premier programme en C */ { printf(" Bienvenue à ESPRIT" ); } Programme: Commentaires
  • 9. Structure d’un programme C (4/4) 9 #include <stdio.h> /* Bibliothèque d’entrées-sorties standard */ void main() /* Notre premier programme en C */ { printf (" Bienvenue à ESPRIT" ); } Programme: Fonction affichant à l’écran une chaîne de caractères Bienvenue à ESPRIT Inclusion de la bibliothèque contenant la fonction printf
  • 10. Comment Créer un programme exécutable ? 10 1). Ecriture des fichiers source *.c 2). Compilation 3). Edition des liens
  • 11. Remarques ✔Les commentaires sont utilisés pour des raisons de lisibilité et de compréhension du programme. Un commentaire est une chaîne de caractères comprise entre /* et */ , ou bien // ✔Cette chaîne est ignorée par le compilateur C et peut déborder sur plusieurs lignes. ✔ Le langage C distingue les minuscules, des majuscules. ✔Les mots réservés (exemples : for, while, return, struct …) du langage C doivent être écrits en minuscules. 11
  • 13. Notions de base ▪ Les variables ▪ Les opérateurs 13
  • 14. 14 Les variables • Les variables permettent de représenter les données d’un programme. • Chaque variable est matérialisée par un emplacement mémoire identifié par un nom. • Chaque variable possède : 1. un nom 2. un type 3. une valeur
  • 15. 15 Les variables • Qu'est-ce qu'une variable ? 1. Le nom d’un emplacement mémoire 2. On en crée presque autant qu’on veut 3. Son contenu peut changer dans le temps 4. Elle contient toujours quelque chose Une variable sera toujours définie avant utilisation : elle doit être associée à un type de données
  • 16. 16 Les variables ( Nom ) • Un nom de variables: ⮚ Contient 32 caractères max ⮚ Commence par une lettre ou le symbole _ ⮚ C distingue les majuscules et les minuscules. compteur ’ et ‘ Compteur’ sont deux variables différentes ⮚ Ne peut pas être un des mots réservés du C: Int, char, float, if …. ⮚ Le choix des noms est important pour la lisibilité du programme
  • 17. 17 Les variables ( Type ) Types Réels C est un langage typé: Types Entiers Types de base en C ⬥ int : entier standard ⬥ short : entier court ⬥ long : entier long Le langage C implémente le type char qui est en fait numérique. ⬥ char : caractère ⬥ float : réel ⬥ double : réel double ⬥ long double : réel long double
  • 18. 18 Les variables ( Type : Entiers ) Type Nombre d’octets Domaine int 4 [-231, 231-1] unsigned int 4 [0, 232-1] short 2 [-32768, 32767] unsigned short 2 [0, 65535] long 4 [-231, 231-1] unsigned long 4 [0, 232-1] char 1 [-128, 127] Unsigned char 1 [0, 255] Float 4 [-3.4*1038, 3.4*1038] double 8 [-1.7*10308, 1.7*10308] long double 10 [-3.4*104932, 1.7*104932] Entiers Réels
  • 19. 19 Les variables ( Exemple ) #include <stdio.h> /* Bibliothèque d’entrées-sorties standard */ int main() { int a; // déclaration a=127; // affectation printf("la valeur de a = %d",a); // affichage de la valeur de a } main est toujours la fonction principale d’un programme C Début de bloc d’instructions Fin de bloc d’instructions
  • 21. Lecture & Ecriture de données 21
  • 22. 22 Affichage de données Fonction printf() printf (" text Format de nomvar ", NomVar ); ⇒ Permet d’afficher des chaînes de caractères et des données de types différents Format Données %d Nombre entier %u Nombre entier non signé %c Caractère %f Nombre à virgule flottante: Réel
  • 23. 23 Lecture de données Fonction scanf() Scanf (“Format ", & NomVar); ⇒ permet de lire des chaînes de caractères et traite des données de types différents
  • 26. Opérateurs de base 26 • Opérateurs arithmétiques : ▪ + : addition ⮊ a + b ▪ - : soustraction ⮊ a – b ▪ * : multiplication ⮊ a * b ▪ / : division (entière et rationnelle) ⮊ a / b ⬥ Si a et b sont des entiers (a = 7; b = 2) a / b donne 3 ⬥ Si a ou b est un réel (a = 7; b = 2.0) a / b donne 3.5 ▪ % : modulo (reste de la division entière) ⮊ a % b ⬥ a = 7; b = 2 alors a % b donne 1
  • 27. Opérateurs de base 27 ▪ && : et logique (AND) ▪ || : ou logique (OR) ▪ ! : négation (NOT) a b a && b a || b ! a 0 0 0 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 0 • Pas de type booléen en C Les opérateurs logiques considèrent toute valeur différente de zéro comme vrai et zéro comme faux. (4 < 10) 1 (vrai) !(5 > 1) 0 (faux)
  • 28. Opérateurs ( Opérateurs de comparaison ) • Opérateurs de Comparaison : (1: vrai ou 0: faux) ▪ == : égal à ⮊ a == b ▪ != : différent de ⮊ a != b ▪ < : strictement inférieur ⮊ a < b ▪ <= : inférieur ou égal ⮊ a <= b ▪ > : strictement supérieur ⮊ a > b ▪ >= : supérieur ou égal ⮊ a >= b 28
  • 29. Opérateurs ( Opérateurs d’affectation ) 29 ⮚ Affectation simple int x; x = 4; ⮚ Affectation combinée var1 = (var1) op (var2) var1 op= var2 ⮚ Affectation simple int x; x = 2; x = x + 1; x++; x+=1; i += 1 ; i = i + 1;
  • 30. Opérateurs ( Incréments et décréments ) 30 • Incréments et décréments: ▪ ++ : augmentation de 1 y = x++; y = x; x = x+1; ▪ -- : diminution de 1 int x = 3; y 3 x 4 y = x--; y = x; x = x-1; x++; x = x+1; x--; x = x-1; y = ++x x = x + 1; y = x; x 4 y 4
  • 31. Les priorités 31 Priorité 1 (la plus forte) ( ) Priorité 2 ! ++ -- Priorité 3 * / % Priorité 4 + - Priorité 5 < <= > >= Priorité 6 == != Priorité 7 && Priorité 8 || Priorité 9 (la plus faible) = += -= *= /= %= • L’ordre d ’évaluation des différentes parties d’une expression est en principe le même qu’en mathématiques. x = 2 + a - 5 * 4 – b / c + 6; ?
  • 32. Exercice d’application ⮚ Exercice 5 et 6 de la série 32