0% ont trouvé ce document utile (0 vote)
51 vues23 pages

Lecture et écriture en langage C

Le chapitre 4 traite des instructions d'écriture et de lecture en langage C, en se concentrant sur les fonctions printf et scanf. Il explique comment utiliser ces fonctions pour afficher des résultats à l'écran et lire des données à partir du clavier, en précisant la syntaxe et les spécificateurs de format. Le chapitre se termine par des exercices pratiques pour appliquer ces concepts.

Transféré par

nikiemaabdoulhamidou
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
51 vues23 pages

Lecture et écriture en langage C

Le chapitre 4 traite des instructions d'écriture et de lecture en langage C, en se concentrant sur les fonctions printf et scanf. Il explique comment utiliser ces fonctions pour afficher des résultats à l'écran et lire des données à partir du clavier, en précisant la syntaxe et les spécificateurs de format. Le chapitre se termine par des exercices pratiques pour appliquer ces concepts.

Transféré par

nikiemaabdoulhamidou
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Chapitre 4:

Instruction d’écriture et de
lecture

1
1 Instruction d’écriture et de lecture
L’instruction de lecture permet de fournir des informations (données) à
notre programme par l’intermédiaire d’un périphérique (clavier).
L’instruction d’écriture permet à un programme de communiquer des
informations (résultats) par l’intermédiaire d’un périphérique (écran).
La bibliothèque standard contient un ensemble de fonctions permettant la
communication de l’ordinateur avec le monde extérieur.
Les principales fonctions de lecture et d’écriture en langage C sont scanf et
printf. Ces deux fonctions font parties de la bibliothèque standard .

2
1 Instruction d’écriture et de lecture

Données Ordinateur
Programme

Lecture des données

Écriture des résultats


Résultats

3
2 Ecriture des données
2.1 La fonction printf
La fonction, formatée d’écriture de données,
printf permet de transférer du texte, des
valeurs de variables ou des résultats
d’expressions vers l’écran.
Elle exige l’utilisation de formats de sortie.

4
2 Ecriture des données
2.2 Syntaxe
printf("format de la chaîne", arg1, arg2, ..., argn);
où "format de la chaîne" est une chaîne de
caractères dans laquelle les caractères normaux
sont imprimés directement et les spécificateurs de
format commencent par le symbole pour cent
(%), et arg1, arg2, ..., argn sont les arguments à
afficher.

5
2 Ecriture des données
2.2 Syntaxe
Voici quelques exemples de spécificateurs de format couramment
utilisés:
- %d : entier décimal "%e" : réel avec un exposant.
"%g" : réel avec ou sans exposant suivant
- %f : nombre à virgule flottante les besoins.
- %c : caractère "%G" : identique à g sauf un E à la place
de e.
- %s : chaîne de caractères "%o" : le nombre est écrit en base 8.
- %p : pointeur "%u" : entier non signé.
- %x : entier hexadécimal "%x" ou "%X" : entier base 16 avec respect
majuscule/minuscule.

6
2 Ecriture des données
2.2 Syntaxe
Voici quelques exemples de spécificateurs de format couramment
utilisés:
- %d : entier décimal
- %f : nombre à virgule flottante
- %c : caractère
- %s : chaîne de caractères
- %p : pointeur
- %x : entier hexadécimal

7
2 Ecriture des données
2.2 Syntaxe
int age = 25; double salaire = 675234.56;
printf("Mon salaire est de %.2f \n", salaire);
printf("J'ai %d ans\n", age);
```
``` Sortie: Mon salaire est de 675234,56 fr cfa
Sortie: J'ai 25 ans
char lettre = 'A';
printf("La lettre est %c\n", lettre);
char nom[20] = "Jean";
```
printf("Bonjour, %s\n", nom);
Sortie: La lettre est A
```
Sortie: Bonjour, Jean

8
2 Ecriture des données
2.2 Syntaxe
Exemples:
printf("Bonjour\n");
x=100 ; y=x ;
printf("La valeur de y est %d\n", y);
printf("La somme = %d\n", x+y);
moyenne=12.3333 ;
printf("La moyenne est %.2f\n", moyenne);
c=’A’ ;
printf("Le caractère %c a pour valeur %d", c,c);
/*va afficher sur l'écran: Le caractère A a le code 65 ! La valeur de c est donc affichée
sous deux formats différents. */

9
2 Ecriture des données
2.2 Syntaxe
Les caractères précédés de \ sont interprétés comme suit :
\\ : caractère \
\n : retour à la ligne
\t : tabulateur.
\" : caractère "
\r : retour chariot

10
2 Ecriture des données
2.2 Syntaxe
caractères nom symbole code hexa décimal
\n newline LF 10
\t tabulation HT 9
\b backspace BS 8
\r return CR 13
\f form feed FF 12
\\ backslash 5C 92
\' single quote 27 39
\" double quote 22 34
11
3 LECTURE DES DONNÉES
3.1 La fonction scanf
La fonction, formatée de lecture de données, scanf permet de lire à partir du
clavier des données.
Les variables à saisir sont formatées, le nom de la variable est précédé du
symbole & désignant l'adresse de la variable.
La saisie s'arrête avec "RETURN" (c'est à dire taper entré), les éléments saisis
s'affichent à l'écran.

12
3 LECTURE DES DONNÉES
3.2 La Syntaxe
La syntaxe de base de la fonction scanf() en langage C est la suivante :
scanf(format, var1, var2, ...);
- format : une chaîne de caractères contenant les spécifications de format
pour la lecture de l'entrée. Les spécifications de format indiquent à scanf()
comment interpréter chaque entrée, en fonction de son type de données
(entier, flottant, caractère, etc.). Les spécifications de format commencent
par le caractère %.
- var1, var2, ... : sont les variables où scanf stockera les valeurs lues à partir
de l'entrée.
Chaque variable correspond à une spécification de format dans la chaîne de
format.
13
3 LECTURE DES DONNÉES
3.2 La Syntaxe
<format>: format de lecture des données
Autant de format que de données à lire
<var1>: &NomVariable
- La chaîne de format détermine comment les données reçues doivent être
interprétées.
- Les données reçues correctement sont mémorisées successivement aux
adresses indiquées par <var1>,... .
– L'adresse d'une variable est indiquée par le nom de la variable précédé du
signe &.

14
3 LECTURE DES DONNÉES
3.2 La Syntaxe
Exemples:
char alpha;
int i ;
float r;
scanf("%c",&alpha); /* saisie d'un caractère */
scanf("%d",&i); /* saisie d'un entier en décimal */
scanf("%x",&i); /* saisie d'un entier en hexadécimal*/
scanf("%f",&r); /* saisie d'un réel */
int jour, mois, annee;
scanf("%d %d %d", &jour, &mois, &annee);
/*lit trois entiers relatifs, séparés par des espaces, tabulations ou
interlignes. Les valeurs sont attribuées respectivement aux trois variables
JOUR, MOIS et ANNEE.*/
15
3 LECTURE DES DONNÉES
3.2 La Syntaxe
REMARQUE :
Si l'utilisateur ne respecte pas le format indiqué dans scanf, la
saisie est ignorée. Aucune erreur n'est générée.
Exemple:
char alpha;
scanf("%d",&alpha);
• Si l'utilisateur saisie 97 tout va bien, alpha devient le
caractère dont le code ASCII vaut 97.
• Si l'utilisateur saisie a, sa saisie est ignorée.
scanf retourne comme résultat le nombre de données
correctement reçues (type int).

16
3 LECTURE DES DONNÉES
3.2 La Syntaxe

MSDA 17
3 LECTURE DES DONNÉES
3.3 Table ASCII
Remarques :
les chiffres sont codés suivant un ordre croissant (48 à 57)
idem pour les lettres (65 à 90, 97 à 122)
code des miniscules est inférieur au code des majuscules (différence constante = 32)
les codes supérieurs à 128 dépendent de la langue :
é, ö , ä, æ, œ etc…
Déclaration d'une variable caractère :
char c;
c='a';
…..
18
Affichages et saisies
Librairie : stdio.h
Fonction Syntaxe Description

printf printf( const char *format [, arg [, arg]...]); Écriture formatée


 sortie standard

scanf scanf( const char *format [, arg [, arg]...]); Lecture formatée


 entrée standard

putchar putchar(int c); Écrire le caractère c


getchar getchar(); Lecture d'un caractère


getch(); 
getch
puts *puts(char *s); Ecriture/Lecture d'une
*gets(char *s); chaîne de caractères,
gets terminée par \n
sprintf sprintf(char *s, char *format, arg ...); Ecrit dans la chaîne
d'adresse s.

sscanf sscanf(char *s, char *format, pointer ...); Lit la chaîne d'adresse s.

19
EXERCICES
1. Écrire un programme en C qui demande à l'utilisateur de saisir deux nombres entiers
et qui calcule leur somme.
2. Écrire un programme en C qui demande à l'utilisateur de saisir un nombre entier et
qui calcule sa racine carrée.
3. Écrire un programme en C qui demande à l'utilisateur de saisir la longueur et la
largeur d'un rectangle, puis qui calcule son aire.
4. Écrire un programme en C qui demande à l'utilisateur de saisir une chaîne de
caractères et qui l'affiche à l'écran.
5. Écrire un programme en C qui demande à l'utilisateur de saisir une valeur en degrés
Celsius et qui la convertit en degrés Fahrenheit.

20
EXERCICES
6. Écrire un programme en C qui demande à l'utilisateur de saisir trois valeurs, puis qui
calcule et affiche leur moyenne.
7. Écrire un programme en C qui demande à l'utilisateur de saisir un nombre entier et
qui vérifie s'il est pair ou impair.
8. Écrire un programme en C qui demande à l'utilisateur de saisir une chaîne de
caractères, puis qui compte et affiche le nombre de caractères qu'elle contient.
9. Écrire un programme en C qui demande à l'utilisateur de saisir une valeur en
millimètres et qui la convertit en centimètres et en mètres.
10. Écrire un programme en C qui demande à l'utilisateur de saisir un nombre entier et
qui calcule sa factorielle.

21
EXERCICES
11. Écrire un programme en C qui demande à l'utilisateur de saisir une date sous la
forme JJ/MM/AAAA, puis qui affiche cette date au format AAAA-MM-JJ.
12. Écrire un programme en C qui demande à l'utilisateur de saisir une note comprise
entre 0 et 20, puis qui affiche la mention correspondante (A, B, C, D ou E).
13. Écrire un programme en C qui demande à l'utilisateur de saisir une chaîne de
caractères, puis qui la transforme en majuscules.
14. Écrire un programme en C qui demande à l'utilisateur de saisir deux chaînes de
caractères, puis qui les concatène et les affiche à l'écran.
15. Écrire un programme en C qui demande à l'utilisateur de saisir un nombre entier et
qui calcule sa table de multiplication jusqu'à 10.

22
EXERCICES
16. Écrire un programme en C qui demande à l'utilisateur de saisir une chaîne de
caractères, puis qui la compare à une autre chaîne de référence et affiche si elles sont
identiques ou non.
17. Écrire un programme en C qui demande à l'utilisateur de saisir un nombre entier et
qui calcule sa somme de chiffres.
18. Écrire un programme en C qui demande à l'utilisateur de saisir un nombre entier et
qui vérifie s'il est premier ou non.
19. Écrire un programme en C qui demande à l'utilisateur de saisir une chaîne de
caractères, puis qui en extrait le premier mot et l'affiche à l'écran.
20. Écrire un programme en C qui demande à l'utilisateur de saisir une phrase, puis qui
compte et affiche le nombre de mots qu'elle contient.

23

Vous aimerez peut-être aussi